Y a-t-il un code commun disponible qui produit des formes d'onde carrées, triangulaires, en dents de scie ou autres formes d'ondes personnalisées en utilisant la classe mathématique? Ci-dessous est une fonction de base qui gère un SampleDataEvent et joue une onde sinusoïdale de type c-440 (440 Hz). je voudrais changer le ton en incorporant des vagues carrées, triangulaires et autres.ActionScript - Création de vagues carrées, triangulaires et en dents de scie depuis Math.sin()?
var position:int = 0;
var sound:Sound = new Sound();
sound.addEventListener(SampleDataEvent.SAMPLE_DATA, sampleDataHandler);
sound.play();
function sampleDataHandler(event:SampleDataEvent):void
{
for(var i:int = 0; i < 2048; i++)
{
var phase:Number = position/44100 * Math.PI * 2;
position ++;
var sample:Number = Math.sin(phase * 440);
event.data.writeFloat(sample); // left
event.data.writeFloat(sample); // right
}
}
Doit-on utiliser 'sin'? Pouvez-vous juste écrire votre propre fonction? – kennytm
Je n'ai pas besoin d'utiliser Math.sin(), mais je suppose que l'utilisation de Math.sin() (ou .cos()) serait la façon de créer des formes d'ondes personnalisées? ou au moins accompli facilement. – TheDarkIn1978