今日したこと
今日、oo39.comというとても
カックイーFlashのページを見つけました。なんといっても音がすごくよいのです。
授業中や真夜中にインターネットをしている私は、いつもボリュームをゼロにして
ホームページを眺めています。音が流れるホームページ
は感動でした。
感動した後に思い出したのは、夜隠れて、枕元に懐中電灯をつけて
"ウイザドリィー"をプレイした時のことです、
ゲームは音がないとつまらないな!という実感と、
音があるホームページってすごいなーという、わたしの回路達が
思い出した瞬間にリンクしてしまいました。
リンクした結果、音のないホームページなんてつまらないなー。
「もし、作るとしたらカックイー音がバンバンなるページを作りたいなー」
という確固たる回路が生まれてしまったのです。どうせいつかはわすれてしまうことですが
今日は、Mingで音を出す方法を探していました。
SWFSoundStreamが使えない
SWFSoundStreamというSoundと名前がつくクラスが、
本家リファレンスにあったのだか゛、
私が使っているMingで使うと"instance-non-exitent"とでてしまう。どうやら
まだサポートされていないらしい。
とりえず、現在のMingでカックイー音楽の流れるフラッシュは作れないのだろうか
と思いさらに調べていると。
SWFMovieにもSWFSpriteにもどうやらstartSoundなどの関数が用意されているようだった。
確かにphp_ming.hにもそんなものが宣言されているみたいだ。
・・・うまく使えなかった・・?
本家のMingのNewExsample
にいくと(以前重宝しているサイトと紹介したサイト)
サウンドの例があった。とりあえずコピペして(mp3の)ファイル名が書かれている場所
をoo39.comでダウンロードした素材に指定すると、
音が出た。
どんなことができるようになるかわからないけれども音が出た。アニメと音楽
のタイミングだとか調整できるといいのだけれども、できるのだろうか。
とりあえず、それは明日調べるとして、今日はもうMingはやめます。
作成したファイル
ming_setScale(20.00000000);
ming_useswfversion(8);
$movie = new SWFMovie();
$movie->setDimension(600,400);
$movie->setBackground(0xcc, 0xcc, 0xcc );
$movie->setRate(31);
$action = "
sound = new Sound();
sound.onLoad = function(ok)
{
sound.start();
};
sound.loadSound( 'ys002.mp3', true);
";
$movie->add(new SWFAction(str_replace("\r", "", $action)));
$movie->save("sound.swf");
実行結果クリックしてみて
寝る前にメモ
アクションスクリプトリファレンスによると
できる限り早く再生したときはtrue、特定のタイミングで
再生したいときはfalseを選ぶとよいようだ。
|
ming-ruby-patch
の管理人様からアドバイスのメールがあって、「SWFSounStreamは
SilentHummingのMingで遊びの
例が参考になるよ」とのこと、私の環境でも、うまく音が鳴りました。ありがとうございます
←つまり、SWFSoundStreamは問題なく使えます。
|