diff --git a/modules/demux/adaptive/PlaylistManager.cpp b/modules/demux/adaptive/PlaylistManager.cpp index 707efc82c90cdf1af7d855bc1fa9ae5134c5ec58..cbc55396bd80ad67fa06144e3618652a5983e22a 100644 --- a/modules/demux/adaptive/PlaylistManager.cpp +++ b/modules/demux/adaptive/PlaylistManager.cpp @@ -161,6 +161,8 @@ bool PlaylistManager::init(bool b_preparsing) playlist->playbackStart.Set(time(nullptr)); nextPlaylistupdate = playlist->playbackStart.Get(); + if(b_preparsing) + preparsePlaylist(); updateControlsPosition(); return true; @@ -422,6 +424,11 @@ bool PlaylistManager::updatePlaylist() return true; } +void PlaylistManager::preparsePlaylist() +{ + +} + Times PlaylistManager::getTimes(bool b_first) const { vlc_mutex_locker locker(&demux.lock); diff --git a/modules/demux/adaptive/PlaylistManager.h b/modules/demux/adaptive/PlaylistManager.h index 16bc3344113550e9dd1cac09e69555368b805e9a..e83935f1b39c4b6815c2175e7b75d40626584667 100644 --- a/modules/demux/adaptive/PlaylistManager.h +++ b/modules/demux/adaptive/PlaylistManager.h @@ -66,6 +66,7 @@ namespace adaptive virtual bool needsUpdate() const; virtual bool updatePlaylist(); virtual void scheduleNextUpdate(); + virtual void preparsePlaylist(); /* static callbacks */ static int control_callback(demux_t *, int, va_list); @@ -105,6 +106,7 @@ namespace adaptive demux_t *p_demux; std::vector<AbstractStream *> streams; BasePeriod *currentPeriod; + bool b_preparsing; enum class TimestampSynchronizationPoint { @@ -151,7 +153,6 @@ namespace adaptive bool b_buffering; bool b_canceled; mtime_t pause_start; - bool b_preparsing; }; } diff --git a/modules/demux/adaptive/Streams.cpp b/modules/demux/adaptive/Streams.cpp index 574c1d89d4a5ccd9171a42de4cbeb0c5603b795b..a138b49e468e4c6c822e1096aaec669059a8736a 100644 --- a/modules/demux/adaptive/Streams.cpp +++ b/modules/demux/adaptive/Streams.cpp @@ -727,7 +727,7 @@ bool AbstractStream::getMediaAdvanceAmount(mtime_t *duration) const return true; } -bool AbstractStream::runUpdates() +bool AbstractStream::runUpdates(bool) { if(!valid) return false; diff --git a/modules/demux/adaptive/Streams.hpp b/modules/demux/adaptive/Streams.hpp index 182d5362343369b86a7778db2bc58a6ebc85a79e..5ff1b804956f4f01147eff03f836690d0aedac68 100644 --- a/modules/demux/adaptive/Streams.hpp +++ b/modules/demux/adaptive/Streams.hpp @@ -102,7 +102,7 @@ namespace adaptive virtual bool setPosition(const StreamPosition &, bool); bool getMediaPlaybackTimes(mtime_t *, mtime_t *, mtime_t *) const; bool getMediaAdvanceAmount(mtime_t *) const; - bool runUpdates(); + bool runUpdates(bool = false); /* Used by demuxers fake streams */ virtual block_t *readNextBlock() override;