AudioEqualizer

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Class.AudioEqualizer ajusta el contenido de frecuencia de los flujos de audio. Proporciona un pino de entrada Input y un pino de salida Output que se puede conectar/desconectar por 0> Class.Wire|Wires0> . AudioEqualizer3> tiene 3 bandas de

Muestras de código

An AudioEqualizer can be used to change the frequency content of audio streams. This can be done before emission, or after listening, and can be used to implement your own, custom RollOff logic! In this example, we use an AudioEqualizer to make an AudioPlayer's high frequencies more muffled as the AudioListener looks away from the AudioEmitter. We also reduce both the low and high frequencies as the listener gets further away.

Listener Equalization

local function wireUp(source: Instance, target: Instance) : Wire
local wire = Instance.new("Wire")
wire.Parent = target
wire.SourceInstance = source
wire.TargetInstance = target
return wire
end
local function getCFrameFrom(inst: Instance) : CFrame?
local parent = inst.Parent
if not parent then
return nil
elseif parent:IsA("Model") then
return parent.WorldPivot
elseif parent:IsA("BasePart") then
return parent.CFrame
elseif parent:IsA("Attachment") then
return parent.WorldCFrame
elseif parent:IsA("Camera") then
return parent.CFrame
else
return nil
end
end
local function rescale(value: number, oldRange: NumberRange, newRange: NumberRange) : number
local clamped = math.clamp(value, oldRange.Min, oldRange.Max)
local normalized = clamped - oldRange.Min / (oldRange.Max - oldRange.Min)
return normalized * (newRange.Max - newRange.Min) + newRange.Min
end
local assetPlayer = Instance.new("AudioPlayer")
assetPlayer.AssetId = "rbxassetid://142376088"
assetPlayer.Parent = workspace
local equalizer = Instance.new("AudioEqualizer")
equalizer.MidRange = NumberRange.new(400, 3000)
equalizer.Parent = workspace
local emitterPart = Instance.new("Part")
emitterPart.Anchored = true
emitterPart.Position = Vector3.new(0, 5, 0)
emitterPart.Parent = workspace
local emitter = Instance.new("AudioEmitter")
emitter.Parent = emitterPart
local listener = Instance.new("AudioListener")
listener.Parent = workspace.CurrentCamera
local output = Instance.new("AudioDeviceOutput")
output.Parent = workspace
wireUp(assetPlayer, equalizer)
wireUp(equalizer, emitter)
wireUp(listener, output)
assetPlayer.Looping = true
assetPlayer:Play()
while true do
local emitterFrame = getCFrameFrom(emitter)
local listenerFrame = getCFrameFrom(listener)
if emitterFrame and listenerFrame then
local towardEmitter = emitterFrame.Position - listenerFrame.Position
local look = towardEmitter.Unit:Dot(listenerFrame.LookVector) -- ranges from [-1, 1]
look = rescale(look, NumberRange.new(-1, 1), NumberRange.new(-20, 0))
local distance = math.max(towardEmitter.Magnitude, 1)
local rolloff = 1 / distance -- ranges from [0, 1]
rolloff = rescale(rolloff, NumberRange.new(0, 1), NumberRange.new(-10, 10))
equalizer.HighGain = look + rolloff
equalizer.LowGain = rolloff
end
task.wait()
end

Resumen

Propiedades

  • Leer paralelo

    Si los flujos de audio se pasan a través de un efecto no afectado.

  • No replicado
    Seguridad de scripts Roblox
    Leer paralelo
  • Leer paralelo

    Obtén el valor para aplicar a la frecuencia del contenido de la máxima banda en el equalizador.

  • Leer paralelo

    Obtén el valor para aplicar a la frecuencia del contenido del menor band en el equalizador.

  • Leer paralelo

    Obtén el valor para aplicar a la frecuencia del contenido del medio en el equalizador.

  • Leer paralelo

    La gama de frecuencia de la banda afectada por MidGain .

Métodos

Propiedades

Bypass

Leer paralelo

Si true , las transmisiones de audio no se ven afectadas por este efecto.

Editor

No replicado
Seguridad de scripts Roblox
Leer paralelo

HighGain

Leer paralelo

Obtén valor, en decibelios, para aplicar a la frecuencia del contenido de la banda más alta en el ecualizador. Rango de -80 a 10.

LowGain

Leer paralelo

Obtén valor, en decibelios, para aplicar a la frecuencia del contenido del menor band en el ecualizador. Rango de -80 a 10.

MidGain

Leer paralelo

Obtén valor, en decibelios, para aplicar a la frecuencia del contenido del medio en el equalizador. Rango de -80 a 10.

MidRange

Leer paralelo

El rango de frecuencia en hercios de la banda afectada por MidGain . La frecuencia de la parte baja del rango determina la frecuencia de cruce entre las bandas bajas y medias. La frecuencia de la parte superior del rango determina la frecuencia de cruce entre las bandas medias y altas. Ambas frecuencias de cruce se miden en 200 a 20,000

Métodos

GetConnectedWires

Instances

Retorna un array de Wires que están conectados al anclarespecificado. AudioEqualizer tiene una pista de entrada y una anclarde salida.

Parámetros

pin: string

Devuelve

Instances

Eventos