AudioChannelMixer
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
AudioChannelMixer mescola più flussi audio in un singolo flusso multicanale.Fornisce un connettore combinato Input , un connettore Output , oltre a tutti i seguenti connettori di input secondari, tutti dei quali possono essere connessi a/da Wires Sinistra , Destra , Centro , Cerca a sinistra , Cerca a destra , Sub , Posteriore sinistra , Posteriore destra , TopLeft , TopRight , TopBackLeft , e TopBackRight .

Campioni di codice
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
Sommario
Proprietà
Controlla il layout del canale di uscita da mescolare.
Metodi
Restituisce un array di Wires che sono connessi al pin specificato.
Restituisce i pin di input che possono essere selezionati da Wire.TargetName .
Restituisce il pin di uscita disponibile per Wire.SourceName .
Eventi
Si accende quando un'altra istanza è connessa o disconnessa dal AudioChannelMixer attraverso un Wire .
Proprietà
Layout
Controlla il layout del canale di uscita da mescolare.Il pin di input di AudioChannelMixer è sempre forwarded "as-is" a Output , ma a seconda del valore di Layout :
- Per Mono , il pin Centro consuma flussi audio.
- Per Surround_7_1_4 , tutti i pin di input secondari consumano stream audio.
Metodi
GetConnectedWires
Restituisce un array di Wires che sono connessi al pin specificato.
Parametri
Restituzioni
GetInputPins
Restituisce una tabella di stringhe che indica quali pin di input sono disponibili per Wire.TargetName :
- "Input"
- "Left"
- "Right"
- "Center"
- "SurroundLeft"
- "SurroundRight"
- "BackLeft"
- "BackRight"
- "Sub"
- "TopLeft"
- "TopRight"
- "TopBackLeft"
- "TopBackRight"
Restituzioni
GetOutputPins
Restituisce una tabella che contiene una stringa, "Output" , che indica il pin di output disponibile per Wire.SourceName .
Restituzioni
Eventi
WiringChanged
Evento che si attiva dopo che un Wire diventa connesso o disconnesso, e che Wire è ora o era precedentemente connesso a un pin sulla AudioChannelMixer e a qualche altra istanza wirable.
Parametri
Se l'istanza è stata connessa o disconnessa.
Il pin sul AudioChannelMixer che i bersagli Wire .
Il Wire tra la AudioChannelMixer e l'altra istanza.