From fa1ac8629ae03c152ee85c0a82ed979557e4be00 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 4 Nov 2012 22:46:01 +0000 Subject: Hoepfully fix end trimming, and fix noise on end of audio when resampling. --- src/lib/decoder.cc | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'src/lib/decoder.cc') diff --git a/src/lib/decoder.cc b/src/lib/decoder.cc index 17e26905e..e25a106d2 100644 --- a/src/lib/decoder.cc +++ b/src/lib/decoder.cc @@ -245,16 +245,14 @@ Decoder::process_audio (uint8_t* data, int size) _audio_frames_in + audio->frames() ); - /* Trim start */ if (required_range.first >= this_range.first && required_range.first < this_range.second) { + /* Trim start */ int64_t const shift = this_range.first - required_range.first; audio->move (shift, 0, audio->frames() - shift); audio->set_frames (audio->frames() - shift); - } - - /* Trim end */ - if (required_range.second >= this_range.first && required_range.second < this_range.second) { - audio->set_frames (this_range.first - required_range.second); + } else if (required_range.second >= this_range.first && required_range.second < this_range.second) { + /* Trim end */ + audio->set_frames (required_range.second - this_range.first); } } -- cgit v1.2.3