問題 (ISSUE)

Flash Lite 3.1 (Flash Player library: 9,1,115,0)以降のバージョンと、それより前のバージョンとでは、loadSoundの動作が異なります。

以下の表のように、isStreamingパラメータの値によって、読み込むサウンドファイルの取り扱いの方法が異なります。

デバイスサウンドの場合は、データが完全にロードされるのを待ってから、Sound.start()メソッドの呼び出しによって再生を開始する必要があります。ロードの完了はSound.onLoadイベントハンドラメソッドで知ることができます。

一方、ストリーミングサウンドの場合は、再生を開始できるだけのデータがロードされると、自動的に再生が開始されますので、Sound.start()メソッドの呼び出しは不要です。

 

理由 (REASON)

Flash Lite 3.1 (Flash Player library: 9,1,115,0)以降のバージョンではストリーミングサウンドの再生がサポートされたためです。

 

解決方法 (SOLUTION)

Flash Lite 3.1 (Flash Player library: 9,1,115,0)より前のバージョンで、デバイスサウンドを読み込む目的で下記のようなコードを用いていた場合、Flash Lite 3.1 (Flash Player library: 9,1,115,0)以降ではストリーミングサウンドとして扱われますので挙動が変わります。場合によっては、これまで再生されていたサウンドが再生されなくなります。

var my_sound:Sound = new Sound(); 

my_sound.loadSound("song1.midi", true);

Flash Lite 3.1 (Flash Player library: 9,1,115,0)以降で、デバイスサウンドとして再生させるためには、以下のように修正する必要があります。

var my_sound:Sound = new Sound(); 

my_sound.loadSound("song1.midi", false);
 

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー