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 fréquentiel des flux audio.Il fournit un entrée pin et un sortie pin qui peut être connecté à/de par Wires .AudioFilter utilise ses propriétés FilterType , Gain et Q pour déterminer ce qu'il faut faire autour d'une coupe spécifique Frequency .
Échantillons de code
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.
-- 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
Si les flux audio sont transmis sans être affectés par cet effet.
Le type de courbe du band représenté par le filtres.
La fréquence centrale autour de laquelle le filtre agit.
Pour les filtres de pointe et d'étagère, les contrôles augmentent ou réduisent le volume.
Pour les pics, les filtres passe-bas, haut-pass, bandpass et notch, contrôle la sélectivité ou la résonance.
Méthodes
Renvoie un tableau de Wires qui sont connectés au épinglerspécifié.
Renvoie la réponse de magnitude du filtre à la fréquence donnée.
Évènements
Se déclenche lorsqu'une autre instance est connectée ou déconnectée du AudioFilter via un Wire .
Propriétés
Editor
FilterType
Le type de courbe de réponse fréquentielle qui sera utilisé pour filtrer le signal audio.Chaque type de courbe affecte le contenu fréquentiel de l'audio de manières différentes.
Frequency
La fréquence centrale en hertz de la courbe représentée par le filtres.En général, ajuster cette valeur vers le haut ou le bas correspond à un déplacement horizontal de la courbe de fréquence globale.Va 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 HighShelf .Va 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 , Highpass[x]dB , Bandpass , ou Notch .Va de 0,1 à 10.
Pour FilterType les valeurs de Lowpass12dB et Highpass12dB , une valeur Q de sqrt(2) / 2 ou 0.707 correspond à un filtre plat à un rapport de 12dB/octave.
Méthodes
GetConnectedWires
Retourne un tableau de Wires qui sont connectés au épinglerspécifié. AudioFilter a un pin « 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 des endroits clés ou dans son ensemble.
Paramètres
La fréquence, en hertz, à échantillonner.
Retours
La valeur de gain, en décibels, à la fréquence donnée.
Évènements
WiringChanged
Événement qui se déclenche après qu'un Wire devienne connecté ou déconnecté, et que Wire soit maintenant ou ait été précédemment connecté à un bouton sur le AudioFilter et à une autre instance wirable.
Paramètres
Si l'instance s'est connectée ou déconnectée.
L'épingle sur le AudioFilter que les cibles Wire .
Le Wire entre la AudioFilter et l'autre instance.