2016-03-22 4 views
1

ブログにAS3の課題を公開する必要があります。私のファイルは、flaとswfファイルと同じディレクトリに保存された4つのmp3ファイルを使用します。私は「ムービーをテストする」ときに、Adobe Animate CCでうまく動作します。私のブログに公開すると、音楽は聞こえません。私はこれがオーディオファイルは私のラップトップではなく、インターネットからアクセス可能であると仮定しています。Actionscript3 AudioでSWFを公開するには?

これを修正する方法を知っている人はいますか?あなたがFTP上のmp3ファイルをアップロードする必要が

import flash.events.Event; 
import flash.media.Sound; 
import flash.net.URLRequest; 

var v:Sound = new Sound(); 
v.addEventListener(Event.COMPLETE, onSoundLoaded4); 
var req4:URLRequest = new URLRequest("excited.mp3"); 
v.load(req4); 

function onSoundLoaded4(event:Event):void 
{ 
var localSound4:Sound = event.target as Sound; 
localSound4.play(); 
} 
+2

WebサーバーであなたのSWFの隣にあなたのmp3ファイルをコピーする必要が... – akmozo

+0

埋め込みSWF内のオーディオファイル:http://help.adobe.com/jp/en/US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d24.html – SushiHangover

答えて

0

別の解決策として、MP3をFLAのリソースとして宣言し、そのクラス名(ベースタイプはSound)を割り当ててからSWFに埋め込み、別の場所からロードする代わりにそれらのインスタンスを作成することができます。欠点は、SWFがもっと大きくなることです。 (コード経由で埋め込む実証するFlashDevelopの構文は、AdobeのFlash CSを埋め込むために、ネイティブのメカニズムを使用しています。)例:

[Embed(source = '../../lib/intro.mp3')] // relative path from AS to MP3 
private static const Intro:Class; 
... 
var intro:Sound=new Intro(); 
intro.play(); 
0

は、ここに私のFLAファイルに私のラップトップ上の曲を取り付けるための私のコードです。今質問はアップロードする必要があります。例を取る

htdocs/assets/swf/music.swfにswfがあり、htdocs/music.htmlにあるhtmlからロードされたswfがあるとします。その場合、htdocsディレクトリにmp3をアップロードする必要があります。

swfがmymusic/music.mp3などのディレクトリからmp3をロードする複雑な例です。この場合、mp3をhtdocs/mymusic/music.mp3にアップロードする必要があります。

したがって、mp3へのすべてのパスは、swfをHTMLを使用せずにブラウザで直接ロードする場合を除き、swfをロードするhtmlファイルに相対的でなければなりません。

関連する問題