player/CrossFade: add method IsEnabled()

This commit is contained in:
Max Kellermann 2021-10-14 13:41:16 +02:00
parent cf6ca1b0ba
commit ec52b13449
2 changed files with 6 additions and 2 deletions

View File

@ -96,8 +96,8 @@ CrossFadeSettings::Calculate(SignedSongTime total_time,
{
unsigned int chunks = 0;
if (total_time.IsNegative() ||
duration <= FloatDuration::zero() ||
if (!IsEnabled() ||
total_time.IsNegative() ||
duration >= std::chrono::duration_cast<FloatDuration>(total_time) ||
/* we can't crossfade when the audio formats are different */
af != old_format)

View File

@ -39,6 +39,10 @@ struct CrossFadeSettings {
*/
FloatDuration mixramp_delay{-1};
constexpr bool IsEnabled() const noexcept {
return duration.count() > 0;
}
/**
* Calculate how many music pipe chunks should be used for crossfading.
*