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:
parent
1b845f94a0
commit
2e9169de9d
@ -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))
|
||||||
|
@ -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
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
Loading…
Reference in New Issue
Block a user