diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2012-05-21 17:12:04 -0400 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2012-05-21 17:12:04 -0400 |
commit | 29cfd29a6cafea88a36212292e7019ab88aa7ed2 (patch) | |
tree | 589046d6de177804a036ce32f5a0bf8732a15b57 /lib | |
parent | 545f41790bb7ea576ee5100436b6d8ca0c175fba (diff) | |
download | rockbox-29cfd29a6cafea88a36212292e7019ab88aa7ed2.tar.gz rockbox-29cfd29a6cafea88a36212292e7019ab88aa7ed2.zip |
Stop timestretch freezing things during format changes.
When it was inactive but enabled, the format change hook was dropping
through to code that it shouldn't execute without it also being active
in processing samples.
Change-Id: Ie7899df0395d3f0d10f2bf2b55ea549dd06749a7
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rbcodec/dsp/tdspeed.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/rbcodec/dsp/tdspeed.c b/lib/rbcodec/dsp/tdspeed.c index 92dfb31bed..6a495bd989 100644 --- a/lib/rbcodec/dsp/tdspeed.c +++ b/lib/rbcodec/dsp/tdspeed.c | |||
@@ -478,7 +478,8 @@ static void tdspeed_process_new_format(struct dsp_proc_entry *this, | |||
478 | struct sample_format *format = &src->format; | 478 | struct sample_format *format = &src->format; |
479 | int channels = format->num_channels; | 479 | int channels = format->num_channels; |
480 | 480 | ||
481 | if (format->codec_frequency != st->samplerate) | 481 | if (format->codec_frequency != st->samplerate || |
482 | !dsp_proc_active(dsp, DSP_PROC_TIMESTRETCH)) | ||
482 | { | 483 | { |
483 | /* relevent parameters are changing - all overlap will be discarded */ | 484 | /* relevent parameters are changing - all overlap will be discarded */ |
484 | st->channels = channels; | 485 | st->channels = channels; |