15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Arbeiten mit Sounds<br />

Die Sounddaten werden als ein ByteArray-Objekt mit 512 Byte Dateninhalt zurückgegeben. Jedes Objekt enthält eine<br />

Gleitkommazahl zwischen -1 und 1. Diese Werte repräsentieren die Amplitude der Punkte in der wiedergegebenen<br />

Soundwellenform. Die Werte werden in zwei 256er-Gruppen bereitgestellt, die erste Gruppe für den linken<br />

Stereokanal und die zweite Gruppe für den rechten Stereokanal.<br />

Wenn der FFTMode-Parameter auf true gesetzt ist, gibt die SoundMixer.computeSpectrum()-Methode anstelle von<br />

Wellenformdaten Frequenzspektrumdaten zurück. Das Frequenzspektrum zeigt eine nach der Soundfrequenz<br />

angeordnete Amplitude an, von der niedrigsten Frequenz zu höchsten. Zum Konvertieren der Wellenformdaten in<br />

Frequenzspektrumdaten wird ein Fast Fourier Transform (FFT) eingesetzt. Die resultierenden<br />

Frequenzspektrumwerte befinden sich im Bereich von 0 bis etwa 1,414 (Quadratwurzel aus 2).<br />

Im folgenden Diagramm werden die von der computeSpectrum()-Methode zurückgegebenen Daten bei einer<br />

FFTMode-Parametereinstellung von true und einer Einstellung von false verglichen. Der Sound, dessen Daten in<br />

diesem Diagramm verwendet wurden, enthält einen lauten Basston auf dem linken Kanal und einen Schlagzeugton<br />

auf dem rechten Kanal.<br />

Von der SoundMixer.computeSpectrum()-Methode zurückgegebene Werte<br />

A. fftMode=true B. fftMode=false<br />

Die computeSpectrum()-Methode kann auch Daten zurückgeben, die mit einer niedrigeren Bitrate neu gesampelt<br />

wurden. Im Allgemeinen führt dies zu sanfteren Wellenformdaten oder Frequenzdaten bei geringeren Details. Der<br />

stretchFactor-Parameter bestimmt die Rate, mit der die computeSpectrum()-Methode Daten abtastet. Wenn der<br />

stretchFactor-Parameter auf 0 (die Standardeinstellung) eingestellt ist, werden die Sounddaten mit einer Rate von<br />

44,1 kHz abgetastet. Die Abtastrate wird bei jedem nachfolgenden Wert für den stretchFactor-Parameter halbiert.<br />

Somit gibt der Wert 1 eine Abtastrate von 22,05 kHz an, der Wert 2 eine Abtastrate von 11,025 kHz usw. Die<br />

computeSpectrum()-Methode gibt weiterhin 256 Byte pro Stereokanal zurück, auch wenn ein höherer<br />

stretchFactor-Wert verwendet wird.<br />

Die SoundMixer.computeSpectrum()-Methode weist einige Einschränkungen auf:<br />

Da Sounddaten von einem Mikrofon oder von RTMP-Streams das globale SoundMixer-Objekt nicht passieren,<br />

kann die SoundMixer.computeSpectrum()-Methode von diesen Quellen keine Daten zurückgeben.<br />

Letzte Aktualisierung 27.6.2012<br />

486

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!