diff options
-rw-r--r-- | src/input/input_v4l.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/input/input_v4l.c b/src/input/input_v4l.c index 663543cf4..141277362 100644 --- a/src/input/input_v4l.c +++ b/src/input/input_v4l.c @@ -1179,10 +1179,14 @@ static int v4l_adjust_realtime_speed(v4l_input_plugin_t *this, fifo_buffer_t *fi PRINT("Buffer is empty, pausing playback (used: %d, num_free: %d)\r\n", num_used, num_free); - this->scr_tunning = SCR_PAUSED; - pvrscr_speed_tunning(this->scr, 0.0); + this->stream->xine->clock->set_speed (this->stream->xine->clock, XINE_SPEED_PAUSE); + this->stream->xine->clock->set_option (this->stream->xine->clock, CLOCK_SCR_ADJUSTABLE, 0); if (this->stream->audio_out != NULL) - this->stream->audio_out->set_property(this->stream->audio_out, AO_PROP_PAUSED, 2); + this->stream->audio_out->set_property(this->stream->audio_out, AO_PROP_PAUSED, 2); + + this->scr_tunning = SCR_PAUSED; +/* pvrscr_speed_tunning(this->scr, 0.0); */ + } else if (num_free <= 1 && scr_tunning != SCR_SKIP) { this->scr_tunning = SCR_SKIP; @@ -1199,7 +1203,10 @@ static int v4l_adjust_realtime_speed(v4l_input_plugin_t *this, fifo_buffer_t *fi this->scr_tunning = 0; - pvrscr_speed_tunning(this->scr, 1.0); + pvrscr_speed_tunning(this->scr, 1.0); + + this->stream->xine->clock->set_speed (this->stream->xine->clock, XINE_SPEED_NORMAL); + this->stream->xine->clock->set_option (this->stream->xine->clock, CLOCK_SCR_ADJUSTABLE, 1); if (this->stream->audio_out != NULL) this->stream->audio_out->set_property(this->stream->audio_out, AO_PROP_PAUSED, 0); } |