summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2012-05-21 17:12:04 -0400
committerMichael Sevakis <jethead71@rockbox.org>2012-05-21 17:12:04 -0400
commit29cfd29a6cafea88a36212292e7019ab88aa7ed2 (patch)
tree589046d6de177804a036ce32f5a0bf8732a15b57
parent545f41790bb7ea576ee5100436b6d8ca0c175fba (diff)
downloadrockbox-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
-rw-r--r--lib/rbcodec/dsp/tdspeed.c3
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;