7.3. MP3音乐

Contributed by Chern Lee.

本节介绍一些适用于 FreeBSD 的MP3播放器、如何翻录音频CD轨道以及如何对MP3进行编码和解码。

7.3.1. MP3播放器

一个流行的图形 MP3 播放器是 Audacious。它支持 Winamp 皮肤和其他插件。界面直观,带有播放列表,图形均衡器等。那些熟悉 Winamp 的人会发现 Audacious 很简单易用。在FreeBSD上,可以从multimedia/audacious port 或 package 安装Audacious。Audacious是XMMS的后代。

audio/mpg123 package 或 port 提供了命令行 MP3 播放器。安装后指定要在命令行上播放的 MP3 文件。如果系统有多个音频设备,还可以指定声音设备:

# mpg123 -a /dev/dsp1.0 Foobar-GreatestHits.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
        version 1.18.1; written and copyright by Michael Hipp and others
        free software (LGPL) without any warranty but with best wishes

Playing MPEG stream from Foobar-GreatestHits.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo

FreeBSD Port 中还提供了其他 MP3 播放器。

7.3.2. 抓取 CD 音轨

在对 CD 或 CD 音轨编码成MP3之前,CD 上的音频数据应先抓到硬盘里。 这个可以通过复制原始的 CDDA(CD 数字音频)数据成为波形(WAV)文件。

工具 cdda2wavsysutils/cdrtools 套件的一部份,可用来从CD中获取音频及其相关信息。

把 CD 放到光驱里,下面的命令可以完成(作为 root用户) 把整张 CD 分割成单个(每个音轨)的WAV文件:

# cdda2wav -D 0,1,0 -B

本例中 -D 0,1,0指示SCSI设备0,1,0代表要抓取的 CD 。使用 cdrecord -scanbus 来确定系统的正确设备参数。

抓取单轨,要使用选项 -t,如下所示:

# cdda2wav -D 0,1,0 -t 7

这个实例用于抓取第七个音轨。要抓取一定范围的音轨,如从1到7:

# cdda2wav -D 0,1,0 -t 1+7

要从 ATAPI (IDE) CDROM 驱动器中翻录,请指定设备名称以代替 SCSI 单元号。 例如,要从IDE驱动器中翻录轨道7:

# cdda2wav -D /dev/acd0 -t 7

利用dd(1)也可以从ATAPI光驱中抓取音轨,从 第 17.5.5 节 “复制音乐CD 可以了解更多。

7.3.3. MP3编码与译码

现今,可选的 MP3 编码器是 LameLame 可以从ports树里的 audio/lame 处找到,由于专利问题,不可从 pkg 中安装此软件。

利用抓取的WAV文件,下边的命令就可以把 audio01.wav 转换成 audio01.mp3

# lame -h -b 128 --tt "Foo Song Title" --ta "FooBar Artist" --tl "FooBar Album" \
--ty "2014" --tc "Ripped and encoded by Foo" --tg "Genre" audio01.wav audio01.mp3

128 kbits 是标准的MP3位率(bitrate)。 许多人可能喜欢更高的品质例如 160 或 192。 更高的位率, 会使 MP3 占用更多的磁盘空间--但音质会更高。选项 -h 控制 高品质但低速度 (higher quality but a little slower) 模式的开关。 选项 --t 表示把 ID3 标签--通常包含了歌曲的信息, 植入到MP3文件里。 其它的编码选项可以查询 lame 的联机手册。

为了从 MP3 刻录到音频 CD , 必须首先将其转换为非压缩文件格式。 XMMS 可用于转换为 WAV 格式, 而 mpg123 可用于转换为原始脉冲代码调制 ( PCM ) 音频数据格式。

要使用mpg123转换audio01.mp3, 请指定 PCM 文件的名称:

# mpg123 -s audio01.mp3 > audio01.pcm

使用XMMSMP3 转换成 WAV,步骤如下:

过程 7.1. 在XMMS中转换为 WAV
  1. 启动XMMS

  2. 在窗口里右击鼠标,弹出 XMMS 菜单。

  3. 选项(Options) 里选择 设定(Preference)

  4. 改变输出插件成 写磁盘插件(Disk Writer Plugin)

  5. 配置(Configure)

  6. 输入或选择一个目录用于存放解压的文件。

  7. 把MP3文件装入到 XMMS 里边,把音量调节到 100% 并且关掉 EQ 设定。

  8. 按一下 播放(Play) ── XMMS 如同在播放mp3一样,只是听不到声音。 实际上是在播放mp3到一个文件里。

  9. 完成后,请务必将默认输出插件设置回以前,以便再次收听MP3

cdrecord可以使用WAVPCM格式。当使用WAV文件时,每个音轨的开头会有一个小的嘀嗒声。这个声音是WAV文件的标题。可以使用 audio/sox来移除头:

% sox -t wav -r 44100 -s -w -c 2 track.wav track.raw

阅读 第 17.5 节 “创建和使用 CD” 这部份可以了解到更多在 FreeBSD 里刻盘的信息。

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.