Linux 翻录和编码音频 CD 命令
要在 Linux 操作系统下翻录音频 CD,您需要使用以下命令行工具:
- cdparanoia – 一款音频 CD 读取和提取实用程序,其中包括额外的数据验证功能。
- lame – LAME 是一个可用于创建压缩音频文件(编码)的程序,即创建 mp3 文件,以便流行的 MP3 播放器可以播放音频文件。
- oggenc – oggenc 是一个将音频编码为 Ogg Vorbis 格式的程序。
- ripperx 和 K3b——用于翻录和编码音频 CD 的 GUI 工具。
本页介绍如何使用 GUI 和 CLI 方法在 Linux 操作系统上翻录音频 CD。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 是的 |
要求 | Linux 终端 |
类别 | 包管理器 |
操作系统兼容性 | Alma • Alpine • Arch • Debian • Fedora • Linux • Mint • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu |
预计阅读时间 | 8 分钟 |
Linux 翻录和编码音频 CD
要翻录音频 CD,首先翻录 CD(复制音频 CD 内容音轨)并将其存储为原始格式的文件(如 track01.wav、track02.wav)。但是,.wav(原始格式)文件很大。您需要通过将 .wav 转换并压缩为 .mp3 或 .ogg 有损格式来节省磁盘空间。这是使用 lame 或 oggenc 编码器完成的。CD 翻录器旨在将原始数字音频从光盘提取到文件中。
默认情况下,您的系统可能未安装cdparanoia、lame、oggenc、ripperx 和 k3b命令。因此,请使用Alpine Linux 上的apk 命令、 RHEL & co 上的dnf 命令/ yum 命令、Debian、Ubuntu & co 上的apt 命令/ apt-get 命令、SUSE/OpenSUSE 上的 zypper 命令、Arch Linux 上的 pacman 命令来安装 cdparanoia、lame、oggenc、ripperx 和 k3b。
获取 Track 和 CDDA 信息
键入以下命令以获取有关驱动器和音频 CD 的详细信息:
$ cdparanoia -vsQ
示例输出:
cdparanoia III release 10.2 (September 11, 2008) Using cdda library version: 10.2 Using paranoia library version: 10.2 Checking /dev/cdrom for cdrom... Testing /dev/cdrom for SCSI/MMC interface SG_IO device: /dev/sr0 CDROM model sensed sensed: TSSTcorp CD/DVDW SH-S182D SB04 Checking for SCSI emulation... Drive is ATAPI (using SG_IO host adaptor emulation) Checking for MMC style command set... Drive is MMC style DMA scatter/gather table entries: 1 table entry size: 131072 bytes maximum theoretical transfer: 55 sectors Setting default read size to 27 sectors (63504 bytes). Verifying CDDA command set... Expected command set reads OK. Attempting to set cdrom to full speed... drive returned OK. Table of contents (audio tracks only): track length begin copy pre ch =========================================================== 1. 15485 [03:26.35] 0 [00:00.00] no no 2 2. 20316 [04:30.66] 15485 [03:26.35] no no 2 3. 23579 [05:14.29] 35801 [07:57.26] no no 2 4. 17344 [03:51.19] 59380 [13:11.55] no no 2 5. 13928 [03:05.53] 76724 [17:02.74] no no 2 6. 14954 [03:19.29] 90652 [20:08.52] no no 2 7. 18415 [04:05.40] 105606 [23:28.06] no no 2 8. 13386 [02:58.36] 124021 [27:33.46] no no 2 9. 17697 [03:55.72] 137407 [30:32.07] no no 2 10. 22469 [04:59.44] 155104 [34:28.04] no no 2 11. 16163 [03:35.38] 177573 [39:27.48] no no 2 12. 15423 [03:25.48] 193736 [43:03.11] no no 2 13. 18116 [04:01.41] 209159 [46:28.59] no no 2 14. 20106 [04:28.06] 227275 [50:30.25] no no 2 15. 18373 [04:04.73] 247381 [54:58.31] no no 2 16. 26250 [05:50.00] 265754 [59:03.29] no no 2 17. 15166 [03:22.16] 292004 [64:53.29] no no 2 18. 18664 [04:08.64] 307170 [68:15.45] no no 2 TOTAL 325834 [72:24.34] (audio only)
步骤 1 – 翻录音频 CD 并创建 .WAV 音轨文件
打开 shell 提示符并输入以下命令来翻录所有曲目,即提取整个光盘,将每个曲目放在单独的文件中,输入:
$ cdparanoia -B
示例输出:
cdparanoia III release 10.2 (September 11, 2008) Ripping from sector 0 (track 1 [0:00.00]) to sector 325833 (track 18 [4:08.63]) outputting to track01.cdda.wav (== PROGRESS == [ | 015484 00 ] == :^D * ==) outputting to track02.cdda.wav (== PROGRESS == [ | 035800 00 ] == :^D * ==) ..... ... ... outputting to track18.cdda.wav (== PROGRESS == [ | 325833 00 ] == :^D * ==) Done.
您可以在 ls 命令的帮助下查看所有 .wav 文件:
$ ls
示例输出:
track01.cdda.wav track04.cdda.wav track07.cdda.wav track10.cdda.wav track13.cdda.wav track16.cdda.wav track02.cdda.wav track05.cdda.wav track08.cdda.wav track11.cdda.wav track14.cdda.wav track17.cdda.wav track03.cdda.wav track06.cdda.wav track09.cdda.wav track12.cdda.wav track15.cdda.wav track18.cdda.wav
默认输出格式为 .wav。您可以根据是否使用选项 -a、-r 或 -R 来设置为 .aift 或 .raw:
要提取最多 5 个音轨(包括每个音轨),并将每个音轨放在单独的文件中,请输入:
要仅提取前两个音轨,请键入以下命令,输入:
示例输出:
$ cdparanoia -aB # use .aift format
$ cdparanoia -rB # use .raw format
$ cdparanoia -B -- -5
$ cdparanoia -B -- 1-2
cdparanoia III release 10.2 (September 11, 2008) Ripping from sector 0 (track 1 [0:00.00]) to sector 35800 (track 2 [4:30.65]) outputting to track01.cdda.wav (== PROGRESS == [ | 015484 00 ] == :^D * ==) outputting to track02.cdda.wav (== PROGRESS == [ | 035800 00 ] == :^D * ==) Done.
最后,你可以从轨道 1 中提取时间 0:13.13 到 1:13.00,输入:
$ cdparanoia "1[:13.13]-1[1:13]"
第 2 步 - 编码为 .MP3 格式
要创建 mp3 音频文件,请输入:
$ lame track01.cdda.wav
示例输出:
lame -m Mode -b rate input.wav
其中 Mode 可以是以下任一种:
- s:简单立体声
- j:联合立体声
- f:强制 MS 立体声
- d:双单声道
- m:单声道
设置比特率
MPEG-1 音频层 III 标准中指定了几种比特率:32、40、48、56、64、80、96、112、128、160、192、224、256 和 320 kbit/s,可用的采样频率为 32、44.1 和 48 kHz。MPEG-2 音频层 III 中定义了其他扩展:比特率为 8、16、24、32、40、48、56、64、80、96、112、128、144、160 kbit/s,采样频率为 16、22.05 和 24 kHz。-b 选项可用于如下设置 160 比特率:您可以使用以下 bash for loop 命令来编码
$ lame -b 160 track01.cdda.wav
所有音轨:
$ for t in track{01..18}*.wav; do lame $t; done
步骤 3 – 编码为 .OGG 格式
Vorbis 是 Xiph.Org 基金会领导的免费软件/开源项目。该项目为有损音频压缩制定了音频格式规范和软件实现(编解码器):
$ oggenc track01.cdda.wav
示例输出:
$ oggenc track01.cdda.wav -o output01.ogg
设置并编码比特率为 500 kbit/s,输入:
$ oggenc -b 500 track01.cdda.wav -o output01.ogg
示例输出:
Encoding "track01.cdda.wav" to "output.ogg" at approximate bitrate 500 kbps (VBR encoding enabled) [100.0%] [ 0m00s remaining] | Done encoding file "output.ogg" File length: 3m 26.0s Elapsed time: 0m 08.1s Rate: 25.6000 Average bitrate: 396.2 kb/s
您可以指定最大和平均比特率,并强制执行这些:
$ oggenc input.wav --managed -b 128 -M 160 -o output.ogg
设置质量而不是比特率(设置为非常高质量模式):
$ oggenc input.wav -q 6 -o output.ogg
请注意,编码质量设置在 -1(非常低)和 10(非常高)之间。在编码之前进行下采样和下混音到 11 kHz 单声道:
$ oggenc --resample 11025 --downmix input.wav -q 1 -o output.ogg
您可以添加一些有关曲目的信息:
$ oggenc input.wav -t "Can I Trouch You...There?" -a "M.Bolton" -l "Instrumental Love Songs" -c "Other Info Here"
向 GUI 工具问好
您可以使用各种 GUI 工具在 Linux 操作系统下翻录和编码音频 CD 曲目。
开膛手X
ripperX 是用于翻录和 OGG/FLAC/MP3 编码 CD 曲目的图形化(GTK 即 Gnome)前端。要安装它,请输入apt 命令或apt-get 命令:
示例输出:
$ sudo apt-get install ripperx
$ ripperx
k3b
K3b 可让您刻录 CD 和 DVD。它还允许您翻录音频 CD。要安装 k3b,请输入:
$ sudo yum install k3b # redhat and friends via RPMForge k3b-extra repo
或
$ sudo apt-get install k3b
接下来,启动 K3b,然后单击“工具” > “翻录音频 CD…”(或单击“开始翻录”按钮)
图 06:K3b 设置音频 CD 翻录选项
进一步阅读:
- Wikpedia 有关红皮书(音频光盘标准)、OGG Vorbis和MP3音频格式的文章。
- cdparanoia:主页。
- lame:编码器主页。
- vorbis-tools: ogg* 编码器主页。