다음을 통해 공유


MIDI 미니포트 드라이버

MIDI 미니포트 드라이버는 하드웨어 시퀀싱 및 DLS(다운로드 가능한 소리)와 같은 고급 기능이 부족한 간단한 MIDI 디바이스의 하드웨어 종속 기능을 관리합니다. MIDI 포트 드라이버는 MIDI 메시지를 신디사이저에 배달하는 타이밍을 처리합니다. MIDI 미니포트 드라이버는 포트 드라이버의 요청에 대한 응답으로 MIDI 메시지를 신시사이저로 전송하는 것만 담당합니다. 고급 MIDI 기능이 있는 디바이스는 DMus 미니포트 드라이버를 대신 사용해야 합니다.

MIDI 미니포트 드라이버는 다음 두 인터페이스를 구현해야 합니다.

  • 미니포트 인터페이스는 미니포트 개체를 초기화하고 MIDI 스트림을 만듭니다.

  • 스트림 인터페이스는 MIDI 스트림을 관리하고 미니포트 드라이버의 대부분의 기능을 노출합니다.

미니포트 인터페이스인 IMiniportMidiIMiniport 인터페이스의 메서드를 상속합니다. IMiniportMidi 는 다음과 같은 추가 메서드를 제공합니다.

IMiniportMidi::Init

미니포트 개체를 초기화합니다.

IMiniportMidi::NewStream

새 스트림 개체를 만듭니다.

IMiniportMidi::Service

미니포트 드라이버에 서비스 요청을 알 수 있습니다.

스트림 인터페이스인 IMiniportMidiStreamIUnknown 인터페이스의 메서드를 상속합니다. IMiniportMidiStream 은 다음과 같은 추가 메서드를 제공합니다.

IMiniportMidiStream::Read

MIDI 캡처 디바이스에서 입력 데이터를 읽습니다.

IMiniportMidiStream::SetFormat

MIDI 스트림의 데이터 형식을 설정합니다.

IMiniportMidiStream::SetState

MIDI 스트림의 상태를 설정합니다.

IMiniportMidiStream::Write

출력 데이터를 MIDI 신시사이저에 씁니다.

MIDI 포트 드라이버는 양방향으로 모든 타이밍 문제를 처리하고 미니포트 드라이버에 의존하여 IMiniportMidiStream 읽기 및 쓰기 메서드에 대한 포트 드라이버의 호출에 대한 응답으로 어댑터에서 데이터를 즉시 이동 및 끕니다.

PortCls에는 FM 신디사이저 및 UART 함수가 있는 MIDI 디바이스용 기본 제공 MIDI 미니포트 드라이버가 포함되어 있습니다. 자세한 내용은 PcNewMiniport를 참조하세요.