X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fmov.c;h=fc1aaa8cf3f7c56e2e92da9b68555d6802642892;hb=82f0f0482ed67f32414df7791e26cc473cdcb3bb;hp=8d66c0afddf42b194909b005e7aa8250310205d1;hpb=6b4cbfec757a1a3be48bc08489afc47b9cd18a0e;p=ffmpeg diff --git a/libavformat/mov.c b/libavformat/mov.c index 8d66c0afddf..fc1aaa8cf3f 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -267,57 +267,57 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) int (*parse)(MOVContext*, AVIOContext*, unsigned, const char*) = NULL; switch (atom.type) { - case MKTAG(0xa9,'n','a','m'): key = "title"; break; - case MKTAG(0xa9,'a','u','t'): - case MKTAG(0xa9,'A','R','T'): key = "artist"; break; case MKTAG( 'a','A','R','T'): key = "album_artist"; break; - case MKTAG(0xa9,'w','r','t'): key = "composer"; break; case MKTAG( 'c','p','i','l'): key = "compilation"; parse = mov_metadata_int8_no_padding; break; - case MKTAG( 'c','p','r','t'): - case MKTAG(0xa9,'c','p','y'): key = "copyright"; break; - case MKTAG(0xa9,'g','r','p'): key = "grouping"; break; - case MKTAG(0xa9,'l','y','r'): key = "lyrics"; break; - case MKTAG(0xa9,'c','m','t'): - case MKTAG(0xa9,'i','n','f'): key = "comment"; break; - case MKTAG(0xa9,'a','l','b'): key = "album"; break; - case MKTAG(0xa9,'d','a','y'): key = "date"; break; - case MKTAG(0xa9,'g','e','n'): key = "genre"; break; - case MKTAG( 'g','n','r','e'): key = "genre"; - parse = mov_metadata_gnre; break; - case MKTAG(0xa9,'t','o','o'): - case MKTAG(0xa9,'s','w','r'): key = "encoder"; break; - case MKTAG(0xa9,'e','n','c'): key = "encoder"; break; - case MKTAG(0xa9,'m','a','k'): key = "make"; break; - case MKTAG(0xa9,'m','o','d'): key = "model"; break; - case MKTAG(0xa9,'x','y','z'): key = "location"; break; - case MKTAG( 'd','e','s','c'): key = "description";break; - case MKTAG( 'l','d','e','s'): key = "synopsis"; break; - case MKTAG( 't','v','s','h'): key = "show"; break; - case MKTAG( 't','v','e','n'): key = "episode_id";break; - case MKTAG( 't','v','n','n'): key = "network"; break; - case MKTAG( 't','r','k','n'): key = "track"; - parse = mov_metadata_track_or_disc_number; break; + case MKTAG( 'c','p','r','t'): key = "copyright"; break; + case MKTAG( 'd','e','s','c'): key = "description"; break; case MKTAG( 'd','i','s','k'): key = "disc"; parse = mov_metadata_track_or_disc_number; break; - case MKTAG( 't','v','e','s'): key = "episode_sort"; - parse = mov_metadata_int8_bypass_padding; break; - case MKTAG( 't','v','s','n'): key = "season_number"; - parse = mov_metadata_int8_bypass_padding; break; - case MKTAG( 's','t','i','k'): key = "media_type"; - parse = mov_metadata_int8_no_padding; break; + case MKTAG( 'g','n','r','e'): key = "genre"; + parse = mov_metadata_gnre; break; case MKTAG( 'h','d','v','d'): key = "hd_video"; parse = mov_metadata_int8_no_padding; break; + case MKTAG( 'l','d','e','s'): key = "synopsis"; break; + case MKTAG( 'l','o','c','i'): + return mov_metadata_loci(c, pb, atom.size); case MKTAG( 'p','g','a','p'): key = "gapless_playback"; parse = mov_metadata_int8_no_padding; break; case MKTAG( '@','P','R','M'): return mov_metadata_raw(c, pb, atom.size, "premiere_version"); case MKTAG( '@','P','R','Q'): return mov_metadata_raw(c, pb, atom.size, "quicktime_version"); - case MKTAG( 'l','o','c','i'): - return mov_metadata_loci(c, pb, atom.size); + case MKTAG( 's','t','i','k'): key = "media_type"; + parse = mov_metadata_int8_no_padding; break; + case MKTAG( 't','r','k','n'): key = "track"; + parse = mov_metadata_track_or_disc_number; break; + case MKTAG( 't','v','e','n'): key = "episode_id"; break; + case MKTAG( 't','v','e','s'): key = "episode_sort"; + parse = mov_metadata_int8_bypass_padding; break; + case MKTAG( 't','v','n','n'): key = "network"; break; + case MKTAG( 't','v','s','h'): key = "show"; break; + case MKTAG( 't','v','s','n'): key = "season_number"; + parse = mov_metadata_int8_bypass_padding; break; case MKTAG( 'X','M','P','_'): return mov_metadata_raw(c, pb, atom.size, "xmp"); + case MKTAG(0xa9,'A','R','T'): key = "artist"; break; + case MKTAG(0xa9,'a','l','b'): key = "album"; break; + case MKTAG(0xa9,'a','u','t'): key = "artist"; break; + case MKTAG(0xa9,'c','m','t'): key = "comment"; break; + case MKTAG(0xa9,'c','p','y'): key = "copyright"; break; + case MKTAG(0xa9,'d','a','y'): key = "date"; break; + case MKTAG(0xa9,'e','n','c'): key = "encoder"; break; + case MKTAG(0xa9,'g','e','n'): key = "genre"; break; + case MKTAG(0xa9,'g','r','p'): key = "grouping"; break; + case MKTAG(0xa9,'i','n','f'): key = "comment"; break; + case MKTAG(0xa9,'l','y','r'): key = "lyrics"; break; + case MKTAG(0xa9,'m','a','k'): key = "make"; break; + case MKTAG(0xa9,'m','o','d'): key = "model"; break; + case MKTAG(0xa9,'n','a','m'): key = "title"; break; + case MKTAG(0xa9,'s','w','r'): key = "encoder"; break; + case MKTAG(0xa9,'t','o','o'): key = "encoder"; break; + case MKTAG(0xa9,'w','r','t'): key = "composer"; break; + case MKTAG(0xa9,'x','y','z'): key = "location"; break; } if (c->itunes_metadata && atom.size > 8) {