8.3. MP3 オーディオ

この節では、FreeBSD で利用できる MP3 プレイヤや、オーディオ CD トラックを吸い出す方法、 および MP3 のエンコード、 デコードの方法について説明します。

8.3.1. MP3 プレイヤ

XMMS は 人気のあるグラフィカルな MP3 プレイヤです。 XMMS のインタフェースは Nullsoft の Winamp とほとんど同一なので、Winamp のスキンを使うことができます。 XMMS はネイティブプラグインにも対応しています。

XMMSmultimedia/xmms の port または package からインストールできます。

XMMS のプレイリスト、 グラフィックイコライザそしてその他のインタフェースは直感的です。 Winamp を使いなれている人は簡単に XMMS を使えるでしょう。

audio/mpg123 port は代替となる コマンドライン上の MP3 プレイヤです。

mpg123 はサウンドデバイスと MP3 ファイルをコマンドラインから指定することで実行できます。 オーディオデバイスが /dev/dsp1.0MP3 ファイルが Foobar-GreatestHits.mp3 とすると、ファイルを再生するには、次のように実行してください。

# mpg123 -a /dev/dsp1.0 Foobar-GreatestHits.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!





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

8.3.2. CD 音声トラックの抽出

CD 全体または CD トラックを MP3 に変換する前に、CD 上のオーディオデータをハードディスク上に抽出する必要があります。 これは raw CD Digital Audio (CDDA) データを WAV ファイルにコピーすることで行われます。

sysutils/cdrtools スイートからインストールされる cdda2wav ツールは CD からオーディオデータを抽出したり、 情報を関係づけるのに使われます。

CD をドライブにいれて次のコマンドを root 権限で実行すると、 CD 全体を (トラックごとに) 個々の WAV ファイルに抽出できます。

# cdda2wav -D 0,1,0 -B

-D 0,1,0 は SCSI デバイス 0,1,0 を表します。 これは cdrecord -scanbus の出力に一致します。

cdda2wav は ATAPI (IDE) CDROM ドライブに対応しています。 IDE ドライブから抽出するには、 SCSI ユニット番号をデバイス名に置き換えて指定します。 たとえば IDE ドライブから七番目のトラックを抽出するには、 次のようにします。

# cdda2wav -D /dev/acd0 -t 7

個々のトラックを抽出するには、 次のように -t を使用します。

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

上記の例はオーディオ CDROM の七番目のトラックを抽出します。 範囲を指定して、 一番目から七番目のトラックまで抽出したい場合、 次のようにします。

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

dd(1)「オーディオ CD の複製」 で説明されているように ATAPI ドライブ上のオーディオトラックを展開するのに使われます。

8.3.3. MP3 のエンコード

lame は、 ポピュラーな MP3 エンコーダです。 audio/lame port からインストールできます。 ライセンスの制限により、package は利用できません。

次のコマンドを実行すると、抽出した WAV ファイル audio01.wav を使って audio01.mp3 に変換します。

# lame -h -b 128 \
--tt "曲名" \
--ta "アーティスト名" \
--tl "アルバム名" \
--ty "" \
--tc "コメント" \
--tg "ジャンル" \
audio01.wav audio01.mp3

128 kbits が MP3 の標準のビットレートです。 160 kbits または 192 kbits のビットレートは、 さらに高音質を提供します。 ビットレートが高くなるにつれて作成される MP3 ファイルは多くのディスク領域を消費します。 -h オプションを指定すると 低速高品質 モードとなります。 --t ではじまるオプションは ID3 タグを設定します。 このタグにはたいてい曲の情報が含まれており、 MP3 ファイルに格納されます。 Lame のマニュアルを参照すれば、 他のエンコーディングのオプションが見つかるでしょう。

8.3.4. MP3 のデコード

MP3 からオーディオ CD を作成するには、 まず非圧縮 WAV 形式に変換しなければなりません。 XMMSmpg123 の両方が MP3 から非圧縮ファイル形式への出力に対応しています。

XMMS でディスクへ書き出す方法は次の通りです。

  1. XMMS を起動します。

  2. 右クリックで XMMS メニューを表示します。

  3. Options から Preferences を選択します。

  4. Output Plugin を Disk Writer Plugin に変更します。

  5. Configure を押します。

  6. 非圧縮ファイルを書き出すディレクトリを入力、 または選択します。

  7. 普段通り XMMSMP3 ファイルを読み込みます。 音量は 100% でイコライザの設定はオフにします。

  8. Play を押します。 XMMSMP3 を再生しているかのように表示しますが、 音声はきこえません。 実際には MP3 をファイルに出力しています。

  9. 終了したら、再び MP3 を聴けるように Output Plugin を以前のように元に戻すのを忘れないでください。

mpg123 で標準出力へ書き出す方法は次の通りです。

  • mpg123 -s audio01.mp3 > audio01.pcm を実行します。

XMMSWAV 形式でファイルに書き出しますが、 mpg123MP3 を raw PCM オーディオデータに変換します。 両形式は cdrecord を使ってオーディオ CD を作成するのに利用できます。 burncd(8) を使う場合は raw Pulse-Code Modulation (PCM) が必要です。 WAV ファイルを使用する場合、 それぞれのトラックの先頭に小さなノイズが入るのに気づくでしょう。 これは WAV ファイルのヘッダ情報です。 audio/sox の port または package からインストールできる SoX を使うと簡単にヘッダ情報を削除できます。

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

FreeBSD での CD 作成の詳しい情報は 「光メディア (CD & DVD) の作成と使用」 を参照してください。

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、 ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。

本文書に関する質問については、 <doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。