-1

我正在尝试使用 ShineMP3Encoder 将麦克风输出保存到 mp3 文件中。一切正常,除了当我尝试将采样率设置为每秒 22K 样本时,我得到一个错误。

var mic:Microphone = Microphone.getMicrophone(); 
mic.rate = 22; 


Error #2044: Unhandled error:. text=Invalid samplerate

ShineMP3Encoder 是否有允许的速率列表?

以防万一,这里是我使用 ShineMP3Encoder 的地方:

mp3encoder = new ShineMP3Encoder(wavData);
mp3encoder.start();
4

1 回答 1

0

在 ShineMP3Encoder 源代码中的 main.c 中找到了允许采样率的硬编码值:

static int find_samplerate_index(long freq)
{
    static long mpeg1[3] = {**44100, 48000, 32000**};
    int i;

    for(i=0;i<3;i++)
        if(freq==mpeg1[i]) return i;

    ERROR("Invalid samplerate");
    return -1;
}

由于等于麦克风采样率之一的唯一值是 44100,因此其他采样率将导致错误。

于 2014-06-10T21:45:21.840 回答