AudioChannelMixer
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
AudioChannelMixer birden fazla ses akışını tek bir, çok kanallı tüketkarıştırır.Birleşik bir Giriş sabitle, bir Çıkış sabitleve aşağıdaki ikinci giriş pini dahil olmak üzere tümü, hepsi Wires : Soldan , Sağdan , Orta , Etrafında Sola , Etrafında Sağa , Alt , Sola Geri , Sağa Geri , Üstten , Üstten , Üstten Sağa ve Üstten Sağa .

Kod Örnekleri
local Workspace = game:GetService("Workspace")
local function wireUp(source : Instance, target : Instance, sourceName : string?, targetName : string?)
local wire = Instance.new("Wire", source)
wire.SourceInstance = source
wire.TargetInstance = target
if sourceName then wire.SourceName = sourceName end
if targetName then wire.TargetName = targetName end
return wire
end
local listener = Instance.new("AudioListener")
listener.Parent = Workspace.CurrentCamera
local output = Instance.new("AudioDeviceOutput")
output.Parent = Workspace
local splitter = Instance.new("AudioChannelSplitter")
splitter.Parent = Workspace
local mixer = Instance.new("AudioChannelMixer")
mixer.Parent = Workspace
-- Send what the listener hears to a splitter and send a mix to the final output
wireUp(listener, splitter)
wireUp(mixer, output)
-- Set up both the splitter and mixer to use a quadrophonic layout
splitter.Layout = Enum.AudioChannelLayout.Quad
mixer.Layout = Enum.AudioChannelLayout.Quad
-- Give each of the four channels its own pitch shifter
local frontLeft = Instance.new("AudioPitchShifter")
frontLeft.Name = "Front Left"
frontLeft.Pitch = 1.25
frontLeft.Parent = Workspace
local backLeft = Instance.new("AudioPitchShifter")
backLeft.Name = "Back Left"
backLeft.Pitch = 0.5
backLeft.Parent = Workspace
local frontRight = Instance.new("AudioPitchShifter")
frontRight.Name = "Front Right"
frontRight.Pitch = 1.5
frontRight.Parent = Workspace
local backRight = Instance.new("AudioPitchShifter")
backRight.Name = "Back Right"
backRight.Pitch = 0.75
backRight.Parent = Workspace
wireUp(splitter, frontLeft, "Left")
wireUp(splitter, backLeft, "BackLeft")
wireUp(splitter, frontRight, "Right")
wireUp(splitter, backRight, "BackRight")
wireUp(frontLeft, mixer, nil, "Left")
wireUp(backLeft, mixer, nil, "BackLeft")
wireUp(frontRight, mixer, nil, "Right")
wireUp(backRight, mixer, nil, "BackRight")
-- Configure a part to emit audio
local part = Instance.new("Part")
part.Shape = Enum.PartType.Ball
part.Size = Vector3.new(4, 4, 4)
part.Material = Enum.Material.SmoothPlastic
part.CastShadow = false
part.Position = Vector3.new(0, 4, -12)
part.Anchored = true
part.Parent = Workspace
local analyzer = Instance.new("AudioAnalyzer")
analyzer.Parent = part
local emitter = Instance.new("AudioEmitter")
emitter.Parent = part
local assetPlayer = Instance.new("AudioPlayer")
assetPlayer.Looping = true
assetPlayer.Asset = "rbxassetid://97799489309320"
assetPlayer.Parent = emitter
wireUp(assetPlayer, emitter)
wireUp(assetPlayer, analyzer)
-- Start playing the audio
assetPlayer:Play()
-- Adjust the part's color as the audio plays
while true do
local peak = math.sqrt(analyzer.PeakLevel)
part.Color = Color3.new(peak, peak, peak)
task.wait()
end
Özet
Özellikler
Karıştırılacak çıkış kanalı düzenini kontrol eder.
Yöntemler
Belirtilen sabitlebağlı bir dizi Wires döndürür, ki bu pine bağlıdır.
Wire.TargetName tarafından seçilebilecek giriş düğmelerini döndürür.
Wire.SourceName için mevcut çıkış pini döndürür.
Etkinlikler
Başka bir örnek AudioChannelMixer üzerinden bir Wire aracılığıyla bağlanır veya bağlantı kesilirse ateş eder.
Özellikler
Layout
Karıştırılacak çıkış kanalı düzenini kontrol eder. Giriş pin'i AudioChannelMixer daima "olduğu gibi" Çıkış 'a yönlendirilir, ancak Layout 'un değerine bağlı olarak:
- For Mono için, Merkez pini ses akışlarını tüketir.
- For Surround_7_1_4 , tüm ikincil giriş pimleri ses akışlarını tüketir.
Yöntemler
GetConnectedWires
Belirtilen sabitlebağlı bir dizi Wires döndürür, ki bu pine bağlıdır.
Parametreler
Dönüşler
GetInputPins
Hangi giriş pimlerinin mevcut olduğunu gösteren bir tablo içeren bir dize döndürür Wire.TargetName :
- "Input"
- "Left"
- "Right"
- "Center"
- "SurroundLeft"
- "SurroundRight"
- "BackLeft"
- "BackRight"
- "Sub"
- "TopLeft"
- "TopRight"
- "TopBackLeft"
- "TopBackRight"
Dönüşler
GetOutputPins
Bir diziiçeren bir tablo döndürür, "Output" , çıkış pini Wire.SourceName için mevcut olduğunu gösterir.
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
Instans bağlandı veya bağlantı kesildi.
Hedeflerin AudioChannelMixer üzerindeki düğme. The pin on the that the Wire targets.
Wire arasındaki AudioChannelMixer ve diğer durumarasındaki.