다음을 통해 공유


IAudioClock::GetFrequency 메서드(audioclient.h)

GetFrequency 메서드는 디바이스 빈도를 가져옵니다.

구문

HRESULT GetFrequency(
  [out] UINT64 *pu64Frequency
);

매개 변수

[out] pu64Frequency

메서드가 디바이스 빈도를 쓰는 UINT64 변수에 대한 포인터입니다. 자세한 내용은 설명 부분을 참조하세요.

반환 값

메서드가 성공하면 S_OK가 반환되고, 실패할 경우 가능한 반환 코드에는 다음 표에 표시된 값이 포함되지만 이에 국한되지는 않습니다.

반환 코드 설명
E_POINTER
pu64Frequency 매개 변수는 NULL입니다.
AUDCLNT_E_DEVICE_INVALIDATED
오디오 엔드포인트 디바이스가 분리되었거나 오디오 하드웨어 또는 관련 하드웨어 리소스가 다시 구성, 비활성화, 제거 또는 사용할 수 없게 되었습니다.
AUDCLNT_E_SERVICE_NOT_RUNNING
Windows 오디오 서비스가 실행되고 있지 않습니다.

설명

디바이스 빈도는 오디오 디바이스의 하드웨어 클록에 의해 생성된 빈도입니다. 이 메서드는 IAudioClock::GetPosition 메서드가 보고하는 디바이스 위치와 호환되는 단위로 디바이스 빈도를 보고합니다. 예를 들어 특정 스트림에 대해 GetPosition 메서드가 p 위치를 바이트 오프셋으로 표현하는 경우 GetFrequency 메서드는 초당 빈도 f 를 바이트 단위로 표현합니다. 모든 스트림의 경우 p 및 f가 표현되는 단위에 관계없이 스트림 시작부터 몇 초 안에 오프셋을 pf로 안정적으로 / 계산할 수 있습니다.

Windows Vista에서 GetFrequency 에 대한 연속 호출로 보고된 디바이스 빈도는 스트림 수명 동안 변경되지 않습니다.

오디오 디바이스에서 생성된 클록이 명목상 일정한 빈도로 실행되는 경우 참조 클록과 관련하여 드리프트 또는 지터로 인해 시간이 지남에 따라 빈도가 약간 달라질 수 있습니다. 참조 클록은 QueryPerformanceCounter 함수에서 사용하는 벽 클록 또는 시스템 클록일 수 있습니다. GetFrequency 메서드는 이러한 변형을 무시하고 단순히 상수 빈도를 보고합니다. 그러나 IAudioClient::GetPosition 메서드에서 보고하는 위치는 호출할 때마다 정확한 위치 값을 보고하기 위해 이러한 모든 변형을 고려합니다. QueryPerformanceCounter에 대한 자세한 내용은 Windows SDK 설명서를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 audioclient.h

추가 정보

IAudioClock 인터페이스

IAudioClock::GetPosition