AudioFilter

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

AudioFilter ajusta o conteúdo de frequência de feeds de áudio. Ele fornece um pino

Amostras de código

Emitter Filtering

-- This assumes the workspace contains a Part with an AudioEmitter and an AudioPlayer, and the camera has an AudioListener
local RunService = game:GetService("RunService")
local part: BasePart = workspace.Part
local camera: Camera = workspace.CurrentCamera
local audioPlayer: AudioPlayer = part.AudioPlayer
local audioEmitter: AudioEmitter = part.AudioEmitter
local audioListener: AudioListener = camera.AudioListener
local raycastParams = RaycastParams.new()
raycastParams.FilterDescendantsInstances = {audioEmitter.Parent}
raycastParams.FilterType = Enum.RaycastFilterType.Exclude
-- Create a new AudioFilter
local filter: AudioFilter = Instance.new("AudioFilter")
filter.FilterType = Enum.AudioFilterType.Lowpass12dB
filter.Frequency = 22000
filter.Q = math.sqrt(2) / 2 -- This Q value produces a flat lowpass for the 12dB slope type
filter.Parent = part
-- Put the AudioFilter between the player and the emitter
local function wireTo(source: Instance, target: Instance): Wire
local wire = Instance.new("Wire")
wire.SourceInstance = source
wire.TargetInstance = target
wire.Parent = target
end
wireTo(audioPlayer, filter)
wireTo(filter, audioEmitter)
-- Update the filter based on the positions of the emitter and listener
RunService.Heartbeat:Connect(function()
local emitterPos: Vector3 = part.Position
local listenerPos: Vector3 = camera.CFrame.Position
local raycastResult = workspace:Raycast(emitterPos, (listenerPos - emitterPos), raycastParams)
filter.Frequency = if raycastResult then 500 else 22000
end)

Resumo

Propriedades

  • Ler Parallel

    Se as transmissões de áudio são passadas através de efeitos não afetados por este efeito.

  • Não replicado
    Ler Parallel
  • O tipo de curva representado pelo filtro.

  • Ler Parallel

    A frequência central que o filtro age em torno.

  • Ler Parallel

    Para filtros de topo e prateleiras, controla o volume de entrada ou saída.

  • Ler Parallel

    Para peaking, lowpass, highpass, bandpass e notch filters, controla a seleção ou a ressonância.

Métodos

Propriedades

Bypass

Ler Parallel

Se true , stream de áudio são pass-through sem efeito por este efeito.

Editor

Não replicado
Ler Parallel
Segurança do script Roblox
Ler Parallel

O tipo de resposta de frequência que será usado para filtrar o sinal de áudio. Cada tipo de curva afeta o conteúdo de frequência do áudio de diferentes maneiras.

Frequency

Ler Parallel

A frequência central em hertz da curva representada pelo filtro. Normalmente, ajustar este valor para cima ou para baixo corresponde a um deslocamento horizontal na curva de frequência geral. Vários de 20 a 22000.

Gain

Ler Parallel

O valor de ganho em decímetros usado para determinar o nível de volume da curva representada pelo filtro. Aplica-se somente quando o FilterType estiver Peak, LowShelf ou 2>HighShelf2>. As faixas variam de -30 a 30.

Ler Parallel

O valor de qualidade usado para determinar a inclinação ou ressonância da curva representada pelo filtro. Aplica-se somente quando o FilterType estiver Peak, Lowpass[x]dB, 2>Highpass[x]dB2>, 5>Bandpass5> ou

Para valores de FilterType de Lowpass12dB e Highpass12dB, um valor de 1>Q</

Métodos

GetConnectedWires

Instances

Retorna um array de Wires que estão conectados ao marcarespecificado. AudioFilter tem um pino "Entrada" e um marcar"Saída".

Parâmetros

pin: string

Devolução

Instances

GetGainAt

Retorna o valor de ganho, em decíbeis, da curva de resposta de frequência representada pelo filtro na frequência fornecida, em hertz. Isso pode ser usado para amostrar a forma exata do filtro em locais-chave ou como um todo.

Parâmetros

frequency: number

A frequência, em hertz, para amostrar.


Devolução

O valor de ganho, em decíbeis, na frequência fornecida.

Eventos