vlc/vlc-3.0 | branch: master | Francois Cartegnie <fcvlc...@free.fr> | Mon Apr 16 09:40:28 2018 +0200| [e6ae338927d72fd453da56fc2d04c0d2ca4e8778] | committer: Hugo Beauzée-Luyssen
packetizer: a52: move pts dedup (cherry picked from commit e6cf76ccdb140b8c82a16e5edd2a17cdcdb226a7) Signed-off-by: Hugo Beauzée-Luyssen <h...@beauzee.fr> > http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=e6ae338927d72fd453da56fc2d04c0d2ca4e8778 --- modules/packetizer/a52.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/modules/packetizer/a52.c b/modules/packetizer/a52.c index f9972a7649..28c4ea010d 100644 --- a/modules/packetizer/a52.c +++ b/modules/packetizer/a52.c @@ -107,7 +107,11 @@ static block_t *GetOutBuffer( decoder_t *p_dec ) if( p_sys->bytestream.p_block->i_pts != date_Get( &p_sys->end_date ) && p_sys->bytestream.p_block->i_pts != VLC_TS_INVALID ) { - date_Set( &p_sys->end_date, p_sys->bytestream.p_block->i_pts ); + /* Make sure we don't reuse the same pts twice + * as A/52 in PES sends multiple times the same pts */ + if( p_sys->bytestream.p_block->i_pts != p_sys->i_prev_bytestream_pts ) + date_Set( &p_sys->end_date, p_sys->bytestream.p_block->i_pts ); + p_sys->i_prev_bytestream_pts = p_sys->bytestream.p_block->i_pts; p_sys->bytestream.p_block->i_pts = VLC_TS_INVALID; } @@ -157,15 +161,6 @@ static block_t *PacketizeBlock( decoder_t *p_dec, block_t **pp_block ) } } - /* Make sure we don't reuse the same pts twice */ - if( p_block->i_pts > VLC_TS_INVALID ) - { - if( p_block->i_pts == p_sys->i_prev_bytestream_pts ) - p_block->i_pts = VLC_TS_INVALID; - else - p_sys->i_prev_bytestream_pts = p_block->i_pts; - } - block_BytestreamPush( &p_sys->bytestream, p_block ); } _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits