diff options
author | phintuka <phintuka> | 2009-09-11 11:36:52 +0000 |
---|---|---|
committer | phintuka <phintuka> | 2009-09-11 11:36:52 +0000 |
commit | dbaf47568cbcc33dcdf3801e3a39876a2fa97645 (patch) | |
tree | 5c0deb155faa3d6409bd6a5faa6a135129d346ed | |
parent | 0b3e9eb6a25b5a99ab9be5bc4c6f13eebb81a1bb (diff) | |
download | xineliboutput-dbaf47568cbcc33dcdf3801e3a39876a2fa97645.tar.gz xineliboutput-dbaf47568cbcc33dcdf3801e3a39876a2fa97645.tar.bz2 |
Use larger video fifo for media player
-rw-r--r-- | xine_input_vdr.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/xine_input_vdr.c b/xine_input_vdr.c index e0b71cfc..cd8bfc23 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.284 2009-08-25 09:47:18 phintuka Exp $ + * $Id: xine_input_vdr.c,v 1.285 2009-09-11 11:36:52 phintuka Exp $ * */ @@ -87,6 +87,8 @@ #define RADIO_MAX_BUFFERS 10 +#define SLAVE_VIDEO_FIFO_SIZE 1000 + #ifndef NOSIGNAL_IMAGE_FILE # define NOSIGNAL_IMAGE_FILE "/usr/share/vdr/xineliboutput/nosignal.mpv" #endif @@ -125,7 +127,7 @@ # include <linux/unistd.h> /* syscall(__NR_gettid) */ #endif -static const char module_revision[] = "$Id: xine_input_vdr.c,v 1.284 2009-08-25 09:47:18 phintuka Exp $"; +static const char module_revision[] = "$Id: xine_input_vdr.c,v 1.285 2009-09-11 11:36:52 phintuka Exp $"; static const char log_module_input_vdr[] = "[input_vdr] "; #define LOG_MODULENAME log_module_input_vdr #define SysLogLevel iSysLogLevel @@ -2207,9 +2209,18 @@ static int handle_control_playfile(vdr_input_plugin_t *this, const char *cmd) #endif if(!this->slave_stream) { + cfg_entry_t *e = this->class->xine->config->lookup_entry(this->class->xine->config, + "engine.buffers.video_num_buffers"); + int vbufs = e ? e->num_value : 250; + this->class->xine->config->update_num(this->class->xine->config, + "engine.buffers.video_num_buffers", SLAVE_VIDEO_FIFO_SIZE); + LOGMSG("xine_stream_new(slave_stream): using %dMB video fifo", SLAVE_VIDEO_FIFO_SIZE*8/1024); this->slave_stream = xine_stream_new(this->class->xine, this->stream->audio_out, this->stream->video_out); + + this->class->xine->config->update_num(this->class->xine->config, + "engine.buffers.video_num_buffers", vbufs); } if(!this->slave_event_queue) { |