MCI 명령 분류

[이 페이지와 연결된 기능 MCI는 레거시 기능입니다. MediaPlayer로 대체되었습니다. MediaPlayer는 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 MCI 대신 MediaPlayer를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

MCI는 시스템, 필수, 기본 및 확장의 네 가지 명령 분류를 정의합니다. 다음 목록에서는 이러한 명령 분류에 대해 설명합니다.

  • 시스템 명령은 드라이버가 아닌 MCI에서 직접 처리합니다.
  • 필수 명령은 드라이버에서 처리됩니다. 모든 MCI 드라이버는 필요한 명령 및 플래그를 지원해야 합니다.
  • 기본 명령 (또는 선택적 명령)은 일부 디바이스에서 사용됩니다. 디바이스가 기본 명령을 지원하는 경우 해당 명령에 대해 정의된 플래그 집합을 지원해야 합니다.
  • 확장 명령은 디바이스 유형 또는 드라이버와 관련이 있습니다. 확장 명령에는 digitalvideo오버레이 디바이스 유형에 대한 put(MCI_PUT) 및 where(MCI_WHERE) 명령과 같은 명령과 기존 명령(예: 오버레이 디바이스 유형에 대한 상태(MCI_STATUS) 명령의 "stretch" 플래그)에 대한 확장이 포함됩니다.

시스템 및 필수 명령은 MCI 드라이버에 대해 설정된 최소 명령이지만 기본 및 확장 명령은 모든 드라이버에서 지원되지 않습니다. 애플리케이션은 항상 시스템 및 필수 명령 및 해당 플래그를 사용할 수 있지만 기본 또는 확장 명령 또는 플래그를 사용해야 하는 경우 먼저 기능 (MCI_GETDEVCAPS) 명령을 사용하여 드라이버를 쿼리해야 합니다. 다음 섹션에서는 각 범주의 특정 명령을 요약합니다.

시스템 명령

MCI는 MCI 디바이스에 전달하지 않고 다음 시스템 명령을 직접 처리합니다.

문자열 메시지 Description
휴식 MCI_BREAK MCI 디바이스에 대한 중단 키를 설정합니다.
Sysinfo MCI_SYSINFO MCI 디바이스에 대한 정보를 반환합니다.

 

필수 명령

모든 MCI 디바이스는 다음과 같은 필수 명령을 지원합니다.

문자열 메시지 Description
기능 MCI_GETDEVCAPS 디바이스의 기능을 가져옵니다.
가까이 MCI_CLOSE 디바이스를 닫습니다.
정보 MCI_INFO 디바이스에서 텍스트 정보를 가져옵니다.
열기 MCI_OPEN 디바이스를 초기화합니다.
status MCI_STATUS 디바이스에서 상태 정보를 가져옵니다. 이 명령의 플래그 중 일부는 필요하지 않으므로 기본 명령이기도 합니다.

 

디바이스는 필요한 명령에 대한 표준 명령 플래그 집합도 지원해야 합니다.

기본 명령

다음 목록에는 기본 명령이 요약되어 있습니다. MCI 디바이스에서 이러한 명령을 사용하는 것은 선택 사항입니다.

문자열 메시지 Description
로드 MCI_LOAD 파일에서 데이터를 로드합니다.
일시 중지 MCI_PAUSE 재생을 중지합니다. 현재 위치에서 재생 또는 녹화를 다시 시작할 수 있습니다.
재생 MCI_PLAY 출력 데이터 전송을 시작합니다.
레코드 MCI_RECORD 입력 데이터 기록을 시작합니다.
이력서 MCI_RESUME 일시 중지된 디바이스에서 재생 또는 녹화를 다시 시작합니다.
저장 MCI_SAVE 디스크 파일에 데이터를 저장합니다.
추구 MCI_SEEK 앞으로 또는 뒤로 찾습니다.
설정 MCI_SET 디바이스의 작동 상태를 설정합니다.
status MCI 상태 디바이스에 대한 상태 정보를 가져옵니다. 이는 필수 명령이기도 합니다. 일부 플래그는 필요하지 않으므로 여기에도 나열됩니다. (선택적 항목은 식별 가능한 위치가 있는 선형 미디어를 사용하는 디바이스를 지원합니다.)
중지 MCI_STOP 재생을 중지합니다.

 

드라이버가 기본 명령을 지원하는 경우 명령에 대한 표준 플래그 집합도 지원해야 합니다.

확장 명령

일부 MCI 디바이스에는 추가 명령이 있거나 기존 명령에 플래그를 추가합니다. 일부 확장 명령은 특정 디바이스 드라이버에만 적용되지만 대부분은 특정 디바이스 유형의 모든 드라이버에 적용됩니다. 예를 들어 sequencer 디바이스 유형에 대한 명령 집합은 set (MCI_SET) 명령을 확장하여 MIDI 시퀀서에 필요한 시간 형식을 추가합니다.

디바이스가 확장 명령 또는 플래그를 지원한다고 가정해서는 안 됩니다. 기능(MCI_GETDEVCAPS) 명령을 사용하여 특정 기능이 지원되는지 여부를 확인할 수 있으며 애플리케이션은 "지원되지 않는 명령" 또는 "지원되지 않는 함수" 반환 값을 처리할 준비가 되어 있어야 합니다.

다음 확장 명령은 나열된 디바이스 유형에서 사용할 수 있습니다.

문자열 메시지 디바이스 유형 설명
구성 MCI_CONFIGURE digitalvideo 구성 대화 상자를 표시합니다.
MCI_CUE digitalvideo, waveaudio 재생 또는 녹음을 준비합니다.
삭제 MCI_DELETE waveaudio 미디어 파일에서 데이터 세그먼트를 삭제합니다.
escape MCI_ESCAPE videodisc 디바이스에 사용자 지정 정보를 보냅니다.
동결 MCI_FREEZE 오버레이 프레임 버퍼에 대한 비디오 획득을 사용하지 않도록 설정합니다.
넣어 MCI PUT digitalvideo, overlay 원본, 대상 및 프레임 창을 정의합니다.
실현 MCI_REALIZE digitalvideo 표시된 창의 디바이스 컨텍스트에서 팔레트를 선택하고 실현하도록 디바이스에 지시합니다.
setaudio MCI_ SETAUDIO digitalvideo 비디오에 대한 오디오 매개 변수를 설정합니다.
setvideo MCI_ SETVIDEO digitalvideo 비디오 매개 변수를 설정합니다.
신호 MCI_SIGNAL digitalvideo 신호를 사용하여 지정된 위치를 식별합니다.
스핀 MCI_SPIN videodisc 디스크 회전을 시작하거나 디스크의 회전을 중지합니다.
step MCI_STEP digitalvideo, videodisc 하나 이상의 프레임을 앞으로 또는 반대로 재생합니다.
고정 MCI_UNFREEZE 오버레이 프레임 버퍼가 비디오 데이터를 가져올 수 있도록 합니다.
업데이트 MCI_UPDATE digitalvideo 현재 프레임을 디바이스 컨텍스트에 다시 칠합니다.
어디 MCI WHERE digitalvideo, overlay 원본, 대상 또는 프레임 영역을 지정하는 사각형을 가져옵니다.
MCI_WINDOW digitalvideo, overlay 표시 창을 제어합니다.