2012-02-06 9 views
0

ライブのドラムをキーボードショートカットで演奏したいと思っていました。問題はMP3がこの場合十分ではなく(エンコーダがサウンドの始めにランダムな無音を追加する)、また、フラッシュ自体が遅れをとることです(私はすでに再生済みのファイルを使用しようとしました(指定された開始点_インミリ秒))。だから、私の解決策はOGGです(この形式はgaplessです)。 Adobe Alchemy librarysimple frontend for itのコンパイル済みのswcファイルを使用します。すべてがうまく動作しますが、OGGファイルは再生されていますが、その遅延は非常に長くなります。私は解決策が必要です。どのようにして音を素早く同じようにキーを押すようにするか。私はループを持つ私のFlash CS5.5プロジェクトのオーディオファイルと同じ問題を抱えていたFlash AS3 - OGGのサウンドが遅れました(Adobe Alchemyライブラリ)

import flash.display.Sprite; 
import flash.events.*; 
import flash.utils.ByteArray; 
import flash.events.SampleDataEvent; 
import com.mauft.OggLibrary.OggStream; 
import com.mauft.OggLibrary.OggEmbed; 

public class ogg extends Sprite 
{ 

    [Embed(source="/drumssnare2.ogg",mimeType="application/octet-stream")] private var OGG_FILE:Class //Embed Ogg file as binary stream 

    public function ogg() 
    { 
    var gameinfo:Sprite=new Sprite(); 
    gameinfo.graphics.beginFill(0x000000,1); 
    gameinfo.graphics.drawRect(0,0,240,16); 
    gameinfo.graphics.endFill(); 
    gameinfo.addEventListener(MouseEvent.CLICK, playOGG); 
    addChild(gameinfo); 
    //var streamTest:OggStream=new OggStream("http://127.0.0.1/~7z/drumssnare2.ogg"); 

     var embedTest:OggEmbed=new OggEmbed((new OGG_FILE) as ByteArray) //Create new instance of OggEmbed 

     function playOGG():void 
     { 
     //var streamTest:OggStream=new OggStream("http://www.vorbis.com/music/Hydrate-Kenny_Beltrey.ogg") 

     //streamTest.play(0); 
     embedTest.play(0); 

     } 
    } 
} 

答えて

1

:ここに は私の非常に簡単なコード例です。 私と私のオーディオディレクターは、as3のループのための高速で「ギャップのない」ソリューションを見つけるのに時間をかけすぎました。 彼はギャップのない.aifファイルを作成し、メインクラスから呼び出してライブラリにインポートしました。 はその後、我々は音のプロパティを変更し、このように思える:ActionScriptで

http://s7.postimage.org/6me47lfzv/Screen_shot_2012_02_06_at_4_35_15_PM.png

私はこのような.AIFファイルを呼び出す:

var aifSound:AifSound = new AifSound(); 
//AifSound is the name of the file in the ActionScript tab 

//creates a new Sound Channel 
var scAif:SoundChannel = new SoundChannel(); 
scAif = aifSound.play(0,999, 1); 

OK、それは隙間なく私のループを与えます、遅延またはパーフォマンス合併症。 これを試して、フィードバックを投稿してください!

PS:

私の悪い英語について申し訳ありませんが、あなたがStackOverflowのありがとう!

+0

少し良くなりましたが、まだ遅すぎます。ここで私はあなたに[FLA、AS3の非常に短いサンプルと元のサウンドファイル](http://speedy.sh/WrXaf/gapless.zip)を送っています。黒い部分をクリックするか、キーボードの任意のキーを使用してサウンドをテストすることができます。私は最も単純なテンポのビートを試してみるためにキーテストを最も好む。 – speedy

+0

ちょっと男、他のコンピュータでそれを試してみてくださいここでそれは遅延なく再生されます!私はiMacのコア2デュオで働いていて、うまく動作します。 –

+0

私はコア2デュオではなくPCで動作します。しかし、とにかく、私はほとんどのユーザー(これは少し古いコンピュータでも)のための遅延なしで動作する必要があります。 – speedy

関連する問題