PT-BR/getSoundWaveData
Essa função obtém os dados do formato da onda de um áudio os quais são uma tabela de floats representando o quadro atual. Essa função permite a visualização do áudio.
Se o elemento passado no primeiro argumento for um jogador, essa função usará sua voz.
Sintaxe
table getSoundWaveData ( element audio, int amostras )
Sintaxe POO(OOP) Não entendeu o que significa isso?
- Método: audio:getWaveData(...)
Argumentos necessários
- audio: um elemento de áudio criado usando playSound ou playSound3D. Streams também são suportadas.
- amostras: amostras permitidas são: 256, 512, 1024, 2048, 4096, 8192 and 16384.
Retorno
Retorna uma tabela com a quantidade de floats definida em amostras representando a onda do quadro atual do áudio. Retorna false caso o áudio não está sendo reproduzido ou a stream ainda não foi carregada.
Exemplo
Esse exemplo cria um visualizador de áudio no canto superior esquerdo da tela.
local audio = playSound ( "audio.mp3" )
function onSoundPlayRender ( )
if ( audio ) then
local onda = getSoundWaveData ( audio, 256 )
if ( onda ) then
for i=0,255 do
dxDrawRectangle ( i, 128, 1, onda[i] * 128)
end
end
end
end
addEventHandler ( "onClientRender", root, onSoundPlayRender )
Este exemplo cria um visualizador de áudio, mas apebas com as barras de baixo.
local audio = playSound ("audio.mp3")
function renderWave ()
if (isElement (audio)) then
local onda = getSoundWaveData (audio, 256)
for i=0, 256 - 1 do
if (onda) then -- Avoid NaN values.
dxDrawRectangle (i, 128, 1, math.abs (onda[i]) * 128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
Esse exemplo criar um visualizador de áudio, mas apenas com as barras de cima.
local audio = playSound ("audio.mp3")
function renderWave ()
if (isElement (audio)) then
local onda = getSoundWaveData (audio, 256)
for i=0, 256 - 1 do
if (onda) then -- Avoid NaN values.
dxDrawRectangle (i, 128, 1, math.abs (onda[i]) * -128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
Esse exemplo cria um visualizador de áudio no canto inferior direito da tela.
local audio = playSound ("audio.mp3")
local x, y = guiGetScreenSize ()
function renderWave ()
if (isElement (audio)) then
local onda = getSoundWaveData (audio, 256)
for i=0, 256 - 1 do
if (onda) then -- Avoid NaN values.
dxDrawRectangle ((x-256)+i, y-128, 1, onda[i] * 128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
Changelog
| Version | Description |
|---|
| 1.3.2 | Added player element to use a players voice |
Veja também
getSoundEffectParameters
getSoundFFTData
getSoundLength
getSoundLevelData
getSoundMaxDistance
getSoundMetaTags
getSoundMinDistance
getSoundPan
getSoundPosition
getSoundProperties
getSoundSpeed
getSoundVolume
getSoundWaveData