summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorphintuka <phintuka>2011-03-24 09:53:03 +0000
committerphintuka <phintuka>2011-03-24 09:53:03 +0000
commit58ee1b978a44c4deeefc360fc747b51c2e420c6e (patch)
tree1647d2696e8324259aecf9c8ed8c08475f6b8a71
parent79fbe25d5e8f4980296009193ee872598bd93692 (diff)
downloadxineliboutput-58ee1b978a44c4deeefc360fc747b51c2e420c6e.tar.gz
xineliboutput-58ee1b978a44c4deeefc360fc747b51c2e420c6e.tar.bz2
reset_scr_tuning(): do not change playback speed if playback is currently paused by the user.
Fixes delayed pause when using UDP/RTP.
-rw-r--r--xine_input_vdr.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/xine_input_vdr.c b/xine_input_vdr.c
index 25ca3794..bd9cc27e 100644
--- a/xine_input_vdr.c
+++ b/xine_input_vdr.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: xine_input_vdr.c,v 1.333 2011-03-24 09:49:43 phintuka Exp $
+ * $Id: xine_input_vdr.c,v 1.334 2011-03-24 09:53:03 phintuka Exp $
*
*/
@@ -136,7 +136,7 @@ typedef struct {
# include <linux/unistd.h> /* syscall(__NR_gettid) */
#endif
-static const char module_revision[] = "$Id: xine_input_vdr.c,v 1.333 2011-03-24 09:49:43 phintuka Exp $";
+static const char module_revision[] = "$Id: xine_input_vdr.c,v 1.334 2011-03-24 09:53:03 phintuka Exp $";
static const char log_module_input_vdr[] = "[input_vdr] ";
#define LOG_MODULENAME log_module_input_vdr
#define SysLogLevel iSysLogLevel
@@ -589,8 +589,12 @@ static void reset_scr_tuning(vdr_input_plugin_t *this)
if (this->scr)
this->scr->set_speed_tuning(this->scr, 1.0);
- if (_x_get_fine_speed(this->stream) != XINE_FINE_SPEED_NORMAL)
- _x_set_fine_speed(this->stream, XINE_FINE_SPEED_NORMAL);
+ if (_x_get_fine_speed(this->stream) != XINE_FINE_SPEED_NORMAL) {
+ if (!this->is_paused)
+ _x_set_fine_speed(this->stream, XINE_FINE_SPEED_NORMAL);
+ else
+ LOGDBG("reset_scr_tuning: playback is paused");
+ }
this->scr->scr.set_fine_speed(&this->scr->scr, XINE_FINE_SPEED_NORMAL);
}