2012-06-28 3 views
1

코드에 midi 입력 포트를 설정하고 수신 된 MIDI 데이터를 읽는 콜백을 연결했습니다. 그게 다 잘되고있어. Midi Timecode를 읽고 콜백에서 파싱합니다. 내가 알아챈 점은 응용 프로그램을 시작할 때 MTC를 전송하는 장치에서 1 초 정도 늦을 수 있다는 것입니다. 때로는 프레임 뒤에 있습니다. 비용을 불문하고 불일치하고 좌절합니다. 내 readProc에서 Obj-C 호출을 막거나 차단하지 않습니다. 나도 내 응용 프로그램을 실행 한 후 별난 IOKit 물건이 있는지 확인하기 위해 내 USB 미디 장치의 연결을 끊는 문제에 직면했습니다. 나는 야생 도움이되는 이론조차도 실제로 어떤 도움을 사용할 수 있습니까? 미디 타임 스탬프가 쓸모없는 것 같아요. 그들을 비교할 객관적인 참조가 없기 때문입니다.CoreMidi midi 시간 코드

답변

0

나는 당신이 여기에서하고있는 일을 알고 있고 실제적인 MIDI 시간 코드를 의미하며, 두 가지 동기화 방법 중 더 일반적인 MIDI 시계를 의미하지 않는다고 가정 할 것입니다. 그럼에도 불구하고 MIDI가 느리고 사용자가 적절하게 반응 할 수 있도록 클라이언트에 오프셋 (밀리 초 단위)을 제공해야합니다. 예를 들어, Ableton의 라이브가 어떻게하는지 살펴 :

enter image description here

나는 위의 스크린 샷은 MIDI 클럭을위한 실현,하지만 같은뿐만 아니라 MTC에 적용해야합니다. 이탈 상태를 확인하기 위해 런타임 조건에 따라 대기 시간이 변경되므로 일부 유형의 UI를 제공해야 할 수 있습니다.

+1

감사합니다. 내가 발견 한 것은 훌륭한 미디 인터페이스를 사용하는 것이 중요하다는 것입니다. 나는 2x2의 버스 전원 공급 장치 인 미디 맨을 사용하고있었습니다. 어떻게 든이 장치는 간헐적으로 뒤에 있습니다. 일단 MOTU 미디 시계를 연결하면 모든 것이 계획대로 작동하기 시작했습니다. 내가 대기 시간을 자문하에 받겠다. – kernelK