aboutsummaryrefslogtreecommitdiffstats
path: root/src/CrossFade.cxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2014-08-29 23:41:34 +0200
committerMax Kellermann <max@duempel.org>2014-08-29 23:41:34 +0200
commit7c567e3cbd2cc136ee029cf9300f73eb8f1118c6 (patch)
tree3277e8a1640f664de0e4a06d35146ce8c5b3ce68 /src/CrossFade.cxx
parent58352ea69d3e40bd3c91eacc7bbd48f58d5f2c8a (diff)
downloadmpd-7c567e3cbd2cc136ee029cf9300f73eb8f1118c6.tar.gz
mpd-7c567e3cbd2cc136ee029cf9300f73eb8f1118c6.tar.xz
mpd-7c567e3cbd2cc136ee029cf9300f73eb8f1118c6.zip
CrossFade: pass total_time as SignedSongTime instance
Diffstat (limited to 'src/CrossFade.cxx')
-rw-r--r--src/CrossFade.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/CrossFade.cxx b/src/CrossFade.cxx
index bb585db5a..e3cc95b0d 100644
--- a/src/CrossFade.cxx
+++ b/src/CrossFade.cxx
@@ -19,6 +19,7 @@
#include "config.h"
#include "CrossFade.hxx"
+#include "Chrono.hxx"
#include "MusicChunk.hxx"
#include "AudioFormat.hxx"
#include "util/NumberParser.hxx"
@@ -85,7 +86,7 @@ mixramp_interpolate(const char *ramp_list, float required_db)
}
unsigned
-CrossFadeSettings::Calculate(float total_time,
+CrossFadeSettings::Calculate(SignedSongTime total_time,
float replay_gain_db, float replay_gain_prev_db,
const char *mixramp_start, const char *mixramp_prev_end,
const AudioFormat af,
@@ -95,7 +96,8 @@ CrossFadeSettings::Calculate(float total_time,
unsigned int chunks = 0;
float chunks_f;
- if (duration < 0 || duration >= total_time ||
+ if (total_time.IsNegative() ||
+ duration < 0 || duration >= total_time.ToDoubleS() ||
/* we can't crossfade when the audio formats are different */
af != old_format)
return 0;