2013-06-10 3 views
7

일부 이미지를 mp4 컨테이너 내부의 h264 비디오로 인코딩 중입니다. 나는 ffmpeg 예제 muxing.c를 본질적으로 사용하고 있습니다. 문제는 내가 ... 등등 아티스트, 제목, 같은 MP4 컨테이너에 일부 메타 데이터를 설정하기 위해 노력하고있다 인코딩 된 비디오에 헤더 메타 데이터를 설정하는 방법은 무엇입니까?

나는 일하는 것이 다음을 사용하여 생각하지만하지 않았다 :

AVDictionary *opts = NULL; 
av_dict_set(&opts, "title", "Super Lucky Dude", 0); 
av_dict_set(&opts, "author", "Jacky Chan", 0); 
av_dict_set(&opts, "album", "Chinese Movie", 0); 
av_dict_set(&opts, "year", "05/10/2013", 0); 
av_dict_set(&opts, "comment", "This video was created using example app.", 0); 
av_dict_set(&opts, "genre", "Action", 0); 

// Write the stream header, if any. 
ret = avformat_write_header(oc, &opts); 

을 한 후 전체 비디오가 만들어지면 비디오 파일에 기록 된 메타 데이터가 표시되지 않습니다. 모든 포인터 실제로 이것을 제대로하는 방법?

+0

메타 데이터를 어떻게 감사하고 있습니까? 16 진수 편집기? iTunes 등록 정보 대화 상자? –

+0

VLC와 Quicktime을 사용하고 있습니다. 나는 실제로 문제를 해결했습니다 아래 나의 대답을 참조하십시오. – Jona

답변

6

해결 방법은 내 을 만들고 avformat_write_header function으로 전달하는 대신 AVFormatContext의 변수 metadata을 실제로 사용하는 것이 었습니다.

+0

이전 주제를 사용하여 죄송합니다.하지만 비디오 스트림 메타 데이터를 설정할 때 비슷한 문제가 있습니다. 그것을 달성하는 방법에 대한 조언이 있습니까? 이미 SO에 대한 질문을 만들었습니다. http://stackoverflow.com/questions/29973423/setting-video-stream-metadata-using-ffmpeg 링크가 있습니다. –

관련 문제