乐鑫技术交流
直播中

王静

7年用户 1543经验值
私信 关注
[问答]

sd card的写入速度不够如何解决?

我在做的DSP产品,采样率是44100,16BIT,通过i2s采样音频,再输出到i2s。中间进行DSP。为了降低音频延迟,我是128个sample读写一次i2s.

在将音频样本保存的sd card上(WAV格式),遇到写入速度不够的问题。(sd卡用的mmc,40mhz的速度)

如果直接在i2s_read和i2s_write之间调用fwrite, 就会非常卡, 声音也是卡顿的。

没办法,我就开了两个线程, 在i2s 读写之外,另一个线程用xRingbufferReceive去读取i2s线程写入的ringbuffer,然后,等到8192个字节以后,再一次性调用 fwrite ,可是每个几秒,sd卡还是会卡一下,这一次的fwrite延迟高达170多毫秒,我换了很多张sd卡都有类似现象。

请问这个该如何解决?

更多回帖

发帖
×
20
完善资料,
赚取积分