AudioEqualizer

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Class.AudioEqualizer menyesuaikan konten frekuensi dari stream audio. Ini menyediakan satu Masukan pin dan satu Keluar pin yang dapat dihubungkan ke/dari dengan 0> Class.Wire|Wires0> . AudioEqualizer3> mem

Contoh Kode

Listener Equalization

local function wireUp(source: Instance, target: Instance) : Wire
local wire = Instance.new("Wire")
wire.Parent = target
wire.SourceInstance = source
wire.TargetInstance = target
return wire
end
local function getCFrameFrom(inst: Instance) : CFrame?
local parent = inst.Parent
if not parent then
return nil
elseif parent:IsA("Model") then
return parent.WorldPivot
elseif parent:IsA("BasePart") then
return parent.CFrame
elseif parent:IsA("Attachment") then
return parent.WorldCFrame
elseif parent:IsA("Camera") then
return parent.CFrame
else
return nil
end
end
local function rescale(value: number, oldRange: NumberRange, newRange: NumberRange) : number
local clamped = math.clamp(value, oldRange.Min, oldRange.Max)
local normalized = clamped - oldRange.Min / (oldRange.Max - oldRange.Min)
return normalized * (newRange.Max - newRange.Min) + newRange.Min
end
local assetPlayer = Instance.new("AudioPlayer")
assetPlayer.AssetId = "rbxassetid://142376088"
assetPlayer.Parent = workspace
local equalizer = Instance.new("AudioEqualizer")
equalizer.MidRange = NumberRange.new(400, 3000)
equalizer.Parent = workspace
local emitterPart = Instance.new("Part")
emitterPart.Anchored = true
emitterPart.Position = Vector3.new(0, 5, 0)
emitterPart.Parent = workspace
local emitter = Instance.new("AudioEmitter")
emitter.Parent = emitterPart
local listener = Instance.new("AudioListener")
listener.Parent = workspace.CurrentCamera
local output = Instance.new("AudioDeviceOutput")
output.Parent = workspace
wireUp(assetPlayer, equalizer)
wireUp(equalizer, emitter)
wireUp(listener, output)
assetPlayer.Looping = true
assetPlayer:Play()
while true do
local emitterFrame = getCFrameFrom(emitter)
local listenerFrame = getCFrameFrom(listener)
if emitterFrame and listenerFrame then
local towardEmitter = emitterFrame.Position - listenerFrame.Position
local look = towardEmitter.Unit:Dot(listenerFrame.LookVector) -- ranges from [-1, 1]
look = rescale(look, NumberRange.new(-1, 1), NumberRange.new(-20, 0))
local distance = math.max(towardEmitter.Magnitude, 1)
local rolloff = 1 / distance -- ranges from [0, 1]
rolloff = rescale(rolloff, NumberRange.new(0, 1), NumberRange.new(-10, 10))
equalizer.HighGain = look + rolloff
equalizer.LowGain = rolloff
end
task.wait()
end

Rangkuman

Properti

  • Baca Paralel

    Apakah aliran audio diberikan-lewati tanpa terpengaruh oleh efek ini.

  • Tidak Direplikasi
    Keamanan Skrip Roblox
    Baca Paralel
  • Baca Paralel

    Dapatkan nilai untuk diterapkan ke konten frekuensi band tertinggi dalam equalizer.

  • Baca Paralel

    Dapatkan nilai untuk diterapkan ke konten frekuensi band terendah dalam equalizer.

  • Baca Paralel

    Dapatkan nilai untuk diterapkan ke konten frekuensi band tengah di equalizer.

  • Baca Paralel

    Frequensi band yang dipengaruhi oleh MidGain .

Metode

Properti

Bypass

Baca Paralel

Jika true, aliran audio dilewati-melalui tidak terpengaruh oleh efek ini.

Editor

Tidak Direplikasi
Keamanan Skrip Roblox
Baca Paralel

HighGain

Baca Paralel

Dapatkan nilai, dalam decibel, untuk diterapkan ke konten frekuensi band tertinggi di equalizer. Berbagai dari -80 hingga 10.

LowGain

Baca Paralel

Dapatkan nilai, dalam decibel, untuk diterapkan ke konten frekuensi band terendah di equalizer. Berbagai dari -80 hingga 10.

MidGain

Baca Paralel

Dapatkan nilai, dalam decibel, untuk diterapkan ke konten frekuensi band tengah dalam equalizer. Berjalan dari -80 hingga 10.

MidRange

Baca Paralel

Frequensi band yang dipengaruhi oleh MidGain . Angka rendah dari rentang frekuensi menentukan frekuensi over cross antara band rendah dan menengah. Angka tinggi dari rentang frekuensi menentukan frekuensi over cross antara band tinggi dan rendah. Kedua frekuensi over cross menangkap dari 200 hingga 20.000.

Metode

GetConnectedWires

Instances

Mengembalikan matriksi dari Wires yang terhubung ke mengepinyang ditentukan. AudioEqualizer memiliki satu pin "Input" dan satu mengepin"Output".

Parameter

pin: string

Memberikan nilai

Instances

Acara