win32::mediaplayerについて
Perlモジュールwin32::mediaplayerを使って以下のスクリプトを作成しました。
(使用環境 Apache HTTP Server 2.2(win32), Perl : ActivePerl-5.14.2.-MSWin32-x86)
use Win32;
use Win32::MediaPlayer;
$winmm = new Win32::MediaPlayer;
$winmm->load('****.wav');
$winmm->play;
これで、コマンドラインからは実行できるのですが、これを以下のように
<!--#exec cgi= "../cgi-bin/****.pl" -->
SSIで実行できないのでしょうか?
試行錯誤の末、 モジュール Audio::Beep,と Win32::MediaPlayer,の組み合わせで以下のようにしたら
<!--#exec cgi= "../cgi-bin/****.pl" -->
で実行できました。
use Win32::API;
use Win32;
use Audio::Beep;
use Win32::MediaPlayer;
$winmm = new Win32::MediaPlayer;
$winmm->load('****.wav');
$winmm->play;
$beeper = Audio::Beep->new(player => 'Audio::Beep::Win32::API');
# $music = "g' f bes' c8 f d4 c8 f d4 bes c g f2";
$music = "g' f f f";
$beeper->play( $music )
思うに$winmm->load('****.wav');で指定したwavファイルが $music = "g' f f f";の音声データを上書きしているのであろうと思うんですが、いまひとつ理解できません。これも合わせてお教え願えれば幸いです。 よろしくお願いします。
お礼
とりあえずMediaPlayerのSDKを探してみます。 SoundRecorderの方は見つかりませんでした。 有難うございました。