Fixed real-time playback of VoD streams that do not start at a zero timestamp
This commit is contained in:
parent
5c5ab6c058
commit
c78cbc22ea
1 changed files with 2 additions and 2 deletions
|
@ -455,7 +455,6 @@ namespace Mist {
|
|||
/// Prepares all tracks from selectedTracks for seeking to the specified ms position.
|
||||
void Output::seek(unsigned long long pos){
|
||||
sought = true;
|
||||
firstTime = Util::getMS() - pos;
|
||||
if (!isInitialized){
|
||||
initialize();
|
||||
}
|
||||
|
@ -471,6 +470,7 @@ namespace Mist {
|
|||
seek(*it, pos);
|
||||
}
|
||||
}
|
||||
firstTime = Util::getMS() - buffer.begin()->time;
|
||||
}
|
||||
|
||||
bool Output::seek(unsigned int tid, unsigned long long pos, bool getNextKey){
|
||||
|
@ -603,7 +603,7 @@ namespace Mist {
|
|||
|
||||
//slow down processing, if real time speed is wanted
|
||||
if (realTime){
|
||||
while (thisPacket.getTime() > (((Util::getMS() - firstTime)*1000)+maxSkipAhead)/realTime) {
|
||||
while (thisPacket.getTime() > (((Util::getMS() - firstTime)*1000)+maxSkipAhead)/realTime && config->is_active && myConn) {
|
||||
Util::sleep(std::min(thisPacket.getTime() - (((Util::getMS() - firstTime)*1000)+minSkipAhead)/realTime, 1000llu));
|
||||
stats();
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue