LORd of
Сообщений: 269
Оценки: 0
Присоединился: 2008-11-02 22:03:33.280000
|
Подскажите плз как сделать функцию регулировку баланса звука(из правого динамика в левый) не трогая глобальные настройки звуков а , а локально только в программе и только для TMediaplayer вот что нарыл по этому
[b]uses[/b]
MPlayer, MMSystem;
[b]const[/b]
MCI_SETAUDIO = $0873;
MCI_DGV_SETAUDIO_VOLUME = $4002;
MCI_DGV_SETAUDIO_ITEM = $00800000;
MCI_DGV_SETAUDIO_VALUE = $01000000;
MCI_DGV_STATUS_VOLUME = $4019;
[b]type[/b]
MCI_DGV_SETAUDIO_PARMS = [b]record[/b]
dwCallback: DWORD;
dwItem: DWORD;
dwValue: DWORD;
dwOver: DWORD;
lpstrAlgorithm: PChar;
lpstrQuality: PChar;
[b]end[/b];
[b]type[/b]
MCI_STATUS_PARMS = [b]record[/b]
dwCallback: DWORD;
dwReturn: DWORD;
dwItem: DWORD;
dwTrack: DWORD;
[b]end[/b];
[b]procedure[/b] SetMPVolume(MP: TMediaPlayer; Volume: Integer);
[color="#000080"][i]{ Volume: 0 - 1000 }[/i][/color]
[b]var[/b]
p: MCI_DGV_SETAUDIO_PARMS;
[b]begin[/b]
[color="#000080"][i]{ Volume: 0 - 1000 }[/i][/color]
p.dwCallback := 0;
p.dwItem := MCI_DGV_SETAUDIO_VOLUME;
p.dwValue := Volume;
p.dwOver := 0;
p.lpstrAlgorithm := [b]nil[/b];
p.lpstrQuality := [b]nil[/b];
mciSendCommand(MP.DeviceID, MCI_SETAUDIO,
MCI_DGV_SETAUDIO_VALUE [b]or[/b] MCI_DGV_SETAUDIO_ITEM, Cardinal(@p));
[b]end[/b];
[b]function[/b] GetMPVolume(MP: TMediaPlayer): Integer;
[b]var[/b]
p: MCI_STATUS_PARMS;
[b]begin[/b]
p.dwCallback := 0;
p.dwItem := MCI_DGV_STATUS_VOLUME;
mciSendCommand(MP.DeviceID, MCI_STATUS, MCI_STATUS_ITEM, Cardinal(@p));
Result := p.dwReturn;
[color="#000080"][i]{ Volume: 0 - 1000 }[/i][/color]
[b]end[/b];
но тут общая громкость а как сделать отдельно для правого и левого? Зараннее спасибо за помощь
|