summaryrefslogtreecommitdiffstats
path: root/rate
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2007-02-22 12:32:02 +0100
committerTakashi Iwai <tiwai@suse.de>2007-02-22 12:32:02 +0100
commitee123ac93ea59d11e7d3c48aed9cf88d1a5de431 (patch)
tree075b520ca19bce5aa2badd86550de7dec0ec23dd /rate
parent9481014305ab8f8e1ba07749c0b7f68ec4b99e56 (diff)
Fix wrong implementation of input/output_frames in samplerate plugin
The libsamplerate rate plugin has wrong implementations of input_frames and output_frames callbacks. They have to be swapped. From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Diffstat (limited to 'rate')
-rw-r--r--rate/rate_samplerate.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rate/rate_samplerate.c b/rate/rate_samplerate.c
index af5c9c0..d07e7ce 100644
--- a/rate/rate_samplerate.c
+++ b/rate/rate_samplerate.c
@@ -38,7 +38,7 @@ static snd_pcm_uframes_t input_frames(void *obj, snd_pcm_uframes_t frames)
struct rate_src *rate = obj;
if (frames == 0)
return 0;
- return (snd_pcm_uframes_t)(frames * rate->ratio);
+ return (snd_pcm_uframes_t)(frames / rate->ratio);
}
static snd_pcm_uframes_t output_frames(void *obj, snd_pcm_uframes_t frames)
@@ -46,7 +46,7 @@ static snd_pcm_uframes_t output_frames(void *obj, snd_pcm_uframes_t frames)
struct rate_src *rate = obj;
if (frames == 0)
return 0;
- return (snd_pcm_uframes_t)(frames / rate->ratio);
+ return (snd_pcm_uframes_t)(frames * rate->ratio);
}
static void pcm_src_free(void *obj)