Fixed spurious fast frames when switching from "slow back" to "slow forward"

This commit is contained in:
Klaus Schmidinger 2025-02-18 17:06:15 +01:00
parent 7817e64695
commit 2a12af481a
2 changed files with 6 additions and 4 deletions

View File

@ -10085,3 +10085,4 @@ Video Disk Recorder Revision History
- Added '~' to the list of delimiters in cTextWrapper (thanks to Stefan Hofmann). - Added '~' to the list of delimiters in cTextWrapper (thanks to Stefan Hofmann).
- Fixed progress display when switching from "pause" to "slow back" (reported by Andreas - Fixed progress display when switching from "pause" to "slow back" (reported by Andreas
Baierl). Baierl).
- Fixed spurious fast frames when switching from "slow back" to "slow forward".

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: dvbplayer.c 5.5 2025/02/18 15:37:24 kls Exp $ * $Id: dvbplayer.c 5.6 2025/02/18 17:06:15 kls Exp $
*/ */
#include "dvbplayer.h" #include "dvbplayer.h"
@ -795,15 +795,17 @@ void cDvbPlayer::Forward(void)
Pause(); Pause();
break; break;
} }
Empty();
// run into pmPause // run into pmPause
case pmStill: case pmStill:
case pmPause: case pmPause: {
LOCK_THREAD;
Empty();
DeviceMute(); DeviceMute();
playMode = pmSlow; playMode = pmSlow;
playDir = pdForward; playDir = pdForward;
trickSpeed = NORMAL_SPEED; trickSpeed = NORMAL_SPEED;
TrickSpeed(Setup.MultiSpeedMode ? -1 : -MAX_SPEEDS); TrickSpeed(Setup.MultiSpeedMode ? -1 : -MAX_SPEEDS);
}
break; break;
default: esyslog("ERROR: unknown playMode %d (%s)", playMode, __FUNCTION__); default: esyslog("ERROR: unknown playMode %d (%s)", playMode, __FUNCTION__);
} }
@ -844,7 +846,6 @@ void cDvbPlayer::Backward(void)
Pause(); Pause();
break; break;
} }
Empty();
// run into pmPause // run into pmPause
case pmStill: case pmStill:
case pmPause: { case pmPause: {