p_block = *pp_block;
- if( p_block->i_pts != 0 &&
+ if( p_block->i_pts > VLC_TS_INVALID &&
p_block->i_pts != date_Get( &p_sys->end_date ) )
{
date_Set( &p_sys->end_date, p_block->i_pts );
}
/* Don't re-use the same pts twice */
- p_block->i_pts = 0;
+ p_block->i_pts = VLC_TS_INVALID;
if( p_block->i_buffer >= p_sys->i_block )
{
return NULL;
}
- p_out->start_date = date_Get( &p_sys->end_date );
- p_out->end_date =
- date_Increment( &p_sys->end_date, p_sys->i_samplesperblock );
+ p_out->i_pts = date_Get( &p_sys->end_date );
+ p_out->i_length = date_Increment( &p_sys->end_date,
+ p_sys->i_samplesperblock ) - p_out->i_pts;
switch( p_sys->codec )
{