php抽取mp3声音频率,音频采集与FFT频率分析

我正在做音频信号的采集这一块,在原子STM32F407开发板上做的预演,借用的是录音实验:

1、采样频率设置为48KHz

[mw_shl_code=applescript,true] I2S2_SampleRate_Set(48000); //设置采样率 //16000[/mw_shl_code]

2、FFT

由于FFT采样点数设置为1024,这里采用的是DMA双缓冲接收,因此DMA接收长度设置为512

[mw_shl_code=applescript,true]u8 bufUseFlag1 = 0, bufUseFlag2 = 0;

//录音 I2S_DMA接收中断服务函数.在中断里面写入数据

void rec_i2s_dma_rx_callback(void)

{

u16 bw;

u8 res;

if(rec_sta==0X80)//录音模式

{

if (bufUseFlag1 & bufUseFlag2) {

return ;

}

/* 0:当前目标存储器为存储器 0(使用 DMA_SxM0AR 指针寻址)

1:当前目标存储器为存储器 1(使用 DMA_SxM1AR 指针寻址) */

if(DMA1_Stream3->CR&(1<<19))

{

res=f_write(f_rec,i2srecbuf1,I2S_RX_DMA_BUF_SIZE,(UINT*)&bw);//写入文件

if(res)

{

printf("write error:%d\r\n",res);

}

bufUseFlag1 = 1;

}else

{

res=f_write(f_rec,i2srecbuf2,I2S_RX_DMA_BUF_SIZE,(UINT*)&bw);//写入文件

if(res)

{

printf("write error:%d\r\n",res);

}

bufUseFlag2 = 1;

}

wavsize+=I2S_RX_DMA_BUF_SIZE;

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值