1
0
Fork 0
forked from len0rd/rockbox

Remove unused conf_preseek from buffering.c and all of its accountraments. This is _not_ a setting. This is a guessing tool used by either playback or buffering to serve its clients better. Use the REBUFFER_GUESS size in resume to help obviate pondlife's bug. This will also need to be used when FS8092 gets fixed correctly with a complete rebuffer for backward movements. It may also belong in buffering not playback, haven't decided for sure

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15475 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Brandon Low 2007-11-05 16:02:12 +00:00
parent 2d95fd524d
commit 1df1e7b0c7
5 changed files with 5 additions and 21 deletions

View file

@ -135,8 +135,6 @@ static volatile size_t buf_ridx; /* current reading position */
static size_t conf_watermark = 0; /* Level to trigger filebuf fill */ static size_t conf_watermark = 0; /* Level to trigger filebuf fill */
static size_t conf_filechunk = 0; /* Bytes-per-read for buffering (impacts static size_t conf_filechunk = 0; /* Bytes-per-read for buffering (impacts
responsiveness of buffering thread) */ responsiveness of buffering thread) */
static size_t conf_preseek = 0; /* Distance a codec may look backwards after
seeking, to prevent double rebuffers */
#if MEM > 8 #if MEM > 8
static size_t high_watermark = 0; /* High watermark for rebuffer */ static size_t high_watermark = 0; /* High watermark for rebuffer */
#endif #endif
@ -178,7 +176,6 @@ enum {
/* Configuration: */ /* Configuration: */
Q_SET_WATERMARK, Q_SET_WATERMARK,
Q_SET_CHUNKSIZE, Q_SET_CHUNKSIZE,
Q_SET_PRESEEK,
Q_FILL_BUFFER, /* Request that the buffering thread initiate a buffer Q_FILL_BUFFER, /* Request that the buffering thread initiate a buffer
fill at its earliest convenience */ fill at its earliest convenience */
}; };
@ -1117,10 +1114,6 @@ void buf_set_conf(int setting, size_t value)
msg = Q_SET_CHUNKSIZE; msg = Q_SET_CHUNKSIZE;
break; break;
case BUFFERING_SET_PRESEEK:
msg = Q_SET_PRESEEK;
break;
default: default:
return; return;
} }
@ -1254,11 +1247,6 @@ void buffering_thread(void)
} }
break; break;
case Q_SET_PRESEEK:
LOGFQUEUE("buffering < Q_SET_PRESEEK");
conf_preseek = (size_t)ev.data;
break;
#ifndef SIMULATOR #ifndef SIMULATOR
case SYS_USB_CONNECTED: case SYS_USB_CONNECTED:
LOGFQUEUE("buffering < SYS_USB_CONNECTED"); LOGFQUEUE("buffering < SYS_USB_CONNECTED");

View file

@ -116,7 +116,6 @@ void unregister_buffer_low_callback(buffer_low_callback func);
enum { enum {
BUFFERING_SET_WATERMARK = 1, BUFFERING_SET_WATERMARK = 1,
BUFFERING_SET_CHUNKSIZE, BUFFERING_SET_CHUNKSIZE,
BUFFERING_SET_PRESEEK,
}; };
void buf_set_conf(int setting, size_t value); void buf_set_conf(int setting, size_t value);

View file

@ -79,7 +79,6 @@ enum codec_status codec_main(void)
ci->configure(DSP_SET_SAMPLE_DEPTH, 28); ci->configure(DSP_SET_SAMPLE_DEPTH, 28);
ci->configure(CODEC_SET_FILEBUF_CHUNKSIZE, 1024*16); ci->configure(CODEC_SET_FILEBUF_CHUNKSIZE, 1024*16);
ci->configure(CODEC_SET_FILEBUF_PRESEEK, 0);
/* Create a decoder instance */ /* Create a decoder instance */
reader.read = read_impl; reader.read = read_impl;

View file

@ -36,7 +36,6 @@ enum
{ {
CODEC_SET_FILEBUF_WATERMARK = 1, CODEC_SET_FILEBUF_WATERMARK = 1,
CODEC_SET_FILEBUF_CHUNKSIZE, CODEC_SET_FILEBUF_CHUNKSIZE,
CODEC_SET_FILEBUF_PRESEEK,
DSP_SWITCH_CODEC, DSP_SWITCH_CODEC,
DSP_SET_FREQUENCY, DSP_SET_FREQUENCY,
DSP_SWITCH_FREQUENCY, DSP_SWITCH_FREQUENCY,

View file

@ -1663,10 +1663,6 @@ static void codec_configure_callback(int setting, intptr_t value)
buf_set_conf(BUFFERING_SET_CHUNKSIZE, value); buf_set_conf(BUFFERING_SET_CHUNKSIZE, value);
break; break;
case CODEC_SET_FILEBUF_PRESEEK:
buf_set_conf(BUFFERING_SET_PRESEEK, value);
break;
default: default:
if (!dsp_configure(setting, value)) { logf("Illegal key:%d", setting); } if (!dsp_configure(setting, value)) { logf("Illegal key:%d", setting); }
} }
@ -2295,7 +2291,6 @@ static bool audio_load_track(int offset, bool start_play)
set_current_codec(CODEC_IDX_AUDIO); set_current_codec(CODEC_IDX_AUDIO);
buf_set_conf(BUFFERING_SET_WATERMARK, AUDIO_DEFAULT_WATERMARK); buf_set_conf(BUFFERING_SET_WATERMARK, AUDIO_DEFAULT_WATERMARK);
buf_set_conf(BUFFERING_SET_CHUNKSIZE, AUDIO_DEFAULT_FILECHUNK); buf_set_conf(BUFFERING_SET_CHUNKSIZE, AUDIO_DEFAULT_FILECHUNK);
buf_set_conf(BUFFERING_SET_PRESEEK, AUDIO_REBUFFER_GUESS_SIZE);
dsp_configure(DSP_RESET, 0); dsp_configure(DSP_RESET, 0);
set_current_codec(last_codec); set_current_codec(last_codec);
@ -2441,8 +2436,12 @@ static bool audio_load_track(int offset, bool start_play)
logf("alt:%s", trackname); logf("alt:%s", trackname);
if (!file_offset && track_id3->first_frame_offset) if (file_offset > AUDIO_REBUFFER_GUESS_SIZE)
file_offset -= AUDIO_REBUFFER_GUESS_SIZE;
else if (track_id3->first_frame_offset)
file_offset = track_id3->first_frame_offset; file_offset = track_id3->first_frame_offset;
else
file_offset = 0;
tracks[track_widx].audio_hid = bufopen(trackname, file_offset, type); tracks[track_widx].audio_hid = bufopen(trackname, file_offset, type);