aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-08-26 08:27:07 +0200
committerMax Kellermann <max@duempel.org>2008-08-26 08:27:07 +0200
commitc7384b65ac422e1dd5eadcb06b74931de37a6f58 (patch)
treebec4ca1f705b4920ff983f21c5a73fd71911c24e
parent67bf4b448dad25f2f0c60451f53fcacb0a0bde15 (diff)
eliminate OUTPUT_BUFFER_DC_STOP, OUTPUT_BUFFER_DC_SEEK
(Ab)use the decoder_command enumeration, which has nearly the same values and the same meaning.
-rw-r--r--src/decoder_api.c22
-rw-r--r--src/decoder_api.h9
-rw-r--r--src/inputPlugins/_flac_common.h2
-rw-r--r--src/inputPlugins/mp3_plugin.c7
-rw-r--r--src/outputBuffer.h3
5 files changed, 20 insertions, 23 deletions
diff --git a/src/decoder_api.c b/src/decoder_api.c
index 2009733a..d933f6c7 100644
--- a/src/decoder_api.c
+++ b/src/decoder_api.c
@@ -82,15 +82,15 @@ void decoder_seek_error(struct decoder * decoder)
* All chunks are full of decoded data; wait for the player to free
* one.
*/
-static int need_chunks(struct decoder *decoder, InputStream * inStream,
- int seekable)
+static enum decoder_command
+need_chunks(struct decoder *decoder, InputStream * inStream, int seekable)
{
if (dc.command == DECODE_COMMAND_STOP)
- return OUTPUT_BUFFER_DC_STOP;
+ return DECODE_COMMAND_STOP;
if (dc.command == DECODE_COMMAND_SEEK) {
if (seekable) {
- return OUTPUT_BUFFER_DC_SEEK;
+ return DECODE_COMMAND_SEEK;
} else {
decoder_seek_error(decoder);
}
@@ -102,14 +102,14 @@ static int need_chunks(struct decoder *decoder, InputStream * inStream,
notify_signal(&pc.notify);
}
- return 0;
+ return DECODE_COMMAND_NONE;
}
-int decoder_data(struct decoder *decoder, InputStream * inStream,
- int seekable,
- void *dataIn, size_t dataInLen,
- float data_time, mpd_uint16 bitRate,
- ReplayGainInfo * replayGainInfo)
+enum decoder_command
+decoder_data(struct decoder *decoder, InputStream * inStream, int seekable,
+ void *dataIn, size_t dataInLen,
+ float data_time, mpd_uint16 bitRate,
+ ReplayGainInfo * replayGainInfo)
{
size_t nbytes;
char *data;
@@ -153,7 +153,7 @@ int decoder_data(struct decoder *decoder, InputStream * inStream,
}
}
- return 0;
+ return DECODE_COMMAND_NONE;
}
void decoder_flush(mpd_unused struct decoder *decoder)
diff --git a/src/decoder_api.h b/src/decoder_api.h
index c7306691..bb851722 100644
--- a/src/decoder_api.h
+++ b/src/decoder_api.h
@@ -125,11 +125,10 @@ void decoder_seek_error(struct decoder * decoder);
* We send inStream for buffering the inputStream while waiting to
* send the next chunk
*/
-int decoder_data(struct decoder *decoder, InputStream * inStream,
- int seekable,
- void *data, size_t datalen,
- float data_time, mpd_uint16 bitRate,
- ReplayGainInfo * replayGainInfo);
+enum decoder_command
+decoder_data(struct decoder *decoder, InputStream * inStream, int seekable,
+ void *data, size_t datalen, float data_time, mpd_uint16 bitRate,
+ ReplayGainInfo * replayGainInfo);
void decoder_flush(struct decoder *decoder);
diff --git a/src/inputPlugins/_flac_common.h b/src/inputPlugins/_flac_common.h
index 21f71062..df9d7a84 100644
--- a/src/inputPlugins/_flac_common.h
+++ b/src/inputPlugins/_flac_common.h
@@ -171,7 +171,7 @@ static inline int flacSendChunk(FlacData * data)
1, data->chunk,
data->chunk_length, data->time,
data->bitRate,
- data->replayGainInfo) == OUTPUT_BUFFER_DC_STOP)
+ data->replayGainInfo) == DECODE_COMMAND_STOP)
return -1;
return 0;
diff --git a/src/inputPlugins/mp3_plugin.c b/src/inputPlugins/mp3_plugin.c
index 66ca85e2..3e7e0ea3 100644
--- a/src/inputPlugins/mp3_plugin.c
+++ b/src/inputPlugins/mp3_plugin.c
@@ -927,21 +927,22 @@ static int mp3Read(mp3DecodeData * data, struct decoder *decoder,
}
if (data->outputPtr >= data->outputBufferEnd) {
- ret = decoder_data(decoder, data->inStream,
+ enum decoder_command cmd;
+ cmd = decoder_data(decoder, data->inStream,
data->inStream->seekable,
data->outputBuffer,
data->outputPtr - data->outputBuffer,
data->elapsedTime,
data->bitRate / 1000,
(replayGainInfo != NULL) ? *replayGainInfo : NULL);
- if (ret == OUTPUT_BUFFER_DC_STOP) {
+ if (cmd == DECODE_COMMAND_STOP) {
data->flush = 0;
return DECODE_BREAK;
}
data->outputPtr = data->outputBuffer;
- if (ret == OUTPUT_BUFFER_DC_SEEK)
+ if (cmd == DECODE_COMMAND_STOP)
break;
}
}
diff --git a/src/outputBuffer.h b/src/outputBuffer.h
index 67bb0937..624b6dbc 100644
--- a/src/outputBuffer.h
+++ b/src/outputBuffer.h
@@ -22,9 +22,6 @@
#include "notify.h"
#include "audio_format.h"
-#define OUTPUT_BUFFER_DC_STOP -1
-#define OUTPUT_BUFFER_DC_SEEK -2
-
/* pick 1020 since its devisible for 8,16,24, and 32-bit audio */
#define CHUNK_SIZE 1020