문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 DirectX (문단 편집) ==== DirectMusic ==== 원래는 Interactive Music Architecture라는 이름으로 [[ActiveX]] 컨트롤 중 하나로 소개되었다가 DirectX 6.1부터 DirectMusic이라는 이름으로 정식으로 수록된 API. 기본적으로 DirectSound와 비슷한 일을 하지만 [[MIDI]]를 기반으로 한 인터랙티브한 BGM 연출 기능이 주력인 것이 특징. 원래의 의도는 게임의 전개에 따라 실시간으로 MIDI 음악을 생성해서 재생할 수 있도록 하는(실시간 BGM 작곡) 나름 신박한 비전을 가지고 있었지만 이미 이 API가 등장했을 때부터 MIDI를 사용하는 게임이 급속하게 줄어들던 시기였고 결국 DirectX 8.0부터 DirectSound쪽으로 통합되었으며 이후 단종되었다.[* 이러한 실시간 컴포지션 기능들은 훗날 wwise나 fmod에서 PCM 기반으로 다시 등장한다.] [[Windows Vista]]부터는 호환성 문제를 일으키는 경우가 있다. 또한 MIDI IN을 커널 단계에서 바로 OUT으로 thru 하는 기능이 있었다. DirectMusic이 deprecated된 지금의 Windows 유저모드에서는 정상적인 루틴으로 구현할 방법이 없는 기능이다. 다만 DirectMusic이 남긴 유산으로 MIDI에 [[https://docs.microsoft.com/ko-kr/windows-hardware/drivers/audio/dmus-miniport-driver|DMus Miniport 드라이버 모델]]이 있어서, 기존 Windows 98시절부터 쓰던 MME 방식 드라이버의 높은 레이턴시와 지터를 극복하는 드라이버 모델로써 [[https://docs.microsoft.com/ko-kr/windows-hardware/drivers/audio/midi-and-directmusic-components|2022년 현재에도 현역으로 동작]]중이다. Microsoft가 새롭게 내놓은 [[https://blogs.windows.com/windowsdeveloper/2016/09/21/midi-enhancements-in-windows-10/|UWP 기반의 MIDI API에서도 정식으로 DMus Miniport 형식 드라이버를 지원]]하고 있다.[* UWP가 아닌 네이티브 코딩으로 이 DMus Miniport의 혜택을 얻기 위해서는 직접 WDM 드라이버에 DeviceIoControl 을 호출하여 커널 스트리밍 데이터를 처리하거나, DirectMusic을 쓸 수 밖에 없어서 지금도 이 deprecate된 API를 갖다 쓰는 경우가 많다. 대책없이 deprecate 시켜놓고 아직도 네이티브용 대체 API를 내놓지 않는 Microsoft 탓이다.] Pro Tools/Cubase 등 프로 뮤지션 툴에서 '''[에뮬레이트됨]'''이라고 표시되는 미디 포트들은 구형 MME만 지원하고 DMus Miniport 드라이버를 지원하지 않는 인터페이스를 윈도우가 DMus Miniport로 에뮬레이트하고 있음을 의미하며 이렇게 표시될 경우 지터와 레이턴시가 개선되지 않으므로 [에뮬레이트됨]이 표시되지 않는 미디 인터페이스로 교체할 필요가 있다.[* 그리고 DMus Miniport를 지원하는, 즉 '''에뮬레이트됨'''이 표시되지 않는 인터페이스는 RME 등 꽤 비싼 인터페이스들이다.]저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기