vlc | branch: master | Thomas Guillem <[email protected]> | Tue Feb 18 10:02:06 2020 +0100| [d7f1f89668f2d058daa566cdcee370aca4bb13fc] | committer: Thomas Guillem
demux: use a stable id for one-track modules These demux modules can only output one ES track. Therefore, these ES tracks are necessarily identifiable by a stable id. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d7f1f89668f2d058daa566cdcee370aca4bb13fc --- modules/demux/aiff.c | 1 + modules/demux/au.c | 1 + modules/demux/caf.c | 1 + modules/demux/cdg.c | 1 + modules/demux/flac.c | 1 + modules/demux/mjpeg.c | 1 + modules/demux/mpc.c | 1 + modules/demux/mpeg/es.c | 1 + modules/demux/mpeg/h26x.c | 1 + modules/demux/nuv.c | 3 +++ modules/demux/rawaud.c | 1 + modules/demux/smf.c | 1 + modules/demux/stl.c | 1 + modules/demux/subtitle.c | 1 + modules/demux/ttml.c | 1 + modules/demux/vc1.c | 1 + modules/demux/wav.c | 1 + modules/demux/webvtt.c | 1 + 18 files changed, 20 insertions(+) diff --git a/modules/demux/aiff.c b/modules/demux/aiff.c index 6986ded7d8..77fb9dfa2c 100644 --- a/modules/demux/aiff.c +++ b/modules/demux/aiff.c @@ -205,6 +205,7 @@ static int Open( vlc_object_t *p_this ) } /* */ + p_sys->fmt.i_id = 0; p_sys->es = es_out_Add( p_demux->out, &p_sys->fmt ); if( unlikely(p_sys->es == NULL) ) return VLC_ENOMEM; diff --git a/modules/demux/au.c b/modules/demux/au.c index 212d5c0c34..e2b4618976 100644 --- a/modules/demux/au.c +++ b/modules/demux/au.c @@ -271,6 +271,7 @@ static int Open( vlc_object_t *p_this ) } /* add the es */ + p_sys->fmt.i_id = 0; p_sys->es = es_out_Add( p_demux->out, &p_sys->fmt ); if( unlikely(p_sys->es == NULL) ) return VLC_ENOMEM; diff --git a/modules/demux/caf.c b/modules/demux/caf.c index 77b687e4b3..268c5ae270 100644 --- a/modules/demux/caf.c +++ b/modules/demux/caf.c @@ -897,6 +897,7 @@ static int Open( vlc_object_t *p_this ) goto caf_open_end; } + p_sys->fmt.i_id = 0; p_sys->es = es_out_Add( p_demux->out, &p_sys->fmt ); if( !p_sys->es ) diff --git a/modules/demux/cdg.c b/modules/demux/cdg.c index 33def4d7c7..ae5cc1c2a4 100644 --- a/modules/demux/cdg.c +++ b/modules/demux/cdg.c @@ -94,6 +94,7 @@ static int Open( vlc_object_t * p_this ) p_sys->fmt.video.i_visible_width = p_sys->fmt.video.i_width; p_sys->fmt.video.i_visible_height = p_sys->fmt.video.i_height; + p_sys->fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->fmt ); if( unlikely(p_sys->p_es == NULL) ) return VLC_ENOMEM; diff --git a/modules/demux/flac.c b/modules/demux/flac.c index a8acb5ac60..92ad0178f9 100644 --- a/modules/demux/flac.c +++ b/modules/demux/flac.c @@ -174,6 +174,7 @@ static int Open( vlc_object_t * p_this ) vlc_meta_Set( p_sys->p_meta, vlc_meta_ArtworkURL, psz_url ); } + p_sys->p_packetizer->fmt_in.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->p_packetizer->fmt_in ); if( !p_sys->p_es ) goto error; diff --git a/modules/demux/mjpeg.c b/modules/demux/mjpeg.c index 6d74088a60..d5e8dbdfcf 100644 --- a/modules/demux/mjpeg.c +++ b/modules/demux/mjpeg.c @@ -381,6 +381,7 @@ static int Open( vlc_object_t * p_this ) es_format_Init( &p_sys->fmt, VIDEO_ES, VLC_CODEC_MJPG ); + p_sys->fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->fmt ); if( unlikely(p_sys->p_es == NULL) ) return VLC_ENOMEM; diff --git a/modules/demux/mpc.c b/modules/demux/mpc.c index a7507890b8..d7438c7558 100644 --- a/modules/demux/mpc.c +++ b/modules/demux/mpc.c @@ -189,6 +189,7 @@ static int Open( vlc_object_t * p_this ) #undef CONVERT_GAIN #undef CONVERT_PEAK + fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &fmt ); if( !p_sys->p_es ) goto error; diff --git a/modules/demux/mpeg/es.c b/modules/demux/mpeg/es.c index 427685c68b..f32d741043 100644 --- a/modules/demux/mpeg/es.c +++ b/modules/demux/mpeg/es.c @@ -660,6 +660,7 @@ static bool Parse( demux_t *p_demux, block_t **pp_output ) if( !p_sys->p_es ) { p_sys->p_packetizer->fmt_out.b_packetized = true; + p_sys->p_packetizer->fmt_out.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->p_packetizer->fmt_out); diff --git a/modules/demux/mpeg/h26x.c b/modules/demux/mpeg/h26x.c index bf0be71395..b9af7ccc88 100644 --- a/modules/demux/mpeg/h26x.c +++ b/modules/demux/mpeg/h26x.c @@ -443,6 +443,7 @@ static int Demux( demux_t *p_demux) if( p_sys->p_es == NULL ) { p_sys->p_packetizer->fmt_out.b_packetized = true; + p_sys->p_packetizer->fmt_out.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->p_packetizer->fmt_out ); if( !p_sys->p_es ) { diff --git a/modules/demux/nuv.c b/modules/demux/nuv.c index 7ef9c21340..0b0600d508 100644 --- a/modules/demux/nuv.c +++ b/modules/demux/nuv.c @@ -296,6 +296,7 @@ static int Open( vlc_object_t * p_this ) } /* Create audio/video (will work only with extended header and audio=mp3 */ + int id = 0; if( p_sys->hdr.i_video_blocks != 0 ) { es_format_t fmt; @@ -310,6 +311,7 @@ static int Open( vlc_object_t * p_this ) fmt.video.i_sar_num = p_sys->hdr.d_aspect * fmt.video.i_height; fmt.video.i_sar_den = fmt.video.i_width; + fmt.i_id = id++; p_sys->p_es_video = es_out_Add( p_demux->out, &fmt ); } if( p_sys->hdr.i_audio_blocks != 0 ) @@ -320,6 +322,7 @@ static int Open( vlc_object_t * p_this ) fmt.audio.i_rate = p_sys->exh.i_audio_sample_rate; fmt.audio.i_bitspersample = p_sys->exh.i_audio_bits_per_sample; + fmt.i_id = id++; p_sys->p_es_audio = es_out_Add( p_demux->out, &fmt ); } if( p_sys->hdr.i_text_blocks != 0 ) diff --git a/modules/demux/rawaud.c b/modules/demux/rawaud.c index 87b2112102..0e39928f67 100644 --- a/modules/demux/rawaud.c +++ b/modules/demux/rawaud.c @@ -202,6 +202,7 @@ static int Open( vlc_object_t * p_this ) p_sys->fmt.i_bitrate); /* add the es */ + p_sys->fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->fmt ); msg_Dbg( p_demux, "elementary stream added"); diff --git a/modules/demux/smf.c b/modules/demux/smf.c index 9d38c52396..454a802623 100644 --- a/modules/demux/smf.c +++ b/modules/demux/smf.c @@ -706,6 +706,7 @@ static int Open (vlc_object_t *obj) es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_MIDI); fmt.audio.i_channels = 2; fmt.audio.i_rate = 44100; /* dummy value */ + fmt.i_id = 0; sys->es = es_out_Add (demux->out, &fmt); demux->pf_demux = Demux; diff --git a/modules/demux/stl.c b/modules/demux/stl.c index 02c10cd556..a635766872 100644 --- a/modules/demux/stl.c +++ b/modules/demux/stl.c @@ -314,6 +314,7 @@ static int Open(vlc_object_t *object) fmt.i_extra = sizeof(header); fmt.p_extra = header; + fmt.i_id = 0; sys->es = es_out_Add(demux->out, &fmt); fmt.i_extra = 0; fmt.p_extra = NULL; diff --git a/modules/demux/subtitle.c b/modules/demux/subtitle.c index 9c2842a797..968a356a59 100644 --- a/modules/demux/subtitle.c +++ b/modules/demux/subtitle.c @@ -707,6 +707,7 @@ static int Open ( vlc_object_t *p_this ) fmt.i_extra = strlen( p_sys->props.psz_header ) + 1; } + fmt.i_id = 0; p_sys->es = es_out_Add( p_demux->out, &fmt ); es_format_Clean( &fmt ); if( p_sys->es == NULL ) diff --git a/modules/demux/ttml.c b/modules/demux/ttml.c index 532c92d0d4..bc688f8b18 100644 --- a/modules/demux/ttml.c +++ b/modules/demux/ttml.c @@ -536,6 +536,7 @@ int tt_OpenDemux( vlc_object_t* p_this ) es_format_t fmt; es_format_Init( &fmt, SPU_ES, VLC_CODEC_TTML ); + fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &fmt ); if( !p_sys->p_es ) goto error; diff --git a/modules/demux/vc1.c b/modules/demux/vc1.c index 6cdbf40993..6902faf9fb 100644 --- a/modules/demux/vc1.c +++ b/modules/demux/vc1.c @@ -166,6 +166,7 @@ static int Demux( demux_t *p_demux) if( p_sys->p_es == NULL ) { p_sys->p_packetizer->fmt_out.b_packetized = true; + p_sys->p_packetizer->fmt_out.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->p_packetizer->fmt_out); } diff --git a/modules/demux/wav.c b/modules/demux/wav.c index 3d6fbd8b68..7174cfb681 100644 --- a/modules/demux/wav.c +++ b/modules/demux/wav.c @@ -428,6 +428,7 @@ static int Open( vlc_object_t * p_this ) p_sys->fmt.audio.i_rate * 8 / p_sys->i_frame_samples; } + p_sys->fmt.i_id = 0; p_sys->p_es = es_out_Add( p_demux->out, &p_sys->fmt ); if( unlikely(p_sys->p_es == NULL) ) goto error; diff --git a/modules/demux/webvtt.c b/modules/demux/webvtt.c index e2e1219bd8..dd835e2d12 100644 --- a/modules/demux/webvtt.c +++ b/modules/demux/webvtt.c @@ -669,6 +669,7 @@ int webvtt_OpenDemux ( vlc_object_t *p_this ) size_t i_extra = 0; MakeExtradata( p_sys, &fmt.p_extra, &i_extra ); fmt.i_extra = i_extra; + fmt.i_id = 0; p_sys->es = es_out_Add( p_demux->out, &fmt ); es_format_Clean( &fmt ); if( p_sys->es == NULL ) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
