diff options
author | kamel5 <vdr.kamel5 (at) gmx (dot) net> | 2019-06-21 14:07:00 +0200 |
---|---|---|
committer | kamel5 <vdr.kamel5 (at) gmx (dot) net> | 2019-06-21 14:07:00 +0200 |
commit | 8a04a17fc0a48f99903c3f5d2a0a30b238cbd7f7 (patch) | |
tree | c039b70b7a5d54f11104271212dc40035bc1d84c /coreengine/viewdisplayreplay.c | |
parent | 9278f18cb95c1fe417668d9ae790398698d3c907 (diff) | |
download | vdr-plugin-skindesigner-8a04a17fc0a48f99903c3f5d2a0a30b238cbd7f7.tar.gz vdr-plugin-skindesigner-8a04a17fc0a48f99903c3f5d2a0a30b238cbd7f7.tar.bz2 |
Eliminate a look sequence report in displayreplay
Diffstat (limited to 'coreengine/viewdisplayreplay.c')
-rw-r--r-- | coreengine/viewdisplayreplay.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/coreengine/viewdisplayreplay.c b/coreengine/viewdisplayreplay.c index 28373b6..0e4328b 100644 --- a/coreengine/viewdisplayreplay.c +++ b/coreengine/viewdisplayreplay.c @@ -157,6 +157,8 @@ void cViewReplay::ClearVariables(void) { veEndTime->Set(cString("")); if (veCutMarks) veCutMarks->Reset(); + timersLoaded = false; + globalTimers.ClearTimers(); } void cViewReplay::SetTimeShift(int framesTotal, int timeShiftLength) { @@ -180,6 +182,44 @@ void cViewReplay::SetRecording(const cRecording *recording) { } } +void cViewReplay::GetTimers(void) { + if (!timersLoaded) { + timersLoaded = true; + globalTimers.LoadTimers(); + } +} + +void cViewReplay::SetTimeShiftValues(const cRecording *recording) { + //check for instant recording + const char *recName = recording->Name(); + if (recName && *recName == '@') + return; + bool isTimeShift = false; +#if APIVERSNUM >= 20101 + int usage = recording->IsInUse(); + if (usage & ruTimer) + isTimeShift = true; + else { + if (globalTimers.IsRecording(recording)) + isTimeShift = true; + } +#endif + if (!isTimeShift) + return; + const cRecordingInfo *recInfo = recording->Info(); + if (!recInfo) + return; + const cEvent *event = recInfo->GetEvent(); + if (!event) + return; + double fps = recording->FramesPerSecond(); + time_t liveEventStop = event->EndTime(); + time_t recordingStart = time(0) - recording->LengthInSeconds(); + int framesTotal = (liveEventStop - recordingStart)*fps; + int recLength = liveEventStop - recordingStart; + SetTimeShift(framesTotal, recLength); +} + void cViewReplay::SetTitle(const char *title) { if (veRecTitle) { veRecTitle->Set(title); |