if( tk->b_seen ) return;
- if( ps_track_fill( tk, 0, i_id ) )
+ if( ps_track_fill( tk, 0, i_id, NULL ) )
{
msg_Warn( p_demux, "unknown codec for id=0x%x", i_id );
return;
if( tk->b_seen ) return;
- if( ps_track_fill( tk, 0, i_id ) )
+ if( ps_track_fill( tk, 0, i_id, NULL ) )
{
msg_Warn( p_demux, "unknown codec for id=0x%x", i_id );
return;
if( !tk->b_seen )
{
- if( !ps_track_fill( tk, &p_sys->psm, i_id ) )
+ if( !ps_track_fill( tk, &p_sys->psm, i_id, p_pkt ) )
{
tk->es = es_out_Add( p_demux->out, &tk->fmt );
b_new = true;
}
/* From id fill i_skip and es_format_t */
-static inline int ps_track_fill( ps_track_t *tk, ps_psm_t *p_psm, int i_id )
+static inline int ps_track_fill( ps_track_t *tk, ps_psm_t *p_psm, int i_id, block_t *p_pkt )
{
tk->i_skip = 0;
tk->i_id = i_id;
if( !tk[i_tk].b_seen )
{
- if( !ps_track_fill( &tk[i_tk], p_psm, i_id ) )
+ if( !ps_track_fill( &tk[i_tk], p_psm, i_id, p_pkt ) )
{
tk[i_tk].b_seen = true;
}
if( !tk[i].b_seen || !tk[i].es ) continue;
- if( ps_track_fill( &tk_tmp, p_psm, tk[i].i_id ) != VLC_SUCCESS )
+ if( ps_track_fill( &tk_tmp, p_psm, tk[i].i_id, p_pkt ) != VLC_SUCCESS )
continue;
if( tk_tmp.fmt.i_codec == tk[i].fmt.i_codec )