vlc | branch: master | Francois Cartegnie <[email protected]> | Wed Jul  5 
11:25:29 2017 +0200| [b50c2c70750d628391ecad79e3e2de23f559bb83] | committer: 
Francois Cartegnie

demux: mp4: reset es format on cat change

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

 modules/demux/mp4/mp4.c | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c
index fa2564e25c..bf512832cc 100644
--- a/modules/demux/mp4/mp4.c
+++ b/modules/demux/mp4/mp4.c
@@ -3260,7 +3260,8 @@ static void MP4_TrackSetup( demux_t *p_demux, mp4_track_t 
*p_track,
             {
                 return;
             }
-            p_track->fmt.i_cat = AUDIO_ES;
+            es_format_Clean( &p_track->fmt );
+            es_format_Init( &p_track->fmt, AUDIO_ES, 0 );
             break;
 
         case( ATOM_vide ):
@@ -3268,7 +3269,8 @@ static void MP4_TrackSetup( demux_t *p_demux, mp4_track_t 
*p_track,
             {
                 return;
             }
-            p_track->fmt.i_cat = VIDEO_ES;
+            es_format_Clean( &p_track->fmt );
+            es_format_Init( &p_track->fmt, VIDEO_ES, 0 );
             break;
 
         case( ATOM_hint ):
@@ -3291,12 +3293,14 @@ static void MP4_TrackSetup( demux_t *p_demux, 
mp4_track_t *p_track,
             if( !strcmp(sdp_media_type, "m=audio") )
             {
                 msg_Dbg( p_demux, "Found audio Rtp: %s", sdp_media_type );
-                p_track->fmt.i_cat = AUDIO_ES;
+                es_format_Clean( &p_track->fmt );
+                es_format_Init( &p_track->fmt, AUDIO_ES, 0 );
             }
             else if( !strcmp(sdp_media_type, "m=video") )
             {
                 msg_Dbg( p_demux, "Found video Rtp: %s", sdp_media_type );
-                p_track->fmt.i_cat = VIDEO_ES;
+                es_format_Clean( &p_track->fmt );
+                es_format_Init( &p_track->fmt, VIDEO_ES, 0 );
             }
             else
             {
@@ -3312,7 +3316,8 @@ static void MP4_TrackSetup( demux_t *p_demux, mp4_track_t 
*p_track,
         case( ATOM_subt ): /* ttml */
         case( ATOM_sbtl ):
         case( ATOM_clcp ): /* closed captions */
-            p_track->fmt.i_cat = SPU_ES;
+            es_format_Clean( &p_track->fmt );
+            es_format_Init( &p_track->fmt, SPU_ES, 0 );
             break;
 
         default:
@@ -3516,7 +3521,7 @@ static void MP4_TrackClean( es_out_t *out, mp4_track_t 
*p_track )
 static void MP4_TrackInit( mp4_track_t *p_track )
 {
     memset( p_track, 0, sizeof(mp4_track_t) );
-    es_format_Init( &p_track->fmt, 0, 0 );
+    es_format_Init( &p_track->fmt, UNKNOWN_ES, 0 );
     p_track->i_timescale = 1;
 }
 

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to