vlc | branch: master | Francois Cartegnie <[email protected]> | Mon Jul 18 16:08:22 2016 +0200| [daff83c63fea951d05070a121c1e4c2e6e753e80] | committer: Francois Cartegnie
demux: adaptive: rename prepareFormatChange and add a no PCR reset condition > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=daff83c63fea951d05070a121c1e4c2e6e753e80 --- modules/demux/adaptive/Streams.cpp | 9 +++++---- modules/demux/adaptive/Streams.hpp | 2 +- modules/demux/hls/HLSStreams.cpp | 4 ++-- modules/demux/hls/HLSStreams.hpp | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/modules/demux/adaptive/Streams.cpp b/modules/demux/adaptive/Streams.cpp index 50be19a..aedf574 100644 --- a/modules/demux/adaptive/Streams.cpp +++ b/modules/demux/adaptive/Streams.cpp @@ -105,7 +105,7 @@ AbstractStream::~AbstractStream() vlc_mutex_destroy(&lock); } -void AbstractStream::prepareFormatChange() +void AbstractStream::prepareRestart(bool b_discontinuity) { if(demuxer) { @@ -113,7 +113,8 @@ void AbstractStream::prepareFormatChange() demuxer->drain(); /* Enqueue Del Commands for all current ES */ fakeesout->scheduleAllForDeletion(); - fakeesout->schedulePCRReset(); + if(b_discontinuity) + fakeesout->schedulePCRReset(); commandsqueue->Commit(); /* ignoring demuxer's own Del commands */ commandsqueue->setDrop(true); @@ -281,7 +282,7 @@ AbstractStream::buffering_status AbstractStream::bufferize(mtime_t nz_deadline, if(discontinuity) { msg_Dbg( p_realdemux, "Flushing on format change" ); - prepareFormatChange(); + prepareRestart(); discontinuity = false; commandsqueue->setFlush(); vlc_mutex_unlock(&lock); @@ -318,7 +319,7 @@ AbstractStream::buffering_status AbstractStream::bufferize(mtime_t nz_deadline, if(discontinuity) { msg_Dbg( p_realdemux, "Flushing on discontinuity" ); - prepareFormatChange(); + prepareRestart(); discontinuity = false; commandsqueue->setFlush(); vlc_mutex_unlock(&lock); diff --git a/modules/demux/adaptive/Streams.hpp b/modules/demux/adaptive/Streams.hpp index 1f85c50..a51b446 100644 --- a/modules/demux/adaptive/Streams.hpp +++ b/modules/demux/adaptive/Streams.hpp @@ -101,7 +101,7 @@ namespace adaptive virtual bool startDemux(); virtual bool restartDemux(); - virtual void prepareFormatChange(); + virtual void prepareRestart(bool = true); bool discontinuity; diff --git a/modules/demux/hls/HLSStreams.cpp b/modules/demux/hls/HLSStreams.cpp index c17bfd0..e3cf236 100644 --- a/modules/demux/hls/HLSStreams.cpp +++ b/modules/demux/hls/HLSStreams.cpp @@ -86,9 +86,9 @@ AbstractDemuxer * HLSStream::createDemux(const StreamFormat &format) return ret; } -void HLSStream::prepareFormatChange() +void HLSStream::prepareRestart(bool b_discontinuity) { - AbstractStream::prepareFormatChange(); + AbstractStream::prepareRestart(b_discontinuity); if((unsigned)format == StreamFormat::PACKEDAAC) { fakeesout->setTimestampOffset( i_aac_offset ); diff --git a/modules/demux/hls/HLSStreams.hpp b/modules/demux/hls/HLSStreams.hpp index 5f6c3ba..97e0b8d 100644 --- a/modules/demux/hls/HLSStreams.hpp +++ b/modules/demux/hls/HLSStreams.hpp @@ -35,7 +35,7 @@ namespace hls protected: virtual AbstractDemuxer * createDemux(const StreamFormat &); /* reimpl */ virtual bool restartDemux(); /* reimpl */ - virtual void prepareFormatChange(); /* reimpl */ + virtual void prepareRestart(bool = true); /* reimpl */ virtual block_t *checkBlock(block_t *, bool); /* reimpl */ _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
