decoder/sndfile: move sf_readf_int() call to sndfile_read_frames()
This commit is contained in:
parent
cf47b68c1e
commit
5921ffaa36
@ -154,6 +154,12 @@ sndfile_sample_format(const SF_INFO &info)
|
|||||||
return SampleFormat::S32;
|
return SampleFormat::S32;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static sf_count_t
|
||||||
|
sndfile_read_frames(SNDFILE *sf, void *buffer, sf_count_t n_frames)
|
||||||
|
{
|
||||||
|
return sf_readf_int(sf, (int *)buffer, n_frames);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
sndfile_stream_decode(Decoder &decoder, InputStream &is)
|
sndfile_stream_decode(Decoder &decoder, InputStream &is)
|
||||||
{
|
{
|
||||||
@ -183,14 +189,16 @@ sndfile_stream_decode(Decoder &decoder, InputStream &is)
|
|||||||
decoder_initialized(decoder, audio_format, info.seekable,
|
decoder_initialized(decoder, audio_format, info.seekable,
|
||||||
sndfile_duration(info));
|
sndfile_duration(info));
|
||||||
|
|
||||||
int buffer[4096];
|
char buffer[16384];
|
||||||
|
|
||||||
const size_t frame_size = audio_format.GetFrameSize();
|
const size_t frame_size = audio_format.GetFrameSize();
|
||||||
const sf_count_t read_frames = sizeof(buffer) / frame_size;
|
const sf_count_t read_frames = sizeof(buffer) / frame_size;
|
||||||
|
|
||||||
DecoderCommand cmd;
|
DecoderCommand cmd;
|
||||||
do {
|
do {
|
||||||
sf_count_t num_frames = sf_readf_int(sf, buffer, read_frames);
|
sf_count_t num_frames =
|
||||||
|
sndfile_read_frames(sf,
|
||||||
|
buffer, read_frames);
|
||||||
if (num_frames <= 0)
|
if (num_frames <= 0)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user