vlc | branch: master | Francois Cartegnie <fcvlc...@free.fr> | Sun Sep 18 16:51:08 2016 +0200| [7cccb1faf6712932f1beb2bbc1e25077ad820a58] | committer: Francois Cartegnie
demux: adaptive: save buffering status > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7cccb1faf6712932f1beb2bbc1e25077ad820a58 --- modules/demux/adaptive/Streams.cpp | 13 +++++++++++++ modules/demux/adaptive/Streams.hpp | 3 +++ 2 files changed, 16 insertions(+) diff --git a/modules/demux/adaptive/Streams.cpp b/modules/demux/adaptive/Streams.cpp index 68ff4b4..9cbedd6 100644 --- a/modules/demux/adaptive/Streams.cpp +++ b/modules/demux/adaptive/Streams.cpp @@ -50,6 +50,7 @@ AbstractStream::AbstractStream(demux_t * demux_) commandsqueue = NULL; demuxer = NULL; fakeesout = NULL; + last_buffer_status = buffering_lessthanmin; vlc_mutex_init(&lock); } @@ -251,9 +252,21 @@ bool AbstractStream::drain() return fakeesout->drain(); } +AbstractStream::buffering_status AbstractStream::getLastBufferStatus() const +{ + return last_buffer_status; +} + AbstractStream::buffering_status AbstractStream::bufferize(mtime_t nz_deadline, unsigned i_min_buffering, unsigned i_extra_buffering) { + last_buffer_status = doBufferize(nz_deadline, i_min_buffering, i_extra_buffering); + return last_buffer_status; +} + +AbstractStream::buffering_status AbstractStream::doBufferize(mtime_t nz_deadline, + unsigned i_min_buffering, unsigned i_extra_buffering) +{ vlc_mutex_lock(&lock); /* Ensure it is configured */ diff --git a/modules/demux/adaptive/Streams.hpp b/modules/demux/adaptive/Streams.hpp index afd3ba2..df30361 100644 --- a/modules/demux/adaptive/Streams.hpp +++ b/modules/demux/adaptive/Streams.hpp @@ -83,6 +83,7 @@ namespace adaptive buffering_lessthanmin, } buffering_status; buffering_status bufferize(mtime_t, unsigned, unsigned); + buffering_status getLastBufferStatus() const; status dequeue(mtime_t, mtime_t *); bool drain(); virtual bool setPosition(mtime_t, bool); @@ -125,6 +126,8 @@ namespace adaptive vlc_mutex_t lock; /* lock for everything accessed by dequeuing */ private: + buffering_status doBufferize(mtime_t, unsigned, unsigned); + buffering_status last_buffer_status; bool dead; bool disabled; }; _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits