Вниз
Скачать: CL | DM;

Громкость   Найти похожие ветки 

← →
MRB_SPB ©   (2003-01-08 13:25) [0]

С помошью чего (тобишь каких) функций можно регулировать уровень выходного сигнала для различных устройств
Что-то наподобе виндовкого регулятора уровней
Функцию API или пример если есть


← →
aga ©   (2003-01-11 17:57) [1]

Вот пример,правда он не на Delphi:


INT GetMasterVolumeControlID()
{
// get dwLineID
MIXERLINE mxl;
mxl.cbStruct = sizeof(MIXERLINE);
mxl.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;
if (::mixerGetLineInfo((HMIXEROBJ)ghmx, &mxl,
MIXER_OBJECTF_HMIXER | MIXER_GETLINEINFOF_COMPONENTTYPE)
!= MMSYSERR_NOERROR)
return 34;
// get dwControlID
MIXERCONTROL mxc;
MIXERLINECONTROLS mxlc;
mxlc.cbStruct = sizeof(MIXERLINECONTROLS);
mxlc.dwLineID = mxl.dwLineID;
mxlc.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;
mxlc.cControls = 1;
mxlc.cbmxctrl = sizeof(MIXERCONTROL);
mxlc.pamxctrl = &mxc;
if (::mixerGetLineControls((HMIXEROBJ)ghmx, &mxlc,
MIXER_OBJECTF_HMIXER | MIXER_GETLINECONTROLSF_ONEBYTYPE)
!= MMSYSERR_NOERROR)
return 34;
return mxc.dwControlID;
}

BOOL SetMasterVolume(DWORD dwVolume)
{
MIXERCONTROLDETAILS mxcd;
MIXERCONTROLDETAILS_UNSIGNED mxcd_u;
mxcd.cbStruct = sizeof(mxcd);
mxcd.dwControlID = MasterVolumeControlID;
mxcd.cChannels = 1;
mxcd.cMultipleItems = 0;
mxcd.cbDetails = 4;
mxcd.paDetails = &mxcd_u;
mmr = mixerGetControlDetails((HMIXEROBJ)ghmx, &mxcd, 0L);
if (MMSYSERR_NOERROR != mmr) return FALSE;
mxcd_u.dwValue = dwVolume;
mmr = mixerSetControlDetails((HMIXEROBJ)ghmx, &mxcd, 0L);
if (MMSYSERR_NOERROR != mmr) return FALSE;
return TRUE;
}





Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-44418
race1
2003-03-27 06:29
2003.04.14
id3tag


1-44096
caesar
2003-04-02 16:58
2003.04.14
stack overflow


14-44387
azra3L
2003-03-26 22:15
2003.04.14
процессы и потоки


14-44454
ctrranik
2003-03-29 17:20
2003.04.14
Помогите хочу найти компонет для работы с модемом


14-44436
han_malign
2003-03-27 10:34
2003.04.14
Новости большого спорта




   Наверх