2017-11-02 1 views
4

Scene Kit/ARKit에서 위치 오디오를 탐색 해 왔으며이 컨텍스트에서 AudioKit을 사용하여 분석, 사운드 생성, 효과에 대한 상위 수준의 도구를 활용할 수 있는지 알고 싶습니다.위치 기반 오디오 (Audio in SceneKit/ARKit)

일부 배경의 경우 SCNView는 AVAudioEnvironmentNode, AVAudioEngine 및 audioListener (SCNNode)와 함께 제공됩니다. 이러한 등록 정보는 환경 노드가 이미 엔진에 구성되어 초기화됩니다. 위치 오디오 소스는 AVAudioNode로 초기화 할 수있는 SCNAudioPlayer를 통해 장면에 추가됩니다. AVAudioNode는 환경 노드에 연결되어야하고 모노 출력을 가져야합니다.

SCNAudioPlayer는 장면의 SCNNode에 추가되고 scene의 위치 및 audioListener 노드의 위치와 방향에 따라 AVAudioNode의 출력을 자동으로 수정합니다.

내 희망은 제대로 연결하는 SCNView의 AVAudioEngine 속성을 AudioKit를 초기화 엔진의 노드 그래프 내에서 SCNView의 환경 노드를 구성, SCNAudioPlayers를 초기화하는 AKNodes의 AVAudioNode 속성을 사용하고, 모든 소스를 확보 할 수있을 것입니다 환경 노드. 이미 AudioKit 소스 코드를 수정하기 시작했으나, 적응해야 할 클래스와 환경 노드를 AudioKit 파이프 라인에 통합하는 방법을 알아내는 데 어려움을 겪고 있습니다. 특히 connectionPoints 및 outputNode 속성을 이해하는 데 문제가 있습니다.

누구나 AudioKit이 구조화 된 방식이나 접근 방식에 대한 지침이 없으므로이 방법이 불가능할 수도 있다고 생각하십니까?

물론 내 결과를 기쁜 마음으로 알려 드리겠습니다.

https://github.com/AudioKit/AudioKit/blob/master/AudioKit/Common/Internals/AudioKit.swift#L38

을하지만 SceneView의 오디오 엔진을 덮어 쓸 수 있어야한다, 그래서 그것은 열려 :

+2

이것은 훌륭한 목표처럼 들립니다. 한 때 AK에 3D 오디오 예제가 포함되었습니다. 당신이 AK에 귀중한 도움이 될 것 같은 소리를 내고 있습니다. AK Slack 그룹 초대장을 원하십니까? 그렇다면 내 이메일은 [email protected] – analogcode

+0

입니다. 고맙습니다. 이메일을 쏠거야. – cgmaier

답변

1

AudioKit는 AudioKit.swift 라인 (38)에 AVAudioEngine의 자신의 인스턴스를 만듭니다. 나는 그것을 막을 수있는 어떤 것도 보이지 않는다.

+0

약간의 업데이트가 있습니다. 저는 장면 뷰와 함께 제공되는 오디오 엔진이 현재 AudioKit에 적합하지 않을 수 있다고 생각했습니다. 불행히도. 장면 뷰 audioEngine의 inputNode 속성 (AVAudioInputNode)은 종종 샘플 속도가 0이므로 다른 엔진이 마이크에서 녹음을 용이하게해야합니다. AVAudioEngine의 전체 기능 세트가 Scene Kit/ARKit의 컨텍스트에서 아직 안정적이지 않을 수 있다고 믿는 것은 오디오 세션/엔진 설정과 관련하여 내가 아는 다른 특성과 마찬가지입니다. – cgmaier