dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

Rockbox mail archive

Subject: Re: pcm_set_frequency is ignored

Re: pcm_set_frequency is ignored

From: Joseph Garvin <>
Date: Sun, 31 Aug 2008 11:42:33 -0400

On Sun, Aug 31, 2008 at 3:05 AM, Magnus Holmgren <> wrote:

> Joseph Garvin wrote:
> To shrink my plugin size I'm trying to convert my sound samples to be
>> 22050hz instead of 44100. But when I do this the sound always plays too fast
>> like a chipmunk. I'm calling pcm_set_frequency(22050) but no matter what
>> number I give it (I tested crazy values like 100) I get the same result. It
>> always tries to play at 44100hz. I'm trying on the Sansa e200 simulator. Is
>> this a limitation of the simulator or maybe of the e200? If so it'd be nice
>> to get some sort of console warning.
> pcm_set_frequency sets the frequency of the hardware, but it is usually
> quite limited in what frequencies it supports. Try dsp_configure, using
> DSP_SWITCH_FREQUENCY, to set the frequency. See the mpegplayer audio thread
> for an example.

I tried:

    struct dsp_config* dsp = (struct dsp_config *)rb->dsp_configure(NULL,

    rb->dsp_configure(dsp, DSP_SWITCH_FREQUENCY, 22050);

But this still had no effect, at least in the simulator. Do I need to use
dsp_process somehow? It's unclear to me how it works. I'm still playing the
sound with pcm_play_data.
Received on 2008-08-31

Page was last modified "Jan 10 2012" The Rockbox Crew