BOOL CAudioHelper::SetWin7AudioLeftMute(void)
{
HRESULT hr=NULL;
double nVolume = (double)0;
double newVolume=nVolume;
CoInitialize(NULL);
IMMDeviceEnumerator *deviceEnumerator = NULL;
hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), NULL, CLSCTX_INPROC_SERVER,
__uuidof(IMMDeviceEnumerator), (LPVOID *)&deviceEnumerator);
IMMDevice *defaultDevice = NULL;
hr = deviceEnumerator->GetDefaultAudioEndpoint(eRender, eConsole, &defaultDevice);
deviceEnumerator->Release();
deviceEnumerator = NULL;
IAudioEndpointVolume *endpointVolume = NULL;
hr = defaultDevice->Activate(__uuidof(IAudioEndpointVolume),
CLSCTX_INPROC_SERVER, NULL, (LPVOID *)&endpointVolume);
defaultDevice->Release();
defaultDevice = NULL;
float fVolumeMin, fVolumeMax, fVolumeInc;
endpointVolume->GetVolumeRange(&fVolumeMin, &fVolumeMax, &fVolumeInc);
UINT uiChannelCount;
endpointVolume->GetChannelCount(&uiChannelCount);
for (UINT i=0; i<uiChannelCount; i++ )
{
if ( i == 1 )
continue;
endpointVolume->SetChannelVolumeLevel(i, fVolumeMin, NULL);
}
endpointVolume->Release();
CoUninitialize();
return TRUE;
}
덧글