AudioFilter

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

AudioFilter ses akışlarının frekans içeriğini ayarlar.Bir Giriş pini ve bir Çıkış pini sağlar, które tarafından/dan çıkarılabilir ve bağlanabilir.AudioFilter kullanır FilterType , Gain ve Q özelliklerini belirli bir kesinti etrafında ne yapacağını belirlemek için kullanır Frequency .

Kod Örnekleri

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)

Özet

Özellikler

  • Paralel oku

    Ses akışlarının bu etkiden etkilenmeden geçip geçmediği.

  • Çoğaltılmamış
    Roblox Betik Güvenliği
    Paralel oku
  • filtretarafından temsil edilen bantın eğilim türü.

  • Paralel oku

    Filtrenin etrafında hareket ettiği merkezi frekans.

  • Paralel oku

    Zirvelenme ve raflama filtreleri için, kontrol ses artışı veya azalışını artırır.

  • Paralel oku

    Zirvelenme, düşük geçiş, yüksek geçiş, band geçişi ve not filtreleri için, seçiciliği veya rezonansı kontrol eder.

Yöntemler

Etkinlikler

Özellikler

Bypass

Paralel oku

Eğer true , ses akışları bu etkiden etkilenmeden geçer.

Editor

Çoğaltılmamış
Roblox Betik Güvenliği
Paralel oku
Paralel oku

Ses sinyalini filtrelemek için kullanılacak frekans yanıtı türü.Her bir eğilim türü, sesin frekans içeriğini farklı şekillerde etkiler.

Frequency

Paralel oku

filtretarafından temsil edilen eğrinin merkezi frekansı.Genel olarak, bu değeri yukarı veya aşağı ayarlamak, genel frekans eğrisindeki yatay bir kaymaya karşılık gelir.20 ile 22000 arasında değişir.

Gain

Paralel oku

Filtre tarafından temsil edilen eğrinin hacim seviyesini belirlemek için kullanılan desibel değeri.Sadece FilterType , Peak veya LowShelf , veya HighShelf olduğunda uygulanır.30'dan -30'a kadar menziller.

Paralel oku

filtretarafından temsil edilen eğilimin veya rezonansın pürüzlüğünü belirlemek için kullanılan kalite değeri.Sadece FilterType , Peak , Lowpass[x]dB , Highpass[x]dB , Bandpass veya Notch durumunda uygulanır.0.1'den 10'a kadar menziller.

For FilterType değerleri için Lowpass12dB ve Highpass12dB , bir Q değeri ile sqrt(2) / 2 veya 0.707 , bir 12dB/oktav eğiminde düz bir filtreye karşılır.

Yöntemler

GetConnectedWires

Instances

Belirtilen sabitlebağlı bir dizi Wires döndürür. AudioFilter bir "Giriş" ve bir "Çıkış" sabitlesahiptir.

Parametreler

pin: string
Varsayılan değer: ""

Dönüşler

Instances

GetGainAt

Filtre tarafından temsil edilen frekans yanıtının, desibellerde, kazanma değerini, verilen frekansda, hertz olarak döndürür.Bunu, anahtar yerlerde veya bütün olarak filtrenin kesin şeklini örneklemek için kullanabilirsiniz.

Parametreler

frequency: number

Örneklem için frekans, hertz, içinde.

Varsayılan değer: ""

Dönüşler

Verilen frekansta, desibellerde, kazanç değeri.

GetInputPins


Dönüşler

GetOutputPins


Dönüşler

Etkinlikler

WiringChanged

Bir bağlantı kurulduktan veya bağlantı kesildikten sonra ateşlenen olay, şimdi şu veya daha önce başka bir sabit parçaya ve bazı diğer kullanılabilir durumlara bağlandı veya bağlantı kesildi.

Parametreler

connected: boolean

Instans bağlandı veya bağlantı kesildi.

pin: string

Hedeflerin AudioFilter üzerindeki düğme. The pin on the that the Wire targets.

wire: Wire

Wire arasındaki AudioFilter ve diğer durumarasındaki.

instance: Instance

Wire aracılığıyla bağlantı kurulan diğer örnek.