C++에서 원시 jpeg 버퍼를 사용하여 EXIF 태그를 JPG에 어떻게 배치합니까?
문제
약간의 문제가 있습니다.
카메라에서 RAW char* 버퍼를 얻었고 이를 디스크에 저장하기 전에 이 태그를 추가해야 합니다.파일을 디스크에 쓰고 다시 읽는 것은 선택 사항이 아닙니다. 이러한 일은 수천 번 발생하기 때문입니다.
카메라에서 수신한 버퍼 데이터에는 너비, 높이 및 인치당 픽셀 수를 제외한 EXIF 정보가 포함되어 있지 않습니다.
어떤 아이디어가 있나요?(C++)
해결책
이거 봐요 PDF, 20페이지에는 EXIF 정보를 배치하거나 수정해야 함을 보여주는 다이어그램이 있습니다.디스크에 있는 파일과의 차이점은 무엇입니까?
카메라의 JPEG 버퍼에 이미 EXIF 섹션이 포함되어 있습니까?
다른 팁
차이점이 뭐야?디스크의 파일에 대해 수행하는 작업이 메모리에서 수행하는 작업과 다른 이유는 무엇입니까?
디스크에서 파일을 읽은 후에 무엇이든 하십시오.
내가 아는 한 JPEG의 EXIF 데이터는 파일의 연속적인 하위 부분입니다.그래서
- EXIF 데이터를 메모리에 준비
- JPEG 파일의 일부를 EXIF에 쓰기
- 준비된 EXIF 작성
- 나머지 JPEG 파일 쓰기
당신은 살펴보고 싶을 수도 있습니다 Exiv2 도서관.나는 그것이 파일에서 작동할 수 있다는 것을 알고 있지만 메모리 버퍼에서 작동하는 기능도 있다고 가정합니다.
제휴하지 않습니다 StackOverflow