[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: [MD:4204] Sound support



>>>>> [meadow-develop : No.4258] にて
>>>>> "三好" = 私は書きました:
三好> 今後は、
三好> o elisp でのイベントハンドリングの実装。また、utility 関数の実装
三好>   (mw32mci.el?)、
三好> o play-sound() の実装(mw32mci.el?)、
三好> を実装するつもりです。

これを実装しました。

(1) イベントハンドリング

(mw32-mci-add-notify-callback DEVICE-ID CALLBACK-FUNC &optional CALLBACK-ARG)
で MM_MCINOTIFY イベントに対するコールバックを登録できます。
mw32-mci-notify-func() を参照してください。ここでは、MM_MCINOTIFY
イベントを拾って、waveaudio を close しています。


(2) play-sound
(play-sound '(sound :file "c:/WINDOWS/Media/tada.wav"))
のようにして WAVE データを再生できます。

有効な sound プロパティは、:file と :data です。:volumue と 
:device は無視されます。

:data の場合は、一時ファイルを作成してから、そのファイルを再生し
ます。一時ファイルを作成するときに(write-file()を使用)、エコーが
でちゃうのはご愛嬌ということで勘弁してください。

このエコーを抑止するにはどうしたらいいんでしょうかね?


;; しかし image でも同じことが言えるけど、:data プロパティは止めて
;; ほしいな。こんな生データを丸見えにするとは、泣けてくる。
;; きちんとオブジェクト化してデータの隠蔽を図って欲しかった。;_;
;; 将来、movie をサポートするときにも、:data が出来そうで怖い。

--
三好 雅則 mailto:miyoshi@xxxxxxxxxxxxxxxx
          http://www.boreas.dti.ne.jp/~miyoshi/ (Meadow2 のページ始めました)