[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:92055] Re: Timidity++ をserver mode で使いたい


私も困っていたのですが、timidityとpmidiのバージョンを上げたら
うまくいきました。

> midi関連の情報を漁っているうちに、 Timidity++ の server mode という
> のがあるのを知りました。
> 早速実行してみたのですが、
> 
> hoge:~$ timidity -iAv -Od
> Audio device buffer: 3 x 8192 bytes
> TiMidity starting in ALSA server mode
> can't set sched_setscheduler - using normal priority
> error in snd_seq_open
> hoge:~$ timidity -iAv -Os
> /dev/snd/pcm00: Sound protocol is not compatible
> Couldn't open ALSA pcm device (`s')
> 
> こんな風に弾かれてしまいます。

私の環境は次のとおりです。
  Debian GNU/Linux woody
  kernel 2.4.16
  ALSA 0.9+0beta10-6

Debian GNU/Linux woodyでは、パッケージのtimidityとpmidiは
  timidity 2.10.4-2.2
  pmidi 1.4.1-2.1
となっています。どちらもALSA 0.9には対応していません。

そこでALSA 0.9に対応している最新版を持ってきます。
  TiMidity++-2.12.0-pre1.tar.bz2
  pmidi-1.5.4.tar.gz
関連情報はこちらです。
  http://www.goice.co.jp/member/mo/timidity/dist/download.html
  http://www.parabola.demon.co.uk/alsa/timid.html
  http://www.parabola.demon.co.uk/alsa/pmidi.html
  http://www.boosthardware.com/LAU/Linux_Audio_Users_Guide/TiMidity-howto.html

ALSA 0.9関係のコンパイルに必要かと思って
libasound2-dev(ALSA 0.9)パッケージも入れておきました。

timidityのconfigureのオプションは次のようにしました。

  ./configure --enable-audio=alsa --enable-alsaseq --enable-interface=server

(最後の--enable-interface=serverは要らないのかも
しれませんが‥‥、試してません。)

timidityをサーバモードで起動:

$ timidity -iA -Os &
Requested buffer size 32768, fragment size 8192
ALSA pcm 'default' set buffer size 32768, period size 8192 bytes
TiMidity starting in ALSA server mode
can't set sched_setscheduler - using normal priority
Opening sequencer port: 128:0 128:1

ポートの確認:

$ cat /proc/asound/seq/clients 
...
Client 128 : "Client-128" [User]
  Port   0 : "TiMidity port 0" (-We-)
  Port   1 : "TiMidity port 1" (-We-)
...

念のためpmidiでポートの確認:

$ pmidi -l
 Port     Client name                       Port name
 64:0     External MIDI 0                   MIDI 0-0
 65:0     OPL3 FM synth                     OPL3 Port
128:0     Client-128                        TiMidity port 0
128:1     Client-128                        TiMidity port 1

pmidiでプレイ:

$ pmidi -p 128:0 anatano.mid 
Requested buffer size 32768, fragment size 8192
ALSA pcm 'default' set buffer size 32768, period size 8192 bytes

‥‥といった感じに、うまくいきました。

以上〜。

----
goto <harpy _at_ lily.freemail.ne.jp>
Silent Humming http://blue.ribbon.to/~harpy/
harpy/ug       http://blue.ribbon.to/~harpy/ug/

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: