AudioFilter
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
AudioFilter điều chỉnh nội dung tần suất của dòng audio.Nó cung cấp một đầu nối Nhập và một đầu nối Xuất có thể kết nối với/từ bởi Wires .AudioFilter sử dụng các FilterType , Gain và Q tính chất của nó để xác định những gì cần làm xung quanh một giới hạn cụ thể Frequency .
Mẫu mã
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)
Tóm Tắt
Thuộc Tính
Liệu dòng âm thanh có bị ảnh hưởng bởi hiệu ứng này hay không.
Loại đồ thị của dải được biểu diễn bởi bộ lọc.
Tần số trung tâm mà bộ lọc hoạt động xung quanh.
Đối với bộ lọc đỉnh và kệ, kiểm soát tăng hoặc giảm âm lượng.
Đối với peaking, lowpass, highpass, bandpass và notch filters, kiểm soát sự lựa chọn hoặc sự cộng hưởng.
Phương Pháp
Trả về một array của Wires được kết nối với ghimđược chỉ định.
Trả về đáp ứng độ lớn của bộ lọc ở tần số đã cho.
Sự Kiện
Bắt lửa khi một instance khác được kết nối hoặc thoát kết nối với AudioFilter thông qua một Wire .
Thuộc Tính
Editor
FilterType
Loại đồ thị đáp ứng tần số sẽ được sử dụng để lọc tín hiệu âm thanh.Mỗi loại đường cong ảnh hưởng đến nội dung tần số của âm thanh theo những cách khác nhau.
Frequency
Tần số trung tâm trong hertz của đường cong được đại diện bởi bộ lọc.Nói chung, điều chỉnh giá trị này lên hoặc xuống tương ứng với một chuyển đổi ngang trong đồ thị tần suất tổng thể.Từ 20 đến 22000.
Gain
Giá trị lợi nhuận bằng decibel được sử dụng để xác định mức âm lượng của đường cong được biểu diễn bởi bộ lọc.Chỉ áp dụng khi FilterType là Peak , LowShelf , hoặc HighShelf .Phạm vi từ -30 đến 30.
Giá trị chất lượng được sử dụng để xác định độ dốc hoặc sự cộng hưởng của đường cong được biểu diễn bởi bộ lọc.Chỉ áp dụng khi FilterType được Peak , Lowpass[x]dB , Highpass[x]dB , Bandpass , hoặc Notch .Từ 0,1 đến 10.
Đối với FilterType giá trị của Lowpass12dB và Highpass12dB , một giá trị Q của sqrt(2) / 2 , hoặc 0.707 , tương ứng với một bộ lọc phẳng ở độ dốc 12dB/octave.
Phương Pháp
GetConnectedWires
Trả về một array của Wires được kết nối với ghimđược chỉ định. AudioFilter có một chân "Nhập" và một ghim"Xuất".
Tham Số
Lợi Nhuận
GetGainAt
Trả giá trị lợi nhuận, bằng decibel, của đồ thị đáp ứng tần số được biểu diễn bởi bộ lọc ở tần số đã cho, bằng hertz.Nó có thể được sử dụng để lấy mẫu hình dạng chính xác của bộ lọc ở các vị trí chính hoặc toàn bộ.
Tham Số
Tần số, bằng hertz, để lấy mẫu.
Lợi Nhuận
Giá trị lợi nhuận, bằng decibel, ở tần số đã cho.
Sự Kiện
WiringChanged
Sự kiện xảy ra sau khi một Wire được kết nối hoặc mất kết nối, và sự kiện Wire bây giờ hoặc đã từng kết nối với một chốt trên AudioFilter và một số ví ví dụ / trường hợpkhác có thể kết nối được.
Tham Số
Whether ví dụ đã kết nối hay mất kết nối.
Chốt trên AudioFilter mà mục tiêu Wire nhắm.
Các Wire giữa AudioFilter và ví dụ / trường hợpkhác.