ALSAで音楽

更新日:2002-05-06
[インデックスへ]

ALSA(ThinkPad i1620, Vine Linux 2.1.5) 2002-01-18

ALSAのページから

をダウンロードします。

それぞれrpmパッケージを作れるようになっているので、 パッケージを作ってインストールします。

tar Ixvf alsa-driver-0.5.12a.tar.bz2
mv alsa-driver-0.5.12a/ alsa-driver
cd alsa-driver/
./configure
cd utils
./buildrpm
rpm -ivh /usr/src/redhat/RPMS/i386/alsa-driver-0.5.12a-1.i386.rpm 
cd ..
./snddevices

tar Ixvf alsa-lib-0.5.10b.tar.bz2 
mv alsa-lib-0.5.10b alsa-lib
cd alsa-lib
./configure
cd utils
./buildrpm
rpm -ivh /usr/src/redhat/RPMS/i386/alsa-lib-0.5.10b-1.i386.rpm 

tar Ixvf alsa-utils-0.5.10.tar.bz2 
mv alsa-utils-0.5.10 alsa-utils
cd alsa-utils
./configure
cd utils
./buildrpm
rpm -ivh /usr/src/redhat/RPMS/i386/alsa-utils-0.5.10-1.i386.rpm 

あとは、/etc/conf.modules です。 (ThinkPad i1620 のサウンドチップは CS4281 です。)

# ALSA
alias char-major-116 snd
alias snd-card-0 snd-card-cs4281
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
options snd snd_major=116 snd_cards_limit=1 snd_device_mode=0666 snd_device_gid=0 snd_device_uid=0
options snd-card-cs4281 snd_index=0 snd_id=CARD_0 snd_playback_bufsize=128 snd_capture_bufsize=128

手動でALSA driverをロードします。

/etc/rc.d/init.d/alsasound start

alsamixerでMuteの設定を解除して、音量も設定しておきます。 (gmixでも設定できます。)

play /usr/share/sounds/phone.wav

で電話のベル音が聞こえればOKです。 あとは前と比べて安定しているかどうかが問題です。

Ruby で 音楽CD (ThinkPad i1620 Vine Linux 2.1.5)2002-04-20

何を今更という感じもしますが、何となく、音楽CDの再生も Rubyでやってみようということで Ruby CD Player をインストールしてみました。 (動作確認には、ruby 1.7.2 (2002-04-19) [i686-linux] を使っています。)

Ruby CD Player は、ユーザーインターフェースに Ruby/Gtk を利用しています。 そこで、まずは、gnome-ruby をインストールします。

ruby-gnome-all-0.27.tar.gz をgnome-rubyのサイトからダウンロードします。 (Ruby/Gtkなど、個別にダウンロードできるようになっていますが、 面倒なので、ruby-gnome-all-0.27.tar.gzをダウンロードしました。)

tar zxvf ruby-gnome-all-0.27.tar.gz
cd ruby-gnome-all-0.27
ruby extconf.rb
make
make install

次は、Ruby CD Playerのインストールです。

rbcd-0.2.0.tar.gz をダウンロードします。

tar zxvf rbcd-0.2.0.tar.gz
cd rbcd-0.2.0/cdrom
ruby extconf.rb
make
make install

あとは、rbcd.rb を自分で $LOAD_PATH のうちの1つにコピーしておきます。

cp rbcd.rb /usr/local/lib/ruby/site_ruby

でもって、

rbcd-gtk.rb

を起動すれば再生できました。

...ですが、何曲か再生している途中で突然反応が鈍くなりました。 キーボードもマウスの反応も極端に鈍くてどうしようもなくて、強制終了してしまいました。 rbcd-tty.rbだと最後まで何事もなく再生できたので、Ruby/Gtkの方の問題のようです。

音楽 CD を扱う (ThinkPad i1620 Vine Linux 2.1.5) 2002-05-06

Rubyを使わないで音楽CDを再生する方法も私のメモ用に書いておきます。 (普通はこっちの方法を使います。)

再生

Gripを使えばできます。

tar zxvf grip-3.0.0.tar.gz
./configure
make
make install

あとは、grip と起動して再生ボタンを押せばいいだけです。

MP3 ファイルに変換

コマンドラインオプションの指定が面倒なのでメモ。

  1. cdrecord に含まれる cdda2wav を使って、CDの1番目のトラックを wav ファイルとして保存します。 (cdrecord 自体は、Vine Plus の RPMパッケージを使用。)

    cdda2wav -D /dev/cdrom -x -H -t 1 -O wav 01.wav
    
  2. wav ファイルを mp3 に変換

    午後のコーダが有名みたいですが、 私はlame を使っています。

    インストールは例によって

    tar zxvf lame-3.92.tar.gz
    ./configure
    make 
    make install
    

    変換はこんな感じです。

    lame -b 128 -h --tt 'Music Title' --ta 'Artist Name' 01.wav 01.mp3
    

[インデックスへ]