Я пишу какое-то приложение о локализации звука, и я использовал .isPositional
в SCNAudioPlayer
для создания пространственного звука на SCNNode
. Вот как выглядят мои коды:
func spatialAudio(inputNode: SCNNode){
let audio = SCNAudioSource(fileNamed: "source.wav")
audio!.isPositional = true
audio?.load()
let player = SCNAudioPlayer(source: audio!)
inputNode.addAudioPlayer(player)
}
Но результат пространственного звука не совсем хорош, так как пользователю трудно локализовать источник звука. Есть ли другой способ создать более реалистичный пространственный звук в Swift?
Я слышал о некоторых алгоритмах, используемых в локализации звука, таких как передаточная функция, связанная с головой (HRTF), межвузовая разница во времени (ITD) и межвузовая разница в уровне (ILD). Использует ли позиционный звук Swift эти алгоритмы? Если это не так, как я могу изменить звук, чтобы использовать эти алгоритмы?