如何将EXIF标记放入JPG中,在C ++中使用原始jpeg缓冲区?

时间:2008-09-18 07:51:09

标签: c++ jpeg exif

我遇到了一些问题。

我从相机中获取RAW字符*缓冲区,我需要在将其保存到磁盘之前添加此标记。将文件写入磁盘并再次将其读回不是一种选择,因为这将发生数千次。

我从相机收到的缓冲区数据除了每英寸的宽度,高度和像素外,不包含任何EXIF信息。

有什么想法吗? (C ++)

4 个答案:

答案 0 :(得分:4)

请看这个PDF,第20页上有一个图表,显示您要放置或修改您的exif信息。与磁盘上的文件有什么区别?

相机的JPEG缓冲区是否包含EXIF部分?

答案 1 :(得分:1)

有什么区别?为什么要对磁盘上的文件执行此操作与在内存中执行此操作有什么不同?

从磁盘读取文件后,只需执行任何操作即可。

答案 2 :(得分:1)

据我所知,JPEG中的EXIF数据是文件的连续子​​部分。 所以

  1. 在内存中准备EXIF数据
  2. 将部分JPEG文件写入EXIF
  3. 编写准备好的EXIF
  4. 写下JPEG文件的其余部分

答案 3 :(得分:1)

您可能需要查看Exiv2库。我知道它可以在文件上工作,但我想它还具有处理内存缓冲区的功能。