2013-06-17 2 views
0

나는 coremidi를 사용하고 있습니다 만, 외부 USB 기능도 지원하고 싶습니다.CoreMidi 및 외부 USB 컨트롤러

필자는 Midi 모니터라는 응용 프로그램을 사용해 보았습니다. 실제로 연결된 경우 내 USB 인터페이스를 찾습니다. 문제는 내 자신의 앱을 통해이 인터페이스를 활성화하는 방법입니다. MIDIGetNumberOfExternalDevices 문서에서 말했듯이, "그들의 존재는 Audio MIDI Setup과 같은 UI가 그들을 추가 할 때만 완전히 선택적입니다."

어떻게 추가해야합니까?

좋습니다.

답변

2

"외부 기기"는 이 아니며입니다. MIDI 케이블을 통해 컴퓨터에 연결된 신디사이저 또는 키보드 또는 기타 장치를 나타 내기 위해 사용자가 OS X의 오디오 MIDI 설정에서 만들 수있는 것들입니다. 시스템이 자동으로 시스템을 작성하지는 않습니다. (MIDI는 몹시 원시적이고 장치 발견 프로토콜을 가지고 있지 않기 때문에 불가능합니다.)

외부 장치는 이름을 지정하고 배열하는 데있어 사용자에게 유익합니다. MIDI 입력 또는 출력을 수행하는 데 사용할 수 없습니다. Audio MIDI Setup 앱이 없기 때문에 iOS에서는 특히 쓸모가 없습니다.

대신 MIDI 데이터 소스를 찾으려면 MIDIGetNumberOfSourcesMIDIGetSource을 사용하십시오.

실제로 입력을 얻으려면 MIDIInputPortCreate을 입력 포트로 만들고 MIDIPortConnectSource을 사용하여 하나 이상의 소스를 해당 포트에 연결하십시오. MIDI이 들어 오면 그런 다음 포트의 MIDIReadProc가 호출됩니다.

마찬가지로, 출력, 당신은 목적지까지의 포트를 통해 데이터를 전송, 목적지를 찾을 MIDIGetNumberOfDestinationsMIDIGetDestination를 사용 MIDIOutputPortCreate를 사용하여 출력 포트를 작성하고 MIDISend 것이다.

참고로 MIDIServices documentation을 참조하십시오.