decoder/flac: use stream_info instead of audio_format
Use the sample rate stored in the stream_info struct instead of the audio_format struct.
This commit is contained in:
parent
3973aeecd2
commit
08b139f37c
@ -415,7 +415,7 @@ flac_decoder_initialize(struct flac_data *data, FLAC__StreamDecoder *sd,
|
||||
decoder_initialized(data->decoder, &data->audio_format,
|
||||
seekable,
|
||||
(float)duration /
|
||||
(float)data->audio_format.sample_rate);
|
||||
(float)data->stream_info.sample_rate);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -440,7 +440,7 @@ flac_decoder_loop(struct flac_data *data, FLAC__StreamDecoder *flac_dec,
|
||||
if (cmd == DECODE_COMMAND_SEEK) {
|
||||
FLAC__uint64 seek_sample = t_start +
|
||||
decoder_seek_where(decoder) *
|
||||
data->audio_format.sample_rate;
|
||||
data->stream_info.sample_rate;
|
||||
if (seek_sample >= t_start &&
|
||||
(t_end == 0 || seek_sample <= t_end) &&
|
||||
FLAC__stream_decoder_seek_absolute(flac_dec, seek_sample)) {
|
||||
|
@ -318,7 +318,7 @@ oggflac_decode(struct decoder * mpd_decoder, struct input_stream *input_stream)
|
||||
decoder_initialized(mpd_decoder, &data.audio_format,
|
||||
input_stream->seekable,
|
||||
(float)data.stream_info.total_samples /
|
||||
(float)data.audio_format.sample_rate);
|
||||
(float)data.stream_info.sample_rate);
|
||||
|
||||
while (true) {
|
||||
OggFLAC__seekable_stream_decoder_process_single(decoder);
|
||||
@ -328,7 +328,7 @@ oggflac_decode(struct decoder * mpd_decoder, struct input_stream *input_stream)
|
||||
}
|
||||
if (decoder_get_command(mpd_decoder) == DECODE_COMMAND_SEEK) {
|
||||
FLAC__uint64 seek_sample = decoder_seek_where(mpd_decoder) *
|
||||
data.audio_format.sample_rate + 0.5;
|
||||
data.stream_info.sample_rate;
|
||||
if (OggFLAC__seekable_stream_decoder_seek_absolute
|
||||
(decoder, seek_sample)) {
|
||||
data.next_frame = seek_sample;
|
||||
|
Loading…
Reference in New Issue
Block a user