コマンドラインからの再生2010/02/04 22:30

 あるケーブル屋さんのwebにUbuntuでコマンドラインからの音楽再生についてのコメントがあった。端末からaplay(alsa-utilsに含まれている)というコマンドでの再生らしい。

 wavファイルをRamdiskにコピーしてからの再生。コマンドは

aplay /mnt/ramdisk/Track1.wav

 このように打ってみる。

 これはCD直接再生よりも良い感じだ。奥行きが良く出る。何曲か続けて再生する時には;で連結すれば良いようだ。

aplay /mnt/ramdisk/Track1.wav;aplay /mnt/ramdisk/Track2.wav

 連続再生は少し面倒だが音はかなり良い。

コマンドラインからのCD再生2010/02/08 22:41

 コマンドラインからのwav再生は出来るようになったのだが、CDの直接再生をコマンドラインからやってみたいと考えた。しかしなかなかうまく行かない。そこで視点を変えた。リッピングは出来るのだからリッピングソフトをうまく使えないかと。

 コマンドラインからのリッピングはcdparanoiaだ。これで吸い出しながらaplayに送れば何とかなるのではないか。最近linuxの本を買って暇な時は眺めているのだがパイプ(|)というものがある。ただの縦線一本なのだが、これはその名の通りデータのパイプらしい。これで繋いでやれば吸い出したデータを直接送れそうな気がする。

 cdparanoia 1- - | aplay

このように入力してみた。すると音は出る!しかし途切れるのだ。これでは使えない。何かバッファみたいなものは無いのかなと探してみたらそのまんま buffer というものがあるらしい。
ということでインストールして途中にかましてみる。

 cdparanoia 1- - | buffer | aplay

 おお、だいぶ良くなってきた。しかしまだ途切れる部分がある。では少しCDの読み取り速度を上げてみる。

 cdparanoia -S2 1- - | buffer | aplay

あまり変わらないので -S2 のところをどんどん上げてみた。10まで上げると途切れる事はなくなった。

 cdparanoia -S10 1- - | buffer | aplay

この状態だと全く問題なく、CD1枚がとても良い音で再生される。Ramdisk上からのwav再生よりも好ましい。

cdparanoia と aplay2010/02/22 22:05

 先日cdparanoiaからbufferを通ってaplayへ送る事を思いついたのだが、このままではCDドライブの回転音が若干するので少し気になる。何しろ10倍での読み込みだ。こうしないと音飛びが起こってしまい聴けたものではない。

 そこで読み込みの回転数を落としてみる事を考えた。単純にバッファを増やせば良い訳だ。
 読み込みが2倍か4倍なら回転音は気にならない。ここでは2倍とした。あとは音が飛ばない程度にバッファを増やしていく。

 aplayのオプションでバッファの設定がある。aplay -B###
これを使えば途中の「buffer」は無くても大丈夫のようだ。

 cdparanoia -S2 1- - | aplay -B100000000

ここまでバッファを増やすと音飛びはしない。それにしてもかなりの量だ。タイムラグもかなりあるので相当溜めてから再生をしているようだ。

 厳密に言えばこれはCDの直接再生ではないかもしれない。リッピングしながらメモリ上にあるデータを再生している訳だから。