2013-06-10 10 views
7

Kodowanie niektórych obrazów do wideo h264 wewnątrz kontenera mp4. Zasadniczo używam przykładu ffmpeg muxing.c. Rzecz Próbuję ustawić jakieś metadane w kontenerze mp4, takie jak wykonawca, tytuł, itp ...Jak ustawić metadane nagłówka w zakodowanym wideo?

Myślałem, stosując następujące będzie działać, ale tak się nie stało:

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); 

Po cały film jest tworzony Nie widzę żadnych metadanych zapisanych w pliku wideo. Jakieś wskazówki, jak właściwie to zrobić?

+0

W jaki sposób audytujesz metadane? Edytor Hex? Okno dialogowe Właściwości iTunes? –

+0

Używam VLC, a także QuickTime. Naprawdę rozwiązałem problem, zobacz moją odpowiedź poniżej. – Jona

Odpowiedz

6

Rozwiązaniem było faktycznie użyć zmiennej metadata z AVFormatContext zamiast tworzyć własne AVDictionary i przekazaniem go do avformat_write_header function.

+0

przykro mi z powodu używania starego tematu, ale mam podobny problem podczas próby ustawienia metadanych strumienia wideo. Czy masz jakieś wskazówki, jak to osiągnąć? Już stworzyłem pytanie na SO, oto link http://stackoverflow.com/questions/29973423/setting-video-stream-metadata-using-ffmpeg –

Powiązane problemy