changeset 16152:10a69a812eff

remove unused cache-prefill and create cache-seek-min that controls when seek_long is prefered over waiting for cache to fill
author iive
date Sun, 31 Jul 2005 00:26:07 +0000
parents 3f00da96c768
children e21d786d6561
files DOCS/man/en/mplayer.1 TOOLS/netstream/netstream.c cfg-common.h libmpdemux/cache2.c libmpdemux/demuxer.c mencoder.c mplayer.c
diffstat 7 files changed, 19 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/man/en/mplayer.1	Sat Jul 30 03:04:35 2005 +0000
+++ b/DOCS/man/en/mplayer.1	Sun Jul 31 00:26:07 2005 +0000
@@ -818,9 +818,10 @@
 of the total.
 .
 .TP
-.B \-cache-prefill <percentage> (not yet implemented)
-When the cache is emptied MPlayer will pause and restart playback when
-the cache prefill threshold set with this option is reached.
+.B \-cache-seek-min <percentage> (not yet implemented)
+If seek is to be done and it is within seek-min range, MPlayer will wait
+cache to be filled to this position rather than performing an stream seek.
+(default:50)
 .
 .TP
 .B \-cdda <option1:option2> (CDDA only)
--- a/TOOLS/netstream/netstream.c	Sat Jul 30 03:04:35 2005 +0000
+++ b/TOOLS/netstream/netstream.c	Sun Jul 31 00:26:07 2005 +0000
@@ -375,7 +375,7 @@
 
 //---- For libmpdemux
 
-float stream_cache_prefill_percent=5.0;
+float stream_cache_seek_min_percent=50.0;
 float stream_cache_min_percent=20.0;
 
 #include <libmpdemux/demuxer.h>
--- a/cfg-common.h	Sat Jul 30 03:04:35 2005 +0000
+++ b/cfg-common.h	Sun Jul 31 00:26:07 2005 +0000
@@ -16,7 +16,7 @@
 	{"cache", &stream_cache_size, CONF_TYPE_INT, CONF_RANGE, 32, 1048576, NULL},
 	{"nocache", &stream_cache_size, CONF_TYPE_FLAG, 0, 1, 0, NULL},
 	{"cache-min", &stream_cache_min_percent, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
-	{"cache-prefill", &stream_cache_prefill_percent, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
+	{"cache-seek-min", &stream_cache_seek_min_percent, CONF_TYPE_FLOAT, CONF_RANGE, 0, 99, NULL},
 #else
 	{"cache", "MPlayer was compiled without cache2 support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL},
 #endif
--- a/libmpdemux/cache2.c	Sat Jul 30 03:04:35 2005 +0000
+++ b/libmpdemux/cache2.c	Sun Jul 31 00:26:07 2005 +0000
@@ -42,7 +42,7 @@
   int sector_size; // size of a single sector (2048/2324)
   int back_size;   // we should keep back_size amount of old bytes for backward seek
   int fill_limit;  // we should fill buffer only if space>=fill_limit
-  int prefill;	   // we should fill min prefill bytes if cache gets empty
+  int seek_limit;  // keep filling cache if distanse is less that seek limit
   // filler's pointers:
   int eof;
   off_t min_filepos; // buffer contain only a part of the file, from min-max pos
@@ -122,7 +122,7 @@
       mp_msg(MSGT_CACHE,MSGL_DBG2,"Out of boundaries... seeking to 0x%X  \n",read);
       // streaming: drop cache contents only if seeking backward or too much fwd:
       if(s->stream->type!=STREAMTYPE_STREAM ||
-          read<s->min_filepos || read>=s->max_filepos+s->buffer_size)
+          read<s->min_filepos || read>=s->max_filepos+s->seek_limit)
       {
         s->offset= // FIXME!?
         s->min_filepos=s->max_filepos=read; // drop cache content :(
@@ -250,7 +250,7 @@
   exit(0);
 }
 
-int stream_enable_cache(stream_t *stream,int size,int min,int prefill){
+int stream_enable_cache(stream_t *stream,int size,int min,int seek_limit){
   int ss=(stream->type==STREAMTYPE_VCD)?VCD_SECTOR_DATA:STREAM_BUFFER_SIZE;
   cache_vars_t* s;
 
@@ -264,13 +264,13 @@
   if(s == NULL) return 0;
   stream->cache_data=s;
   s->stream=stream; // callback
-  s->prefill=prefill;
+  s->seek_limit=seek_limit;
 
 
   //make sure that we won't wait from cache_fill
   //more data than it is alowed to fill
-  if (s->prefill > s->buffer_size - s->fill_limit ){
-     s->prefill = s->buffer_size - s->fill_limit;
+  if (s->seek_limit > s->buffer_size - s->fill_limit ){
+     s->seek_limit = s->buffer_size - s->fill_limit;
   }
   if (min > s->buffer_size - s->fill_limit) {
      min = s->buffer_size - s->fill_limit;
--- a/libmpdemux/demuxer.c	Sat Jul 30 03:04:35 2005 +0000
+++ b/libmpdemux/demuxer.c	Sun Jul 31 00:26:07 2005 +0000
@@ -1375,7 +1375,7 @@
 extern int hr_mp3_seek;
 
 extern float stream_cache_min_percent;
-extern float stream_cache_prefill_percent;
+extern float stream_cache_seek_min_percent;
 
 demuxer_t* demux_open(stream_t *vs,int file_format,int audio_id,int video_id,int dvdsub_id,char* filename){
   stream_t *as = NULL,*ss = NULL;
@@ -1392,7 +1392,7 @@
     }
     if(audio_stream_cache) {
       if(!stream_enable_cache(as,audio_stream_cache*1024,audio_stream_cache*1024*(stream_cache_min_percent / 100.0),
-			      audio_stream_cache*1024*(stream_cache_prefill_percent / 100.0))) {
+			      audio_stream_cache*1024*(stream_cache_seek_min_percent / 100.0))) {
 	free_stream(as);
 	mp_msg(MSGT_DEMUXER,MSGL_ERR,"Can't enable audio stream cache\n");
 	return NULL;
--- a/mencoder.c	Sat Jul 30 03:04:35 2005 +0000
+++ b/mencoder.c	Sun Jul 31 00:26:07 2005 +0000
@@ -98,7 +98,7 @@
 extern int cache_fill_status;
 
 float stream_cache_min_percent=20.0;
-float stream_cache_prefill_percent=5.0;
+float stream_cache_seek_min_percent=50.0;
 #else
 #define cache_fill_status 0
 #endif
--- a/mplayer.c	Sat Jul 30 03:04:35 2005 +0000
+++ b/mplayer.c	Sun Jul 31 00:26:07 2005 +0000
@@ -266,7 +266,7 @@
 extern int cache_fill_status;
 
 float stream_cache_min_percent=20.0;
-float stream_cache_prefill_percent=5.0;
+float stream_cache_seek_min_percent=50.0;
 #else
 #define cache_fill_status 0
 #endif
@@ -1640,7 +1640,9 @@
 #endif
 if(stream_cache_size>0){
   current_module="enable_cache";
-  if(!stream_enable_cache(stream,stream_cache_size*1024,stream_cache_size*1024*(stream_cache_min_percent / 100.0),stream_cache_size*1024*(stream_cache_prefill_percent / 100.0)))
+  if(!stream_enable_cache(stream,stream_cache_size*1024,
+                          stream_cache_size*1024*(stream_cache_min_percent / 100.0),
+                          stream_cache_size*1024*(stream_cache_seek_min_percent / 100.0)))
     if((eof = libmpdemux_was_interrupted(PT_NEXT_ENTRY))) goto goto_next_file;
 }