AudioFilter
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
AudioFilter ajuste le contenu de fréquence des flux audio. Il fournit un entrée pin et un
Échantillons de code
-- 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)
Résumé
Propriétés
Whether les flux audio sont-ils passés à travers sans être affectés par cet effet.
Le type de courbe du bande représenté par le filtres.
La fréquence centrale que le filtre agit autour.
Pour les filtres de pic et de rayonnement, les commandes augmentent ou diminuent le volume.
Pour les filtres de pic, lowpass, highpass, bandpass et notch, contrôle la sélectivité ou la résonance.
Méthodes
Retourne un tableau de Wires qui sont connectés à l'épinglerspécifié.
Renvoie la réponse de magnitude du filtre à la fréquence spécifiée.
Propriétés
Editor
FilterType
Le type de courbe de réponse de fréquence qui sera utilisé pour filtrer le signal audio. Chaque type de courbe affecte le contenu de fréquence de l'audio de différentes façons.
Frequency
La fréquence centrale dans les hertz de la courbe représentée par le filtres. Généralement, ajuster cette valeur de haut ou de bas correspond à un décalage horizontal dans la courbe de fréquence globale. Les valeurs de 20 à 22000.
Gain
La valeur de gain en décibels utilisée pour déterminer le niveau de volume de la courbe représentée par le filtres. S'applique uniquement lorsque le FilterType est Peak, LowShelf, ou 2>HighShelf2>. Les valeurs vont de -30 à 30.
La valeur de qualité utilisée pour déterminer la pente ou la résonance de la courbe représentée par le filtres. S'applique uniquement lorsque le FilterType est Peak, Lowpass[x]dB, 2>Highpass[x]dB2>, 5>Bandpass
Pour les valeurs de FilterType de Lowpass12dB et Highpass12dB, un 2>Q2> de valeur
Méthodes
GetConnectedWires
Retourne un tableau de Wires qui sont connectés à l'épinglerspécifiée. AudioFilter a un bouton « Entrée » et un épingler« Sortie ».
Paramètres
Retours
GetGainAt
Renvoie la valeur de gain, en décibels, de la courbe de réponse de fréquence représentée par le filtre à la fréquence donnée, en hertz. Cela peut être utilisé pour échantillonner la forme exacte du filtre dans les endroits clés ou comme un tout.
Paramètres
La fréquence, en hertz, pour échantillonner.
Retours
La valeur de gain, en décibels, à la fréquence donnée.