オーディオ&ミュージック

MP3 ( MPEG Audio Layer3 )

PCで音楽を楽しむのに定番となったMP3関係のソフトについて。
すべてportsになっています。( ports/audio/ )
  1. cdd  ( CD audio track 吸い出し )

  2. 音楽CDからデータを吸い出すソフトです。ATAPIのCD-ROMドライブにも
    対応しています。使い方は
    cdd  -t 24  ./ 
    これで、24番目のトラックがカレントディレクトリに track-24.cda という
    ファイル名で保存されます。オーディオ形式はraw形式です。
    4.1-RELEASE では /usr/include/sys/scsiio.h が無いためコンパイルができません。
    古いバージョンからこのヘッダファイルをもってきてコンパイルするか、
    ports/sysutils/cdrecord 付属の cdda2wav に乗り換えても良いでしょう。最新版は
    ATAPIにも対応しています。GUI wrapper の grip(ports/audio/grip)を用いる場合
    は cdda2wav の方が使いやすいですね。
     
  3. sox  ( audio format 変換 )

  4. 吸い出したデータをMP3エンコーダで扱えるwav形式等に変換します。
    CDオーディオは一般に、16bit, 44.1kHz, Stereoですので、
    sox  -t raw  -r 44100  -v 75  -c 2  -s  -w  track-24.cda  track-24.wav
    といった感じにします。-v 75  はvolumeを75%にするという意味です。
    ※最新の sox では -v オプションはパーセント指定ではなくなりました。
     従って、
    sox  -t raw  -r 44100  -v 0.75  -c 2  -s  -w  track-24.cda  track-24.wav
     となります。(これで暫く嵌まった・・・ (-_-; )
     
  5. lame  ( MP3 エンコーダ )

  6. ISO MPEG1 demonstration sourceであるdist10へのpatchとして開発が進められて
    いるプロジェクトです。プロジェクトのサイトはこちら
    v3.70は音質の面で、特にVBRに関して非常に高い評価を得ています。
    VBRを使用し、3番目に良い音質でエンコードする場合は
    lame  -p -v  -V 2  track-24.wav 
    track-24.wav.mp3 が作られます。
     
  7. gogo  ( 午後のこ〜だ MP3 エンコーダ )

  8. これは音質よりもエンコードの速さで有名なソフトです。サイトはここ
    lame v3.5 を元に、MMX, 3DNow!, SSE 等のCPU拡張命令に対応したものです。
    かなりの高速です。
    gogo  -b 128  -v 2  track-24.wav 
    とすると、track-24.mp3が作られます。

    これらはコマンドラインプログラムなのでシェルスクリプトを作って
    やれば効率よくエンコード作業ができるでしょう。
     

  9. xmms  ( MP3 プレーヤー )

  10. xmmsはグラフィカルなインターフェイスをもつMP3プレーヤーです。
    プラグインによって様々な機能を追加することができます。
    GTKを使用しているので日本語化も割りと楽にできます。gtk-1.2.8 と
    xmms-1.2.3 の組み合わせではプレイリストとメニューで日本語の使用が
    可能になっています。しかし、オリジナルはまだ main windowでの日本
    語表示には対応していないので、ここのpatchを利用した1.2.3用のportsを
    用意しました。audio chipにes1370を使用している場合、FreeBSD 3.5-STABLE
    では再生がCPUを占有してしまう感じになってしまうので、patch-ossは
    その対処療法です。4.1-RELEASEでは問題ありません。POSIX thread の
    問題なのだろうか?4.1-RELEASEの方がCPU負荷も少なく、K6-2,III用の
    3DNow!対応patchも当てられるので快適です。
    日本語化された xmms はこんな感じです。

    xmms mainxmms playlist
    見た目はスキンで変えられます。(winampと互換?)
     

MIDI

FreeBSDでもMIDIの作曲、演奏を楽しむことができます。
  1. Timidity++ (ソフトウエアMIDI)

  2. ソフトウエアMIDIである timidity の機能拡張版です。サイトはこちら
    portsにもなっています。リバーブエフェクトなどが追加されたり、
    TkやGtkなど様々なインターフェイスを持っていたりします。
    オリジナルの timidity と同様にパッチファイルを集めることによって
    より多くの楽器の音を楽しむことができます。上記のサイトで探して
    みてください。
    コンパイルの方法ですが、csh系を使っている場合、
    setenv CC gcc
    setenv CFLAGS "-O2 -mpentium -Wall -funroll-all-loops -fomit-frame-pointer "
    setenv GTK_CONFIG /usr/X11R6/bin/gtk12-config
    といったかんじで環境変数の設定をします。
    configure は、私の場合以下のように行っています。
    ./configure --enable-ncurses --enable-tcltk --enable-xaw --enable-xskin --enable-gtk  --enable-spectrogram --enable-wrd --enable-audio=oss --with-tcl-includes=/usr/local/include/tcl8.0jp   --with-tk-includes=/usr/local/include/tkstep8.0jp
    その後、timidity.h を編集するのですが、
    #define DEFAULT_RATE 44100
    #define AUDIO_BUFFER_BITS 12
    としてやったほうが音切れがなくて良いような気がします。

    4.1-RELEASE でPCIサウンドカードを使用している場合、インターフェイス
    とプレーヤープロセスの間の通信が上手くいかないようです。pcm driver
    が大幅に改良された影響か?
    今のところ一番まともに動くインターフェイスは Gtk です。sleep(1)あたりを
    挿入してやるとトラブルが減ることから、パイプの読み書きのタイミング
    が問題のような感じ・・・
     

  3. Rosegarden

  4. 作曲も Rosegarden というソフトを使ってできます。使い勝手の悪いところも
    ありますが、機能は趣味で遊ぶには十分なものです。ports/audio にあります。
    付属のシーケンサーは  tclmidi を用いており、ハードウエアMIDIを前提に
    しているようです。しかし、外部プレーヤーとしてtimidityを指定してやれば
    これで曲の確認することができます。



Copyright(c)  2000  DragonX. All rights reserved.
戻る