快速从音频文件中删除音频通道

Posted

技术标签:

【中文标题】快速从音频文件中删除音频通道【英文标题】:Removing audio channels from audio file swift 【发布时间】:2019-02-04 12:58:26 【问题描述】:

我需要从音频文件中删除特定的音频通道,并将其保存为单声道文件。我发现可以使用AVAudioEngineAudioKit 来实现,但我没有找到任何有用的示例。

如果音频文件是 5.1 声道,我需要什么?我想分离所有通道,删除特定通道,如通道 2、3 和 4,合并剩余通道,然后制作单声道音频文件并保存。

【问题讨论】:

【参考方案1】:

我没有找到任何好的方法,但我如何实现这一点是通过将音频转换为 wav 文件,然后我分离每个通道样本,仅组合我需要的通道的数据,然后转换该文件的多通道 wav 文件。

我使用链接http://soundfile.sapp.org/doc/WaveFormat/ 中的指导来识别波形文件头并分离每个通道样本。

然后我使用 AVAssetReader 和 AVAssetWriter 将多声道 wav 文件转换为单声道。

【讨论】:

以上是关于快速从音频文件中删除音频通道的主要内容,如果未能解决你的问题,请参考以下文章

从线性 PCM 中提取音频通道

如何使用 QAudioInput 从两个通道捕获音频信号

Matlab 音频处理求教

1 个文件中的 5 个独立音频通道

ffmpeg:如何将音频波文件循环到没有任何音频通道的视频中

如何从外部音频接口访问带有核心音频的各个通道