]> git.sesse.net Git - vlc/commitdiff
demux: mp4: handle avc3
authorFrancois Cartegnie <fcvlcdev@free.fr>
Wed, 24 Dec 2014 13:13:27 +0000 (14:13 +0100)
committerFrancois Cartegnie <fcvlcdev@free.fr>
Wed, 24 Dec 2014 13:16:54 +0000 (14:16 +0100)
modules/demux/mp4/essetup.c
modules/demux/mp4/libmp4.c
modules/demux/mp4/libmp4.h

index 8634d4fa5537fc99f2e46e9b2aa00d29b6ce5d33..2ffacbed943c55d8e9d010f837c855da5dc04729 100644 (file)
@@ -286,6 +286,7 @@ int SetupVideoES( demux_t *p_demux, mp4_track_t *p_track, MP4_Box_t *p_sample )
         }
 
         /* avc1: send avcC (h264 without annexe B, ie without start code)*/
+        case VLC_FOURCC( 'a', 'v', 'c', '3' ):
         case VLC_FOURCC( 'a', 'v', 'c', '1' ):
         {
             MP4_Box_t *p_avcC = MP4_BoxGet( p_sample, "avcC" );
index d962b7a109aa8e03e6e74f94c820fbeb881b1dc4..d3263cd73fc67eaa710322c87f0de54bb8ef0cd8 100644 (file)
@@ -3661,6 +3661,7 @@ static const struct
     { ATOM_dcom,    MP4_ReadBox_dcom,         MP4_FreeBox_Common, 0 },
     { ATOM_cmvd,    MP4_ReadBox_cmvd,         MP4_FreeBox_cmvd, 0 },
     { ATOM_avcC,    MP4_ReadBox_avcC,         MP4_FreeBox_avcC, ATOM_avc1 },
+    { ATOM_avcC,    MP4_ReadBox_avcC,         MP4_FreeBox_avcC, ATOM_avc3 },
     { ATOM_hvcC,    MP4_ReadBox_hvcC,         MP4_FreeBox_hvcC, 0 },
     { ATOM_dac3,    MP4_ReadBox_dac3,         MP4_FreeBox_Common, 0 },
     { ATOM_dec3,    MP4_ReadBox_dec3,         MP4_FreeBox_Common, 0 },
@@ -3757,6 +3758,7 @@ static const struct
 
     { ATOM_jpeg,    MP4_ReadBox_sample_vide,  MP4_FreeBox_sample_vide, ATOM_stsd },
     { ATOM_avc1,    MP4_ReadBox_sample_vide,  MP4_FreeBox_sample_vide, ATOM_stsd },
+    { ATOM_avc3,    MP4_ReadBox_sample_vide,  MP4_FreeBox_sample_vide, ATOM_stsd },
 
     { ATOM_yv12,    MP4_ReadBox_sample_vide,  MP4_FreeBox_sample_vide, 0 },
     { ATOM_yuv2,    MP4_ReadBox_sample_vide,  MP4_FreeBox_sample_vide, 0 },
index a1b8c4c47d76b45c64bbb4310c754c22838c6408..f00d17c0c58d4e767f2f9f1465005ec14b8b0338 100644 (file)
 #define ATOM_WMV3 VLC_FOURCC( 'W', 'M', 'V', '3' )
 
 #define ATOM_avc1 VLC_FOURCC( 'a', 'v', 'c', '1' )
+#define ATOM_avc3 VLC_FOURCC( 'a', 'v', 'c', '3' )
 #define ATOM_avcC VLC_FOURCC( 'a', 'v', 'c', 'C' )
 #define ATOM_m4ds VLC_FOURCC( 'm', '4', 'd', 's' )