从音频CD中提取一个声道(左声道或右声道)的最快方法是什么?

我有一张音频CD,显然是立体声的。我想要得到每个CD曲目中仅包含左(或右)声道的单声道mp3或wav文件。
最快、最简单的方法是什么?
4个回答

你确实可以使用命令行音频处理工具sox来完成这个操作。为了从输入文件中选择单个声道(为了演示目的,我使用了一个波形文件)并将其写入新的波形文件,可以使用remix效果。
sox stereo_inputfile.wav leftchannel.wav remix 1
sox stereo_inputfile.wav rightchannel.wav remix 2

如果你想了解更多信息,这个网站列举了许多实际示例,展示了如何使用sox完成各种任务。

这里有一个针对一个文件夹中多个文件的bash解决方案。

  1. 将所有文件放入一个文件夹中,例如下面的示例中的"/run/dir/*"
  2. 在dir的上一级目录中创建两个文件夹,例如"/run/l_channel/"和"/run/r_channel/"

要将一个文件夹中的所有文件拆分到左声道和右声道的其他文件夹中,可以按照以下步骤进行:

for i in /run/dir/*
do 
    sox "$i" ""/run/l_channel/"$(basename "$i")" remix 1
    sox "$i" ""/run/r_channel/"$(basename "$i")" remix 2
done

注意:我在Manjaro Linux下成功尝试过这个方法,但很可能在Ubuntu下也适用。

ffmpeg永远是你的好朋友。

立体声 -> 单声道,使用左声道

ffmpeg -i input.mp3 -filter:a 'pan=mono|FC=FL' output.mp3

立体声 -> 单声道,右声道(只是将 FL 替换为 FR
ffmpeg -i input.mp3 -filter:a 'pan=mono|FC=FR' output.mp3

详细信息请参阅pan - 音频滤镜 - FFmpeg滤镜文档

使用Audacity。使用任何你喜欢的程序从CD中提取/复制音频文件。然后在Audacity中导入立体声音频文件。使用位于音轨左侧的“分割立体声音轨”音轨控制面板,将其拆分为两个独立的音轨。然后对每个音轨再次打开音轨控制面板,并选择单声道,将每个单声道音轨转换为单声道。

谢谢你的回答。我已经知道如何使用Ardour分割立体声音轨,但我需要一种更自动化的方法。我需要为50多个音轨做这个,所以... :) 我相信一定有一种方法,也许可以用sox或类似的东西... - ciacnorris
好的。请在你的问题中添加这些参数。这对其他遇到类似问题的人会很有帮助。 - taz