[vlc-commits] demux: libmp4: add missing/use brands defines

Francois Cartegnie git at videolan.org
Fri Nov 9 17:05:38 CET 2018


vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Fri Nov  9 16:31:36 2018 +0100| [e4e320983c2839fb1c0c1f6ae40905d75369a07e] | committer: Francois Cartegnie

demux: libmp4: add missing/use brands defines

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e4e320983c2839fb1c0c1f6ae40905d75369a07e
---

 modules/demux/mp4/libmp4.h                          | 5 +++++
 modules/demux/mp4/mp4.c                             | 2 +-
 modules/demux/smooth/playlist/ForgedInitSegment.cpp | 8 ++++----
 modules/mux/mp4/libmp4mux.c                         | 6 +++---
 4 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/modules/demux/mp4/libmp4.h b/modules/demux/mp4/libmp4.h
index 15c00ce420..18d0473f00 100644
--- a/modules/demux/mp4/libmp4.h
+++ b/modules/demux/mp4/libmp4.h
@@ -36,12 +36,17 @@ typedef int64_t stime_t;
 #define BRAND_3gp7 VLC_FOURCC( '3', 'g', 'p', '7' )
 #define BRAND_isml VLC_FOURCC( 'i', 's', 'm', 'l' )
 #define BRAND_isom VLC_FOURCC( 'i', 's', 'o', 'm' )
+#define BRAND_iso2 VLC_FOURCC( 'i', 's', 'o', '2' )
+#define BRAND_iso6 VLC_FOURCC( 'i', 's', 'o', '6' )
 #define BRAND_qt__ VLC_FOURCC( 'q', 't', ' ', ' ' )
 #define BRAND_f4v  VLC_FOURCC( 'f', '4', 'v', ' ' ) /* Adobe Flash */
 #define BRAND_dash VLC_FOURCC( 'd', 'a', 's', 'h' )
+#define BRAND_smoo VLC_FOURCC( 's', 'm', 'o', 'o' ) /* Internal use */
 #define BRAND_mp41 VLC_FOURCC( 'm', 'p', '4', '1' )
+#define BRAND_av01 VLC_FOURCC( 'a', 'v', '0', '1' )
 #define BRAND_avc1 VLC_FOURCC( 'a', 'v', 'c', '1' )
 #define BRAND_M4A  VLC_FOURCC( 'M', '4', 'A', ' ' )
+#define BRAND_piff VLC_FOURCC( 'p', 'i', 'f', 'f' )
 #define BRAND_mif1 VLC_FOURCC( 'm', 'i', 'f', '1' ) /* heif */
 #define BRAND_msf1 VLC_FOURCC( 'm', 's', 'f', '1' ) /* heif */
 #define BRAND_heic VLC_FOURCC( 'h', 'e', 'i', 'c' ) /* heif */
diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c
index 59f09a16af..556700f06a 100644
--- a/modules/demux/mp4/mp4.c
+++ b/modules/demux/mp4/mp4.c
@@ -827,7 +827,7 @@ static int Open( vlc_object_t * p_this )
             {
                 msg_Dbg( p_demux, "DASH Stream" );
             }
-            else if (BOXDATA(p_ftyp)->i_compatible_brands[i] == VLC_FOURCC('s', 'm', 'o', 'o') )
+            else if (BOXDATA(p_ftyp)->i_compatible_brands[i] == BRAND_smoo)
             {
                 msg_Dbg( p_demux, "Handling VLC Smooth Stream" );
             }
diff --git a/modules/demux/smooth/playlist/ForgedInitSegment.cpp b/modules/demux/smooth/playlist/ForgedInitSegment.cpp
index 419c710643..001a6d86f6 100644
--- a/modules/demux/smooth/playlist/ForgedInitSegment.cpp
+++ b/modules/demux/smooth/playlist/ForgedInitSegment.cpp
@@ -297,11 +297,11 @@ block_t * ForgedInitSegment::buildMoovBox()
     block_t *moov = box->b;
     free(box);
 
-    mp4mux_SetBrand(muxh, VLC_FOURCC('i','s','m','l'), 0x01);
+    mp4mux_SetBrand(muxh, BRAND_isml, 0x01);
     mp4mux_AddExtraBrand(muxh, BRAND_isom);
-    mp4mux_AddExtraBrand(muxh, VLC_FOURCC('p','i','f','f'));
-    mp4mux_AddExtraBrand(muxh, VLC_FOURCC('i','s','o','2'));
-    mp4mux_AddExtraBrand(muxh, VLC_FOURCC('s','m','o','o'));
+    mp4mux_AddExtraBrand(muxh, BRAND_piff);
+    mp4mux_AddExtraBrand(muxh, BRAND_iso2);
+    mp4mux_AddExtraBrand(muxh, BRAND_smoo);
 
     box = mp4mux_GetFtyp(muxh);
     if(box)
diff --git a/modules/mux/mp4/libmp4mux.c b/modules/mux/mp4/libmp4mux.c
index b204c84c3e..1e28967a42 100644
--- a/modules/mux/mp4/libmp4mux.c
+++ b/modules/mux/mp4/libmp4mux.c
@@ -94,8 +94,8 @@ static void mp4mux_AddExtraBrandForFormat(mp4mux_handle_t *h, const es_format_t
             mp4mux_AddExtraBrand(h, BRAND_hevc);
             break;
         case VLC_CODEC_AV1:
-            mp4mux_AddExtraBrand(h, VLC_FOURCC('a','v','0','1'));
-            mp4mux_AddExtraBrand(h, VLC_FOURCC('i','s','o','6'));
+            mp4mux_AddExtraBrand(h, BRAND_av01);
+            mp4mux_AddExtraBrand(h, BRAND_iso6);
             break;
         case VLC_CODEC_MP4V:
         case VLC_CODEC_DIV1:
@@ -2263,7 +2263,7 @@ bool mp4mux_CanMux(vlc_object_t *p_obj, const es_format_t *p_fmt,
     case VLC_CODEC_TTML:
         /* Special case with smooth headers where we need to force frag TTML */
         /* TTML currently not supported in sout, until we can keep original timestamps */
-            return i_brand == VLC_FOURCC('s', 'm', 'o', 'o');
+            return i_brand == BRAND_smoo;
     case VLC_CODEC_QTXT:
     case VLC_CODEC_TX3G:
     case VLC_CODEC_WEBVTT:



More information about the vlc-commits mailing list