在音频处理中,说下面的库(在我的情况下为PortAudio)为我提供了一个二进制文件,它代表从麦克风捕获的几秒钟的音频,并且在捕获时,它使用的采样率为{{1 }},基础库告诉我该二进制文件包含sr
帧数,我可以安全地假定二进制文件表示的音频持续时间为nf
秒吗?
换句话说,如果我使用nf / sr
的采样率,我是否可以安全地假设我将每秒获得sr
个采样?硬件是否会由于某些因素(例如限制功耗等)而丢弃一些样本?
答案 0 :(得分:1)
您对音频持续时间为nf / sr
采样的假设是正确的。请注意,这假设您的播放的采样率也是sr
。不一定是这种情况。
大多数音频驱动程序支持有限的一组采样输出(44.1 kHZ,48 kHz,96kHz等)。因此,如果说您的回放采样率为psr
,则实际持续时间将为nf / (psr / sr)
秒。
请注意,大多数音频驱动程序通常不会丢弃采样,这会导致不良的音频点击,而只是具有更高的延迟,可以将计算释放给其他任务。
请注意,PortAudio并不用于播放或录制FAQ中指定的文件。