DirectMusic 의 기능
DirectMusic 의 기능
DirectMusic 에는, 사운드의 재생 이외에도 다양한 기능이 있다. 하드웨어 가속화, (DLS), (DMO), 고도의 3D 배치 이펙트를 활용하는 다이나믹 사운드 트랙을 처리하기 위한 시스템을 제공한다.
애플리케이션으로 DirectMusic 인터페이스를 사용하는 것에 의해, 다음과 같은 처리가 가능하다.
- MIDI, WAV, 또는 DirectMusic Producer 런타임 형식의 파일이나 리소스로부터 사운드를 로드해 재생한다.
- 복수의 소스를 동시에 재생한다.
- 높은 정밀도로 뮤직 이벤트의 타이밍을 스케줄 한다.
- 템포의 변경, 패치의 변경, 그 외의 MIDI 이벤트를 프로그램에 의해 송신한다.
- 다운로더블 사운드를 사용한다. DLS 를 사용하는 것으로, 애플리케이션은, 메시지 베이스의 곡을 어느 컴퓨터로도 똑같이 재생할 수 있다. 애플리케이션은 어떠한 음색으로도 재생할 수 있어 각각의 노트와 velocity에 응해 독자적인 소리를 생성할 수 있다.
- 3D 환경에 사운드를 배치한다.
- 피치의 변경, 리버브, 그 외의 이펙트를 간단하게 적용한다.
- 16 을 넘는 MIDI 채널을 사용한다. DirectMusic 를 사용하면 신디사이저의 제한의 범위내에서, 임의의 수의 음성을 동시에 연주할 수 있다.
- 세그먼트(segment)를 다른 오디오 패스로 재생해, 이펙트 또는 공간적인 확대를 각 세그먼트(segment)에 각각에 적용한다.
- MIDI 데이터를 캡춰 하거나 있는 포트로부터 다른 포트에 스트리밍 ("전송") 한다.
DirectMusic Producer 의 소스 파일을 사용하면 한층 더 다음과 같은 처리가 가능하다.
- 다른 바리에이션을 선택하거나 코드 진행을 변경하거나 해, 실행시에 재생의 다양한 면을 제어한다.
- 반복할 때마다 약간 다른 곡을 재생한다.
- 웨이브 폼에 바리에이션을 붙여 재생한다.
- 을 오디오 패스에 맵 하는 것에 의해, 동일 세그먼트(segment)내에서, 부분에 의해 다른 이펙트를 적용한다.
- 알고리즘에 의해 생성하는 것이 아니라, 작곡자가 지정한 요소에 근거해, 실행시에 완전히 새로운 곡을 생성 한다.
- 기존의 곡간의 트랜지션을 동적으로 어레인지 한다.
- 트랜지션, 모티프, 사운드 이펙트에 큐를 내, 퍼포먼스내의 지정한 리듬 포인트로 재생한다.
이러한 기능은, 주류가 되고 있는 애플리케이션으로 일반적으로 사용되고 있는 기능이다. DirectMusic 는 기본적인 태스크에 대해 용이하게 사용할 수 있도록(듯이) 설계되고 있지만, 필요에 따라서 하위 레벨의 액세스도 제공되고 있다. 또, 확장도 가능하다. 특수한 애플리케이션에서는, 다음과 같이, 오디오 패스의 사실상 모든 단계에서 새로운 개체를 처리 할 수 있다.
- 새로운 형식 또는 독자적인 형식의 데이터를 해석하는 로더.
- 임의의 종류의 순서화 된 데이터를 포함한 트랙.
- 메시지를 처리하는 툴. 예를 들어, 노트를 도중에 처리해 전조를 적용하거나 세그먼트(segment) 파일에 파묻힌 가사를 표시하는 메시지를 처리한다.
- 커스텀 시퀀서.
- 커스텀 신디사이저.
- 이펙트 필터.
Microsoft Windows® 98 및 Microsoft Windows 2000 이후에서는, DirectMusic 의 전기능이 제공된다. 하드웨어 신디사이저의 지원은, Windows 98 Second Edition, Windows 2000, 그 이후의 operating system에서만 이용할 수 있다. 디폴트의 Microsoft 소프트웨어 신디사이저는 항상 이용할 수 있다.
DirectMusic 는 WAV 파일을 로드해 연주하는 기능을 갖추고 있지만, 고도로 최적화된 퍼포먼스, 또는 사운드 버퍼에 대한 하위 레벨의 제어를 필요로 하는 애플리케이션에서는, DirectSound API 를 사용할 수도 있다. 2 종류의 API 의 비교에 대해서는, 「DirectSound 과 DirectMusic 」를 참조할것.