使用psf_sndReadFloatFrames(portsf库)读取wave文件

时间:2017-05-21 13:40:35

标签: c audio

我研究声音阅读,我发现我不理解部分

framesread = psf_sndReadFloatFrames(ifd,frame,1);
        for(i=0; i < props.chans; i++ )         
            frame[i] *= ampfac;

buf是一个字节的浮点数。这个值是什么意思?

角θ弧度?这总是只使用一个字节(一个通道)

1 个答案:

答案 0 :(得分:0)

在该声明中,buf是指向浮点数组(的第一个元素)的指针。我知道没有“一个字节的浮点数”。

可能 使用如下:

#define NUM_CHANNELS (2)
#define BUF_LEN (4096)

float buffer[BUF_LEN * NUM_CHANNELS];

...

int frames_read = BUF_LEN; 
while (frames_read == BUF_LEN)
{
    frames_read = psf_sndReadFloatFrames(myfiledesc, buffer, BUF_LEN);
    /* process data in buffer */
}