diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/audio_format.h | 5 | ||||
-rw-r--r-- | src/outputBuffer_xfade.h | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/audio_format.h b/src/audio_format.h index ba22b3bf6..a6e97e046 100644 --- a/src/audio_format.h +++ b/src/audio_format.h @@ -27,6 +27,11 @@ typedef struct _AudioFormat { volatile mpd_sint8 bits; } AudioFormat; +static inline double audio_format_time_to_size(const AudioFormat * af) +{ + return af->sampleRate * af->bits * af->channels / 8.0; +} + static inline double audioFormatSizeToTime(const AudioFormat * af) { return 8.0 / af->bits / af->channels / af->sampleRate; diff --git a/src/outputBuffer_xfade.h b/src/outputBuffer_xfade.h index 50fb062ce..70e490c65 100644 --- a/src/outputBuffer_xfade.h +++ b/src/outputBuffer_xfade.h @@ -29,7 +29,7 @@ static size_t calculate_xfade_chunks(struct rbvec vec[2]) assert(af->channels > 0); assert(af->sampleRate > 0); - chunks = af->sampleRate * af->bits * af->channels / 8.0 / CHUNK_SIZE; + chunks = audio_format_time_to_size(af) / CHUNK_SIZE; chunks = chunks * (xfade_time + 0.5); assert(chunks); |