2017-11-12 27 views
3

CoreMIDI 용어는 이미 매우 혼란스럽고 심하게 문서화되어 있으며, Audiokit은 내가 원하는대로 도움을주지 못합니다.Audiokit MIDI 초기화가 혼란 스럽습니다.

내가 알 수있는 한, 각 응용 프로그램에는 midi 클라이언트 참조 (MIDIClientRef) 인스턴스가 하나 있어야합니다. Audiokit은 각각 AKMIDI 인스턴스에 대해 새로운 클라이언트 참조를 생성하는 AKMIDI 클래스를 가지고 있으며 인스턴스는 각각 AKMIDIInstrument, AKCallbackInstrumentAKMIDISampler 인스턴스의 초기화를 포함하여 왼쪽, 오른쪽 및 가운데에 생성됩니다. 이것들 모두는 내장 된 생성자에 하드 코드 된 이름을 가진 끝점을 만들므로 적절한 이름을 가진 것들을 어떻게 만들어야하는지 알지 못합니다.

/// Initialize the MIDI Sampler 
public override init() { 
    super.init() 
    enableMIDI() 
} 

하고 다음 몇 라인 :

/// Enable MIDI input from a given MIDI client 
/// This is not in the init function because it must be called AFTER you start AudioKit 
/// 
/// [snipped parameter comments for brevity] 
open func enableMIDI(_ midiClient: MIDIClientRef = AKMIDI().client, name: String = "MIDI Sampler") 

가 IT ( 는 초기화 기능에 않는다)

최고 가격 소스가 제 말한다 AKMIDISampler 간다

일반 사용 가이드 라인에 대한 설명을 듣는 것이 매우 행복 할 것입니다. ything?) 또는이를 상세히 설명하는 문서/기사에 대한 링크.

답변

1

# 1141 PR로이 문제를 해결했습니다. https://github.com/AudioKit/AudioKit/pull/1141/files

다음 릴리스까지 podfile의 개발 분기를 가리킬 수 있습니다.

pod 'AudioKit', :git => 'https://github.com/AudioKit/AudioKit.git', :branch => 'develop' 
+0

귀하의 홍보는 이름 지정 문제를 해결하는 것으로 보입니다. 그리고 midi 클라이언트 참조 문제를 처리하는 개발 지점이 개선되었으므로이 답변을 채점 해 드리겠습니다. 문서는 여전히 오해의 소지가 있습니다. 나는 그것과 함께 살 수 있지만 질문을 찾을 수있는 사람을 위해이 의견을 남겨주세요. – whistler