2011-04-05 16 views
5

मैं थोड़ा गौर किया है और मैं एक तरह से फ्लैश पर गतिशील रूप से लगता है उत्पन्न करने के लिए की खोज की:फ्लैश पर सटीक आवृत्तियों को कैसे संश्लेषित करें?

import flash.media.Sound; 

var mySound:Sound = new Sound(); 

mySound.addEventListener(SampleDataEvent.SAMPLE_DATA, sineGenerateSound); 

mySound.play(); 

function sineGenerateSound(event:SampleDataEvent):void{ 

for(var i:int=0;i<4092;i++){ 

    var n:Number = Math.sin((i+event.position)/Math.PI/4); 
    event.data.writeFloat(n) 
    event.data.writeFloat(n) 
} 
} 

मैं सिर्फ पता है कि कैसे मैं इसे सही आवृत्ति मैं आवश्यकता उत्पन्न कर सकते हैं चाहते हैं, उदाहरण के लिए 100Hz ।

धन्यवाद!

उत्तर

8

मान लिया जाये कि 44.1kHz नमूना दर:

var freq:Number = 100; // example, 100 Hz, set this somewhere outside the for loop 
var n:Number = Math.sin((i+event.position)*freq*2.0*Math.PI/44100.0); 
+0

आपको बहुत बहुत धन्यवाद! यह साइट अद्भुत है, धन्यवाद! – Lucas

+0

लुकास, ऐसा लगता है कि आप यहां नए हैं। स्वीकृत के रूप में उत्तर चिह्नित करने के लिए इसके आगे वाले चेक-बॉक्स पर क्लिक करें। ऐसा करने से उस व्यक्ति को प्रतिष्ठा अंक मिलेगा जो आपको सहायता प्रदान करता है। – JeremyFromEarth

+0

कार्य पूरा हुआ =) धन्यवाद! – Lucas

2

यदि आप पहले से नहीं हैं, तो http://lab.andre-michelle.com/ देखें। आदमी कुछ अच्छी चीजें करता है।

उनके पास कुछ ध्वनि संश्लेषण उदाहरण हैं।

2

मैं अपने ब्लॉग पर फ्लैश में ऑडियो संश्लेषण के विषय पर कई लेख लिखा है। यहाँ कुछ अच्छी जगहों शुरू करने के लिए कर रहे हैं:

http://labs.makemachine.net/2010/06/note-frequency/

http://labs.makemachine.net/2010/06/sine-square-waves/

http://labs.makemachine.net/category/audio/