[vlc-devel] commit: do not mind large time discontinuities in SPU streams these are to be expected , so do not reset timing (Vincent Penquerc'h )
git version control
git at videolan.org
Sat Nov 15 13:28:40 CET 2008
vlc | branch: master | Vincent Penquerc'h <ogg.k.ogg.k at googlemail.com> | Tue Nov 11 20:56:06 2008 +0000| [8f92973b71c8cc8f4179e1fc57ee28fc47b8afbd] | committer: Laurent Aimar
do not mind large time discontinuities in SPU streams these are to be expected, so do not reset timing
Signed-off-by: Laurent Aimar <fenrir at videolan.org>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8f92973b71c8cc8f4179e1fc57ee28fc47b8afbd
---
modules/demux/ogg.c | 20 ++++++++++++--------
1 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c
index 4e888aa..4d9c127 100644
--- a/modules/demux/ogg.c
+++ b/modules/demux/ogg.c
@@ -674,17 +674,21 @@ static void Ogg_DecodePacket( demux_t *p_demux,
i_interpolated_pts = p_stream->i_interpolated_pcr;
Ogg_UpdatePCR( p_stream, p_oggpacket );
- if( p_stream->i_pcr >= 0 )
+ /* SPU streams are typically discontinuous, do not mind large gaps */
+ if( p_stream->fmt.i_cat != SPU_ES )
{
- /* This is for streams where the granulepos of the header packets
- * doesn't match these of the data packets (eg. ogg web radios). */
- if( p_stream->i_previous_pcr == 0 &&
- p_stream->i_pcr > 3 * DEFAULT_PTS_DELAY )
+ if( p_stream->i_pcr >= 0 )
{
- es_out_Control( p_demux->out, ES_OUT_RESET_PCR );
+ /* This is for streams where the granulepos of the header packets
+ * doesn't match these of the data packets (eg. ogg web radios). */
+ if( p_stream->i_previous_pcr == 0 &&
+ p_stream->i_pcr > 3 * DEFAULT_PTS_DELAY )
+ {
+ es_out_Control( p_demux->out, ES_OUT_RESET_PCR );
- /* Call the pace control */
- es_out_Control( p_demux->out, ES_OUT_SET_PCR, p_stream->i_pcr );
+ /* Call the pace control */
+ es_out_Control( p_demux->out, ES_OUT_SET_PCR, p_stream->i_pcr );
+ }
}
}
More information about the vlc-devel
mailing list