Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Bajar volumen mplayer (https://www.clubdelphi.com/foros/showthread.php?t=95985)

DarkSton 30-11-2022 14:37:06

Bajar volumen mplayer
 
Alguien sabe cómo bajar el volumen de este componente

http://www.codenet.ru/np-includes/up.../26/128667.gif

aposi 30-11-2022 18:57:24

Prueba esto:

Código Delphi [-]
uses
    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;
 
 {Set Volume, range 0 - 1000}
 procedure MPSetVolume(MP: TMediaPlayer; Volume: Integer) ;
 var
    p: MCI_DGV_SETAUDIO_PARMS;
 begin
    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;
 
 {Get Volume, range 0 - 1000}
 function MPGetVolume(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;
 end; 

//Usage: drop a TMediaPlayer ("MediaPlayer1") along with a TScrollBar ("ScrollBar1") on Delphi form.

//In the OnCreate event for the form, setup the scroll bar and load a media file into MediaPlayer:

 procedure TMediaPlayerForm.FormCreate(Sender: TObject) ;
 begin
   ScrollBar1.Min := 0;
   ScrollBar1.Max := 1000;
 
   ScrollBar1.Position := MPGetVolume(MediaPlayer1);
 
   MediaPlayer1.Close;
   MediaPlayer1.FileName:='c:\favorite.mp3';
   MediaPlayer1.Open;
 end; 

//Handle the OnChange event of the scroll bar (to set the Media player volume):

 procedure TMediaPlayerForm.ScrollBar1Change(Sender: TObject) ;
 begin
   MPSetVolume(MediaPlayer1, ScrollBar1.Position) ;
 end; 

DarkSton 30-11-2022 19:58:26

no funciona amigo

escafandra 30-11-2022 21:25:51

Revisa estos enlaces:

Controlar el volumen del PC desde WinXP hasta Win8
Controlar el volumen del PC desde WinXP hasta Win8 y 2


Se trata de una clase que controla el volumen del PC. La versión 2 incorpora el lanzamiento de un evento cuando algo cambia el volumen del PC. Aunque el título pone hasta Win8, funciona correctamente, al menos hasta Win10.


Saludos.


La franja horaria es GMT +2. Ahora son las 20:45:57.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi