2009年3月7日土曜日

audioについて

armadilloへのポーティングはタイマー割り込みが入るところまではいけましたが、
その際のプリエンプション処理でおかしくなるらしく、頓挫中です。へこむー

audioについて試してみました。
どうやらon MAC, on Linuxではaudioデバイスをサポートしていないようで、
on Windows, on FreeBSD では試せそうです。

emu/の下に各ホストOS用のemuのソースがありますが、
audio.cがあり、かつemuファイルに/dev/audioをサポートする旨書かれているのは
Win, BSDのみでした。
BSDがいけるならOSXにもポーティングできないものか?

それはさておき、Inferno日記を参考に、音を出してみました。
Windows XP上のemuで試しました。

(参考: http://www.ntl.co.jp/2/product/inferno/beginners/008.html いつもお世話になっております)

・オーディオデバイスのバインド

bind -a '#A' /dev

とすると/dev/audio, /dev/audioctlが現れました。
bindの意味はよくわかっていませんが。

・データの用意

付属のプレーヤーではwavファイルそのままでは再生できず、変換の必要があるそうです。
/appl/cmdに変換プログラムのソースがあるようで
cd /appl/cmd
limbo wav2iaf.b
として、生成したwav2iaf.disをどっかにコピー。
ひとまず/tmpにコピーしておいた。

wavを/tmpにおいて
wav2iaf test.wav > test.iaf
などと変換。
wavファイルはCDからEACというソフトで取り出しました。
EACおすすめ。CCCDもいける。

・再生
auplay test.iaf
とすると音が鳴りました。すばらしい!

ちなみにテスト音源はTOTOのFalling in Between。なかなか良い。

0 件のコメント:

コメントを投稿