PKEY_AudioEndpoint_GUID

PKEY_AudioEndpoint_GUID 속성은 오디오 엔드포인트 디바이스에 해당하는 DirectSound 디바이스 식별자를 제공합니다. 속성 값은 클라이언트가 DirectSound API의 DirectSoundCreate 또는 DirectSoundCaptureCreate 함수에 디바이스 식별자로 제공할 수 있는 GUID입니다. 이 값은 시스템의 모든 오디오 엔드포인트 디바이스에서 오디오 엔드포인트 디바이스를 고유하게 식별합니다. DirectSound에 대한 자세한 내용은 DirectX SDK 설명서를 참조하세요.

PROPVARIANT 구조체의 vt 멤버는 VT_LPWSTR.

PROPVARIANT 구조체의 pwszVal 멤버는 DirectSound에서 오디오 엔드포인트 디바이스를 식별하는 GUID를 포함하는 null로 끝나는 와이드 문자열을 가리킵니다.

앞에서 설명한 대로 MMDevice API는디바이스 역할을 지원합니다. DirectSound는 디바이스 역할을 직접 지원하지 않지만 DirectSound 클라이언트는 PKEY_AudioEndpoint_GUID 속성을 사용하여 디바이스 역할에 따라 DirectSound 렌더링 또는 캡처 디바이스를 선택할 수 있습니다.

예를 들어 DirectSound 애플리케이션은 다음 단계를 수행하여 사용자가 eMultimedia 역할을 할당한 렌더링 엔드포인트 디바이스에 해당하는 DirectSound 디바이스를 만듭니다.

  1. IMMDeviceEnumerator::GetDefaultAudioEndpoint 메서드를 호출하여 eMultimedia 역할이 있는 렌더링 엔드포인트 디바이스의 IMMDevice 인터페이스를 가져옵니다.
  2. IMMDevice::OpenPropertyStore 메서드를 호출하여 eMultimedia 디바이스의 IPropertyStore 인터페이스를 가져옵니다. IPropertyStore에 대한 자세한 내용은 Windows SDK 설명서를 참조하세요.
  3. IPropertyStore::GetValue 메서드를 호출하여 PKEY_AudioEndpoint_GUID 속성 값을 가져옵니다.
  4. 속성 값을 문자열 형식의 GUID에서 16 바이트 GUID 구조체로 변환합니다.
  5. GUID를 사용하여 DirectSoundCreate 함수를 호출하여 eMultimedia 역할을 사용하여 디바이스를 만듭니다.

참고

PKEY_AudioEndpoint_GUIDIMMDevice::OpenPropertyStore에서 애플리케이션에서 요청한 스토리지 액세스 모드에 관계없이 읽기 전용 속성입니다. 애플리케이션이 IPropertyStore::SetValue를 사용하여 값을 설정하려고 하면 E_ACCESSDENIED 오류 코드와 함께 이 호출이 실패합니다.

 

4단계에서 생성된 16바이트 GUID는 DirectSound 디바이스 열거 중에 디바이스를 식별하는 디바이스 GUID와 일치합니다. DirectSoundEnumerate 함수는 렌더링 엔드포인트 디바이스를 열거하고 DirectSoundCaptureEnumerate 함수는 캡처 엔드포인트 디바이스를 열거합니다. 두 경우 모두 디바이스 GUID는 열거형 콜백 함수에 전달된 첫 번째 매개 변수입니다. DirectSound 열거형에 대한 자세한 내용은 DirectX SDK 설명서를 참조하세요.

PKEY_AudioEndpoint_GUID 속성을 사용하는 코드 예제는 DirectSound 애플리케이션에 대한 디바이스 역할을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2008 [데스크톱 앱만 해당]
헤더
Mmdeviceapi.h

추가 정보

오디오 엔드포인트 속성

핵심 오디오 속성