Wyciszenie dzwieku w aplikacji

0

witam mam pytanie... a mianowicie w programie odgrywana jest muzyczka albo jakis dowolny dźwięk...
uzylem do tego ..SndPlaySound('c:\a.wav', PARAMETR);..

i teraz nie wiem jak wyciszyc dzwiek ... czy da sie ustawic wartosc dźwieku na 0 ??niechodzi o wylączenie..

probowalem wyciszyc ogolnie dźwięki w kompie ale glupio wyszlo i chcialbym wyciszyc tylko w progsie moim .. jakies propozycje?? jest poczatkujacy i poszukalem o tym nie ma.. pozdro

0

Wątpie aby ta funkcja obsługiwała coś takiego jak głośność. Jak już to się pobaw mciSendString/mciSendCommand lub TMediaPlayer

0

no ewentulanie jak ktos by wiedzial jak z mediaplayerem wyciszyc to bede wdzieczny? ;/

0

czyli to :
uses
MPlayer, MMSystem;

const
MCI_SETAUDIO = $0873;
MCI_DGV_SETAUDIO_VOLUME = $4002;
MCI_DGV_SETAUDIO_ITEM = $00800000;
MCI_DGV_SETAUDIO_VALUE = $01000000;
MCI_DGV_STATUS_VOLUME = $4019;

type
MCI_DGV_SETAUDIO_PARMS = record
dwCallback: DWORD;
dwItem: DWORD;
dwValue: DWORD;
dwOver: DWORD;
lpstrAlgorithm: PChar;
lpstrQuality: PChar;
end;

type
MCI_STATUS_PARMS = record
dwCallback: DWORD;
dwReturn: DWORD;
dwItem: DWORD;
dwTrack: DWORD;
end;

procedure SetMPVolume(MP: TMediaPlayer; Volume: Integer);
{ Volume: 0 - 1000 }
var
p: MCI_DGV_SETAUDIO_PARMS;
begin
{ Volume: 0 - 1000 }
p.dwCallback := 0;
p.dwItem := MCI_DGV_SETAUDIO_VOLUME;
p.dwValue := Volume;
p.dwOver := 0;
p.lpstrAlgorithm := nil;
p.lpstrQuality := nil;
mciSendCommand(MP.DeviceID, MCI_SETAUDIO,
MCI_DGV_SETAUDIO_VALUE or MCI_DGV_SETAUDIO_ITEM, Cardinal(@p));
end;

function GetMPVolume(MP: TMediaPlayer): Integer;
var
p: MCI_STATUS_PARMS;
begin
p.dwCallback := 0;
p.dwItem := MCI_DGV_STATUS_VOLUME;
mciSendCommand(MP.DeviceID, MCI_STATUS, MCI_STATUS_ITEM, Cardinal(@p));
Result := p.dwReturn;
{ Volume: 0 - 1000 }
end;

// Example, Beispiel:

procedure TForm1.Button1Click(Sender: TObject);
begin
SetMPVolume(MediaPlayer1, 500);
end;

niejset to szczegolnie przyjazny kod dla programisty // myslalem ze to bedzie pare linijek :)

0

Omfg...
Jakbyś poświęcił chociaż sekundę na analizę kodu to byś zobaczył 2 bardzo łatwe w użyciu procedury:
procedure SetMPVolume(MP: TMediaPlayer; Volume: Integer);
function GetMPVolume(MP: TMediaPlayer): Integer;

Troche samodzielności...

0

mi to nie dziala, nie rozumiem co z samodzielnoscią PIXEL..

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.