Я пытаюсь воспроизвести позиционное аудио, используя передний и задний каналы в комплекте Sprite, и тестирование на устройстве Apple TV.Возможно ли 5.1-канальный позиционный аудиовыход в комплекте Sprite?
Я использую следующий код:
let musicURL = NSBundle.mainBundle().URLForResource("music", withExtension: "m4a")
let music = SKAudioNode(URL: musicURL!)
addChild(music)
music.positional = true
music.position = CGPoint(x: 0, y: 0)
let moveForward = SKAction.moveToY(1024, duration: 2)
let moveBack = SKAction.moveToY(-1024, duration: 2)
let sequence = SKAction.sequence([moveForward, moveBack])
let repeatForever = SKAction.repeatActionForever(sequence)
music.runAction(repeatForever)
То, что я хочу сделать это звук, который прокручивается от переднего к задним каналам, но Sprite Kit, похоже, использует только стерео выход 2 канала.
Если я использую moveToX вместо moveToY, я получаю звуковое панорамирование слева направо.
У меня наверняка отсутствует код инициализации, чтобы сигнализировать, что я хочу выход звука 5.1, но я не уверен, что позиционная функция SKAudioNode работает только для 2-канального стереовыхода.
Это позиционное аудио с более чем двумя каналами, доступными в комплекте Sprite, или я должен использовать AVFoundation или даже OpenAL для этого?
Я пробовал аналогичный код с SceneKit, и кажется, что он также использует только 2 канала для позиционного звука.
Из того, что я прочитал в документации, что причина может быть, что нижележащий AVAudioEnvironmentNode не настроена с надлежащей компоновки звукового канала. – xpereta