2009-08-10 10 views
2

私はフラッシュでいくつかのサウンドオブジェクトを持っています。これらのサウンドファイルに異なるポイントをミックスして一つの傑作を作り、mp3として保存したいと思います。 私はさまざまな "ミキサー"アプリケーションをオンラインで見てきましたが、これを自分でできるようにするためにどの領域を見ているか知りたいと思います。フラッシュで複数のサウンドを混ぜる

+0

あなたはas2を使用する必要がありますか? – jedierikb

+0

よく、アプリの部分はas2で構築されていますが、私がしたいことがas2ではできない場合は、私のチームの他の人にas3の方法を伝えなければなりません。 1つがある場合... – Irwin

+1

AS3のサウンドAPIは、AS2からの飛躍的な飛躍です。ジャンプをすることをお勧めします。 –

答えて

1

作成しようとしている音楽などを作成するには、wavファイルとmp3ファイルをライブラリにインポートし、ムービー領域にドラッグしてタイムラインに追加する必要があります。それらを整理するのに役立つ複数のレイヤーを使用します。あなたの曲をテストするには、Enterキーを押して、どんなフレームから先に行っても最後まで実行できます。

タイムラインでサウンドを選択している場合は、いくつかのエフェクトを適用できることを忘れないでください。また、プロパティパネル(デフォルトでは下部)にある「編集」ボタンがあり、オーディオクリップを必要なものにトリムすることができます。

完了したら、Flashムービーをswfに公開する必要があります。そして、あなたはこの1のようなMP3コンバータへのSWFを使用する必要があります:

http://3d2f.com/programs/25-187-swf-to-mp3-converter-download.shtml

(私は、このソフトウェア用のバウチングないよ、それは単なる例です)

をあなたがしようとしている場合コードからこれをすべて行い、ActionScript 2.0を使用すると、難しい道が先に進むでしょう。

本質的には、ムービーにロードしたトリミングされたサウンドバイトで構成される配列を構築する必要があります。そして、onEnterFrameには、適切なタイミングでそれらを呼び出す必要があるだろう:

(私は笑、それはあなたの基本的な考え方を与えることだけですが、すべてでこのコードをテストしていない)

var sounds = new Array(); 
var s0 = new Sound(this); 
s0.attachSound("someLinkedSound0"); 
sounds.push({sound : s0, frame : 100}); 
var s1 = new Sound(this); 
s1.attachSound("someLinkedSound1"); 
sounds.push({sound : s1, frame : 200}); 
var s2 = new Sound(this); 
s2.attachSound("someLinkedSound2"); 
sounds.push({sound : s2, frame : 300}); 
var currentSound = 0; 

this.onEnterFrame = function(e) { 
    if(currentSound < sounds.length && sounds[currentSound].frame == _root.currentFrame) { 
     sounds[currentSound].start(0,1); 
     currentSound++; 
    } 
    frame++; 
} 

マイ例では、ライブラリにインポートされ、リンクされたサウンドを使用しますが、少し修正してurl経由でサウンドを読み込むことができます。

また、アプリケーションの構造onEnterFrameが呼び出されていないため、setIntervalから呼び出されたメソッドと同様の処理を実行できます。 私はそれが助けてくれることを願っています。

0

フラッシュSoundChannelSoundおよびSoundTransformクラスについて少しお読みください。あなたがしなければならないことは、異なるサウンドをロードすることです(私がリンクしてきたフラッシュドキュメントでその方法を示しています)、あなたのタイムラインに従ってサウンドを再生するだけです。各サウンドは異なるチャンネルで再生することができ、これにより、それらをミックスすることができます。チャンネルの配列を維持し、必要なときにいつでも好きなことをしてください。

これらを保存するにはもう少し作業が必要ですが、不可能ではありません。 Hereあなたはmp3をswfに保存する別の例を見つけることができます。他の方法私は知っているとは言えませんが、私が見たことから、Alchemyを使用してLAME MP3 Encoderをフラッシュライブラリとしてコンパイルできます。また、フラッシュを使用してファイルをダウンロードすることができないため、バックエンドが必要になります。それらをサーバーに送信し、サーバーがダウンロードを初期化する必要があります。

1

ActionScript 2でサウンドをミキシングする場合は、this linkをご覧ください。これは、AS2とのサウンドミキシングを実現する方法の精巧な説明です。次に、対象に関する詳細情報を得るにはthis linkをチェックする必要があります。

サウンドのミックスバージョンをMP3として保存することは、AS2から直接行うことはできません。混在したサウンドの開始と停止を知っている精巧なサーバー側のスクリプトに頼らざるを得ず、その情報でサーバー上にMP3を生成することができます。トリッキーですが、不可能ではありません。

create sound at runtime(例では完全に下にスクロールできる)のAS3に切り替えて、結果をバイトストリームとして保存することができます。

関連する問題