MIDI を再生するアプリケーションの紹介や,CD の音楽を録音,圧縮,そして再生するための方法を解説します.
CD の録音については,CD を直接聞け!という話もありますが,リブレットみたいなモバイルPCでいつでもどこでも再生可能というのも魅力でしょ?(^_^)
CD の録音のところは Linux じゃないとダメですね…他だとどうするのかはちょっと不明です(情報募集中). それから当然 CD の録音はダビングに相当する行為なので,著作権には注意しましょう.
MIDI ファイルを再生するにはソフトウェアプレイヤーの TiMidity を使うのが定番です. (ハードウェアの MIDI 音源を持っている人は,説明無しでも使えてますよね… ^_^;) オリジナルの TiMidity は開発が滞っているようですが,独自に拡張やバグ修正が行われたバージョンが存在するので,現在はそれを利用する方がいいでしょう. ここでの説明もそれを前提にしています.
拡張 TiMidity のパッケージは出雲正尚さんのページから入手します.
日本語のドキュメントがついていますので,とりあえずここでインストールについて説明する必要は無いでしょう. (分からなかったら質問してください ^_^;)
注意点は,実際に TiMidity を利用するには「パッチファイル」と呼ばれる音源ファイルが必要となります. パッチファイルは唯一のものがあるわけではなく,色々な方が独自にまとめられているので,好みに応じて選びます. とりあえずは松本さんのページ,上述の出雲さんのページなどで入手できます. サイズが非常に大きいので,ダイアルアップIPの人は(可能なら)近場の TiMidity ユーザを探した方がいいかも.
使い方は簡単です(^_^).
timidity 〜.mid
ただし,CPUが遅いマシンだとCPUが再生についてきません(T_T). こういう場合は,あきらめて音質を下げましょう. 参考ですが,私のリブレットでは以下のようなオプションを使っています. どうせリブレット付属のスピーカーはしょぼいので,音を気にしても仕方ないという面もありますが….
timidity -Od8M 〜.mid
せっかく MIDI プレイヤーを入れたのですから,Netscape 等でも利用できるようにしたいですよね.
ですが,単にヘルパーアプリケーションに追加しただけでは,バックグラウンドに音楽を流すページでは機能してくれません. そこで,TiMidity をプラグインとして利用できるようにするパッケージ(JiveAudio for Linux)をインストールします.
まずHypercore さんのホームページよりjiveaudio-1.2.1-bin.tar.gz を取得し,その内容(共有ライブラリ)を ~/.netscape/plugins ディレクトリに展開します.
それから,このプラグインは playmidi (という MIDI プレイヤー)を呼び出すようになっているため,この名前のシェルスクリプトを間に噛ましてやります. ついでにオプションもこのスクリプト内で指定しておきましょう.
/usr/local/bin/playmidi:
#!/bin/sh exec /usr/local/bin/timidity -Od8M $@
CD の音楽を録音するには cdda2wav を使います. 使い方は簡単ですが,出力が Windows の WAV ファイルなのでサイズがとても大きいです. 具体的には,1曲あたり約50Mバイトは見込まなければなりません.
ディスク貧乏の私はさすがにこれでは辛いので,録音した後は MPEG 圧縮をしています. (MPEG というと普通映像だけを考えがちですが,音声用のフォーマットもあります.) 音質をほとんど劣化させることなく,サイズを1/10程度まで小さくできます. フリーの圧縮ツールは見つからないので,ここではシェアウェアの l3enc を使います. (とりあえず30日間の試用ができます.)
MPEG 音声を再生するには,mpg123 というフリーソフトウェアを使います.
まずはファイルを入手します.
インストールはいずれも簡単です. cdda2wav, mpg123 は一般的な手順でインストールできますし,l3enc は展開したバイナリを適当な場所に置くだけです.
l3enc のビットレートは簡単に言うと圧縮の品質です. 再生するマシンが十分高速なら 112000 (ほぼCD音質)を指定します. 私のリブレット(P5-75MHz, メモリ32M)だとこの音質では再生が間に合わないので,56000 を使っています.
ビットレート112000 で圧縮しておいて,再生のときに音質を落としても大丈夫なのですが,ビットレートが小さいほうが当然ファイルサイズも小さいです. それから MPEG サウンドのファイル名は `〜.mp3' がつくが普通です. `3'が付くのは,この音声ファイルの正式名称が「MPEG レイヤ 3 音声」というものだからです. (レイヤ1, 2 を使うことはまず無いと思うので説明はパスします.)
再生については特に説明する点はありません. ただし TiMidity の場合と同様,遅いマシンでビットレートの高いファイルを再生しようとすると CPU が付いてこれません. このような場合は,やっぱり
mpg123 -2 〜.mp3
のようにして音質を下げます.