dirac muxing support in mp4/mov
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Wed, 3 Sep 2008 19:23:24 +0000 (19:23 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Wed, 3 Sep 2008 19:23:24 +0000 (19:23 +0000)
Originally committed as revision 15188 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/isom.c
libavformat/movenc.c

index 20cad55..8639cf1 100644 (file)
@@ -48,6 +48,7 @@ const AVCodecTag ff_mp4_obj_type[] = {
     { CODEC_ID_PNG       , 0x6D },
     { CODEC_ID_JPEG2000  , 0x6E }, /* 15444-1 */
     { CODEC_ID_VC1       , 0xA3 },
     { CODEC_ID_PNG       , 0x6D },
     { CODEC_ID_JPEG2000  , 0x6E }, /* 15444-1 */
     { CODEC_ID_VC1       , 0xA3 },
+    { CODEC_ID_DIRAC     , 0xA4 },
     { CODEC_ID_AC3       , 0xA5 },
     { CODEC_ID_VORBIS    , 0xDD }, /* non standard, gpac uses it */
     { CODEC_ID_DVD_SUBTITLE, 0xE0 }, /* non standard, see unsupported-embedded-subs-2.mp4 */
     { CODEC_ID_AC3       , 0xA5 },
     { CODEC_ID_VORBIS    , 0xDD }, /* non standard, gpac uses it */
     { CODEC_ID_DVD_SUBTITLE, 0xE0 }, /* non standard, see unsupported-embedded-subs-2.mp4 */
@@ -155,6 +156,7 @@ const AVCodecTag codec_movvideo_tags[] = {
     { CODEC_ID_VC1, MKTAG('v', 'c', '-', '1') }, /* SMPTE RP 2025 */
     { CODEC_ID_CAVS, MKTAG('a', 'v', 's', '2') },
 
     { CODEC_ID_VC1, MKTAG('v', 'c', '-', '1') }, /* SMPTE RP 2025 */
     { CODEC_ID_CAVS, MKTAG('a', 'v', 's', '2') },
 
+    { CODEC_ID_DIRAC, MKTAG('d', 'r', 'a', 'c') },
     { CODEC_ID_DNXHD, MKTAG('A', 'V', 'd', 'n') }, /* AVID DNxHD */
     { CODEC_ID_SGI,   MKTAG('s', 'g', 'i', ' ') }, /* SGI  */
 
     { CODEC_ID_DNXHD, MKTAG('A', 'V', 'd', 'n') }, /* AVID DNxHD */
     { CODEC_ID_SGI,   MKTAG('s', 'g', 'i', ' ') }, /* SGI  */
 
index 074e1df..ab7e02c 100644 (file)
@@ -574,6 +574,7 @@ static int mov_find_codec_tag(AVFormatContext *s, MOVTrack *track)
             return 0;
         if      (track->enc->codec_id == CODEC_ID_H264)      tag = MKTAG('a','v','c','1');
         else if (track->enc->codec_id == CODEC_ID_AC3)       tag = MKTAG('a','c','-','3');
             return 0;
         if      (track->enc->codec_id == CODEC_ID_H264)      tag = MKTAG('a','v','c','1');
         else if (track->enc->codec_id == CODEC_ID_AC3)       tag = MKTAG('a','c','-','3');
+        else if (track->enc->codec_id == CODEC_ID_DIRAC)     tag = MKTAG('d','r','a','c');
         else if (track->enc->codec_type == CODEC_TYPE_VIDEO) tag = MKTAG('m','p','4','v');
         else if (track->enc->codec_type == CODEC_TYPE_AUDIO) tag = MKTAG('m','p','4','a');
     } else if (track->mode == MODE_IPOD) {
         else if (track->enc->codec_type == CODEC_TYPE_VIDEO) tag = MKTAG('m','p','4','v');
         else if (track->enc->codec_type == CODEC_TYPE_AUDIO) tag = MKTAG('m','p','4','a');
     } else if (track->mode == MODE_IPOD) {