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

Un filtro audio può essere utilizzato per cambiare il contenuto di frequenza degli stream audio.In questo esempio, un filtro audio viene utilizzato per rendere l'uscita dell'emittente audio più soffusa quando c'è un muro tra esso e l'ascoltatore audio.

Filtro degli emittenti

-- Questo presuppone che l'area di lavoro contenga una parte con un AudioEmitter e un AudioPlayer e la fotocamera abbia un 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
-- Crea un nuovo filtro audio
local filter: AudioFilter = Instance.new("AudioFilter")
filter.FilterType = Enum.AudioFilterType.Lowpass12dB
filter.Frequency = 22000
filter.Q = math.sqrt(2) / 2 -- Questo valore Q produce un lowpass piatto per il tipo di pendenza 12dB
filter.Parent = part
-- Posiziona il filtro audio tra il player e l'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)
-- Aggiorna il filtro in base alle posizioni dell' mittente e del ricevitore
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
Valore predefinito: ""

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.

Valore predefinito: ""

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 esempiowirable.

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 esempio.

instance: Instance

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