PI
The world on the edge of reality
Функция getSoundWaveData получает данные формы волны для аудиопотока, который представляет собой таблицу с плавающей точкой, представляющую текущий аудиокадр в виде волны. Это позволяет такие вещи, как визуализация.
Если элемент является игроком, эта функция будет использовать голос игрока.
Синтаксис:
OOP Syntax:
Method: sound:getWaveData(...)
Обязательные аргументы:
sound: звуковой элемент, который создается с помощью PlaySound или playSound3D . Потоки также поддерживаются
iSamples: разрешенные образцы: 256, 512, 1024, 2048, 4096, 8192 и 16384.
Возвращает:
Возвращает таблицу из iSamples поплавки, представляющий текущий кадр звука сигнала. Возвращает false, если звук еще не воспроизводится или не буферизован в случае потоков.
Примеры:
В этом примере создается визуализатор звука в верхнем левом углу экрана.
В этом примере создается средство просмотра звука, но только с полосами вниз.
В этом примере создается средство просмотра звука, но только с полосами вверх.
В этом примере создается средство просмотра звука в правом нижнем углу экрана.
Изменения:
В версии 1.3.2 - Добавлен элемент игрока, чтобы использовать голос игрока
Если элемент является игроком, эта функция будет использовать голос игрока.
Синтаксис:
table getSoundWaveData ( element sound, int iSamples )
OOP Syntax:
Method: sound:getWaveData(...)
Обязательные аргументы:
sound: звуковой элемент, который создается с помощью PlaySound или playSound3D . Потоки также поддерживаются
iSamples: разрешенные образцы: 256, 512, 1024, 2048, 4096, 8192 и 16384.
Возвращает:
Возвращает таблицу из iSamples поплавки, представляющий текущий кадр звука сигнала. Возвращает false, если звук еще не воспроизводится или не буферизован в случае потоков.
Примеры:
В этом примере создается визуализатор звука в верхнем левом углу экрана.
Код:
soundHandler = playSound ( "sound.wav" )
function onSoundPlayRender ( )
if ( soundHandler ) then
local waveData = getSoundWaveData ( soundHandler, 256 )
if ( waveData ) then
for i=0,255 do
dxDrawRectangle ( i, 128, 1, waveData[i] * 128)
end
end
end
end
addEventHandler ( "onClientRender", getRootElement(), onSoundPlayRender )
Код:
soundHandler = playSound ("audio.mp3")
local samples = 256
function renderWave ()
if (isElement (soundHandler)) then
local waveData = getSoundWaveData (soundHandler, samples)
for i=0, samples-1 do
if (waveData) then -- Avoid NaN values.
dxDrawRectangle (i, 128, 1, math.abs (waveData[i]) * 128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
Код:
soundHandler = playSound ("audio.mp3")
local samples = 256
function renderWave ()
if (isElement (soundHandler)) then
local waveData = getSoundWaveData (soundHandler, samples)
for i=0, samples-1 do
if (waveData) then -- Avoid NaN values.
dxDrawRectangle (i, 128, 1, math.abs (waveData[i]) * -128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
Код:
soundHandler = playSound ("audio.mp3")
local x, y = guiGetScreenSize ()
local samples = 256
function renderWave ()
if (isElement (soundHandler)) then
local waveData = getSoundWaveData (soundHandler, samples)
for i=0, samples-1 do
if (waveData) then -- Avoid NaN values.
dxDrawRectangle ((x-samples)+i, y-128, 1, waveData[i] * 128)
end
end
end
end
addEventHandler ("onClientRender", root, renderWave)
В версии 1.3.2 - Добавлен элемент игрока, чтобы использовать голос игрока
