다음을 통해 공유


CoreMidi 네임스페이스

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

클래스

IOErrorEventArgs

IOError 이벤트에 대한 데이터를 제공합니다.

Midi

CoreMidi를 사용하기 위한 전역 메서드 및 상수입니다.

Midi.Notifications

클래스에서 게시한 알림입니다 Midi .

MidiCIProfile

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiCIProfileState

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiCISession

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiClient

MacOS X 및 iOS에서 MIDI를 사용하는 기본 진입점입니다.

MidiDevice

MIDI 디바이스를 나타냅니다(일반적으로 하드웨어 디바이스를 나타내지만 가상 디바이스도 있음). 디바이스에는 하나 이상의 엔터티가 포함될 수 있습니다.

MidiDeviceList

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiEndpoint

엔드포인트는 MIDI 스트림의 개별 원본 또는 대상을 나타냅니다.

MidiEntity

MidiObject 의 하위 구성 요소를 나타내는 입니다MidiDevice.

MidiException

Midi 메서드에서 발생하는 예외입니다.

MidiNetworkConnection

를 사용하여 MIDI 네트워크 호스트에 대한 연결입니다 MidiNetworkSession.

MidiNetworkHost

원격 MIDI 호스트입니다.

MidiNetworkSession

다양한 MIDI 엔터티 간에 를 MidiNetworkConnection유지하는 싱글톤 클래스입니다.

MidiObject

, , MidiDeviceMidiPortMidiEntityMidiEndpoint 클래스의 MidiClient기본 클래스입니다.

MidiPacket

일련의 MIDI 이벤트를 캡슐화합니다.

MidiPacketsEventArgs

E:CoreMidi.MidiPacketsEventArgs.MessageReceived 이벤트에 대한 MessageReceived 데이터를 제공합니다.

MidiPort

입력 및 출력 포트.

MidiThruConnection

MIDI 재생 연결을 관리합니다.

MidiThruConnectionParams

MIDI 변환 및 라우팅.

ObjectAddedOrRemovedEventArgs

E:CoreMidi.ObjectAddedOrRemovedEventArgs.ObjectRemoved 이벤트에 대한 ObjectRemoved 데이터를 제공합니다.

ObjectPropertyChangedEventArgs

PropertyChanged 이벤트에 대한 데이터를 제공합니다.

구조체

MidiCIDeviceIdentification

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiControlTransform

MIDI 컨트롤의 변환을 나타냅니다.

MidiThruConnectionEndpoint

의 원본 또는 대상입니다 MidiThruConnection.

MidiTransform

MIDI 이벤트가 변환되는 방법을 정의하는 개체입니다.

MidiValueMap

MIDI 값 맵입니다.

열거형

MidiError

CoreMIDI 스택에서 발생한 오류입니다.

MidiNetworkConnectionPolicy

값이 MIDI 네트워크 세션에 연결할 수 있는 호스트를 지정하는 열거형입니다.

MidiTransformControlType

MIDI 컨트롤 변환 형식입니다.

MidiTransformType

MIDI 변환 형식입니다.

대리자

MidiCIProfileChangedHandler

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiCIPropertyChangedHandler

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

MidiCIPropertyResponseHandler

CoreMidi 네임스페이스는 MIDI 하위 시스템과 상호 작용하기 위한 클래스를 제공합니다.

설명

CoreMIDI는 iOS 및 OSX의 MIDI 서버와 대화하는 API로, Mac 또는 iOS 디바이스에 연결된 MIDI 디바이스와 상호 작용합니다.

CoreMIDI를 사용하는 경우 MIDI 스택의 여러 부분을 처리하는 다양한 클래스가 실행되며, 다음 그래픽은 관계를 보여 줍니다.

MIDI 디바이스 자체는 클래스로 MidiDevice 표시됩니다. 디바이스에는 하나 이상의 엔터티(MidiEntity)가 포함될 수 있습니다. 예를 들어 MIDI 디바이스에는 두 개의 독립적인 MIDI 톤 생성기가 포함될 수 있습니다. 각 엔터티에는 원본 또는 운명인 일련의 엔드포인트가 포함되어 있습니다. MIDI 원본과 MIDI 대상은 모두 클래스에 의해 MidiEntity 캡슐화됩니다.

MIDI로 시작하려면 개체를 MidiClient 만들어야 합니다. 이 개체는 애플리케이션과 MIDI 서버 프로세스 간의 게이트웨이입니다. 이 개체가 발생시키는 이벤트를 구독하여 추가, 제거되는 디바이스 및 해당 속성 및 설정 구성의 변경 내용을 추적합니다.

또한 를 MidiClient 사용하여 입력 포트 및 출력 포트를 만듭니다. 입력 포트는 새 MIDI 데이터를 사용할 수 있을 때 이벤트를 발생 MessageReceived 시키고 수신된 인수에서 속성을 사용하여 Packets 데이터를 가져올 수 있습니다.

MidiClient 설정 방법의 예제는 클래스를 참조하세요.

네트워크 MIDI 연결을 사용하려면 다음과 같이 네트워크 세션을 사용하도록 설정하고 연결 정책을 설정해야 합니다.

var session = MidiNetworkSession.DefaultSession;
session.Enabled = true;
session.ConnectionPolicy = MidiNetworkConnectionPolicy.Anyone;

원격 MIDI 네트워크 호스트에 연결하려면 다음과 같이 를 MidiNetworkHost사용합니다.

var host = MidiNetworkHost.Create ("My Session", "myhost.xamarin.com", 5004);
var connection = MidiNetworkConnection.FromHost (host);