AudioFilter

Visualizza obsoleti

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

AudioFilter regola il contenuto di frequenza degli stream audio.Fornisce un Input pin e un Output pin che può essere collegato/da da Wires .AudioFilter utilizza le sue FilterType , Gain e Q proprietà per determinare cosa fare intorno a un particolare taglio Frequency .

Campioni di codice

An AudioFilter can be used to change the frequency content of audio streams. In this example, an AudioFilter is used to make the AudioEmitter output more muffled when there's a wall between it and the AudioListener.

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)

Sommario

Proprietà

  • Lettura Parallela

    Se gli stream audio vengono passati attraverso senza essere influenzati da questo effetto.

  • Non Replicato
    Sicurezza Script Roblox
    Lettura Parallela
  • Il tipo di curva della banda rappresentata dal filtro.

  • Lettura Parallela

    La frequenza centrale attorno alla quale il filtro agisce.

  • Lettura Parallela

    Per i filtri di picco e di scaffale, i controlli aumentano o riducono il volume.

  • Lettura Parallela

    Per il picco, il filtro lowpass, highpass, bandpass e notch, controlla la selettività o la risonanza.

Metodi

Eventi

Proprietà

Bypass

Lettura Parallela

Se true , gli stream audio vengono passati attraverso senza essere influenzati da questo effetto.

Editor

Non Replicato
Sicurezza Script Roblox
Lettura Parallela
Lettura Parallela

Il tipo di curva di risposta della frequenza che verrà utilizzata per filtrare il segnale audio.Ogni tipo di curva influisce sul contenuto di frequenza dell'audio in modi diversi.

Frequency

Lettura Parallela

La frequenza centrale in hertz della curva rappresentata dal filtro.Generalmente, regolare questo valore su o giù corrisponde a uno spostamento orizzontale nella curva di frequenza generale.Varia da 20 a 22000.

Gain

Lettura Parallela

Il valore di guadagno in decibel utilizzato per determinare il livello di volume della curva rappresentata dal filtro.Si applica solo quando il FilterType è Peak , LowShelf , o HighShelf .Varia da -30 a 30.

Lettura Parallela

Il valore di qualità utilizzato per determinare la pendenza o la risonanza della curva rappresentata dal filtro.Si applica solo quando il FilterType è Peak , Lowpass[x]dB , Highpass[x]dB , Bandpass , o Notch .Varia da 0.1 a 10.

Per FilterType valori di Lowpass12dB e Highpass12dB , un valore di Q di sqrt(2) / 2 o 0.707 corrisponde a un filtro piatto a una pendenza di 12dB/ottava.

Metodi

GetConnectedWires

Instances

Restituisce un array di Wires che sono connessi al pin specificato. AudioFilter ha un pin "Input" e un pin "Output".

Parametri

pin: string

Restituzioni

Instances

GetGainAt

Restituisce il valore di guadagno, in decibel, della curva di risposta della frequenza rappresentata dal filtro alla frequenza data, in hertz.Questo può essere utilizzato per campionare la forma esatta del filtro in luoghi chiave o in blocco.

Parametri

frequency: number

La frequenza, in hertz, da campionare.


Restituzioni

Il valore di guadagno, in decibel, alla frequenza data.

GetInputPins


Restituzioni

GetOutputPins


Restituzioni

Eventi

WiringChanged

Evento che si attiva dopo che un Wire diventa connesso o disconnesso, e che Wire è ora o era precedentemente connesso a un pin sulla AudioFilter e a qualche altra istanza wirable.

Parametri

connected: boolean

Se l'istanza è stata connessa o disconnessa.

pin: string

Il pin sul AudioFilter che i bersagli Wire .

wire: Wire

Il Wire tra la AudioFilter e l'altra istanza.

instance: Instance

L'altra istanza che è o era connessa attraverso il Wire .