moved convState to struct decoder

Since we moved all PCM conversions to decoder_data(), the attribute
convState isn't being used anymore by the OutputBuffer code.  Move it
to struct decoder.
This commit is contained in:
Max Kellermann 2008-08-26 08:27:06 +02:00
parent 1b845f94a0
commit 2e9169de9d
4 changed files with 10 additions and 7 deletions

View File

@ -17,7 +17,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#include "decoder_api.h" #include "decoder_internal.h"
#include "audio.h" #include "audio.h"
#include "utils.h" #include "utils.h"
@ -25,12 +25,14 @@
#include "playerData.h" #include "playerData.h"
#include "gcc.h" #include "gcc.h"
void decoder_initialized(mpd_unused struct decoder * decoder, void decoder_initialized(struct decoder * decoder,
const AudioFormat * audio_format, const AudioFormat * audio_format,
float total_time) float total_time)
{ {
assert(dc.state == DECODE_STATE_START); assert(dc.state == DECODE_STATE_START);
memset(&decoder->conv_state, 0, sizeof(decoder->conv_state));
if (audio_format != NULL) { if (audio_format != NULL) {
dc.audioFormat = *audio_format; dc.audioFormat = *audio_format;
getOutputAudioFormat(audio_format, getOutputAudioFormat(audio_format,
@ -70,7 +72,7 @@ static int need_chunks(InputStream * inStream, int seekable)
return 0; return 0;
} }
int decoder_data(mpd_unused struct decoder *decoder, InputStream * inStream, int decoder_data(struct decoder *decoder, InputStream * inStream,
int seekable, int seekable,
void *dataIn, size_t dataInLen, void *dataIn, size_t dataInLen,
float data_time, mpd_uint16 bitRate, float data_time, mpd_uint16 bitRate,
@ -98,7 +100,7 @@ int decoder_data(mpd_unused struct decoder *decoder, InputStream * inStream,
data = convBuffer; data = convBuffer;
datalen = pcm_convertAudioFormat(&(dc.audioFormat), dataIn, datalen = pcm_convertAudioFormat(&(dc.audioFormat), dataIn,
dataInLen, &(ob.audioFormat), dataInLen, &(ob.audioFormat),
data, &(ob.convState)); data, &decoder->conv_state);
} }
if (replayGainInfo != NULL && (replayGainState != REPLAYGAIN_OFF)) if (replayGainInfo != NULL && (replayGainState != REPLAYGAIN_OFF))

View File

@ -20,9 +20,12 @@
#define DECODER_INTERNAL_H #define DECODER_INTERNAL_H
#include "decoder_api.h" #include "decoder_api.h"
#include "pcm_utils.h"
struct decoder { struct decoder {
InputPlugin *plugin; InputPlugin *plugin;
ConvState conv_state;
}; };
#endif #endif

View File

@ -25,7 +25,6 @@ void ob_init(unsigned int size, Notify *notify)
{ {
assert(size > 0); assert(size > 0);
memset(&ob.convState, 0, sizeof(ConvState));
ob.chunks = xmalloc(size * sizeof(*ob.chunks)); ob.chunks = xmalloc(size * sizeof(*ob.chunks));
ob.size = size; ob.size = size;
ob.begin = 0; ob.begin = 0;

View File

@ -20,7 +20,7 @@
#define OUTPUT_BUFFER_H #define OUTPUT_BUFFER_H
#include "notify.h" #include "notify.h"
#include "pcm_utils.h" #include "audio_format.h"
#define OUTPUT_BUFFER_DC_STOP -1 #define OUTPUT_BUFFER_DC_STOP -1
#define OUTPUT_BUFFER_DC_SEEK -2 #define OUTPUT_BUFFER_DC_SEEK -2
@ -55,7 +55,6 @@ typedef struct _OutputBuffer {
int lazy; int lazy;
AudioFormat audioFormat; AudioFormat audioFormat;
ConvState convState;
Notify *notify; Notify *notify;
} OutputBuffer; } OutputBuffer;