Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Volumenkontrolle (https://www.delphipraxis.net/6702-volumenkontrolle.html)

Manu15 19. Jul 2003 09:53


Volumenkontrolle
 
Hallo,
hat mir jemand ein Quelltext für Volumenkontrolle?

Manu :wink:

sCrAPt 19. Jul 2003 09:56

Re: Volumenkontrolle
 
Was meinst du mit "Volumenkontrolle"? Lautstärke von deinen Lautsprechern? Das Volumen eines Quaders (V=l+b+Hk)? Ein anderes Körpervolumen?

hummer 19. Jul 2003 11:54

Re: Volumenkontrolle
 
Oder die Kontrolle eines Internetvolumen, auch Traffikkontrolle genannt.

Illuminator-23-5 19. Jul 2003 14:42

Re: Volumenkontrolle
 
Theoretisch dürfte die Lautstärke gemeint sein, da dürfte das gehen:
Delphi-Quellcode:
procedure SetVolume(const volL, volR: Word);
var
  hWO: HWAVEOUT;
  waveF: TWAVEFORMATEX;
  vol: DWORD;
begin
  // init TWAVEFORMATEX
  FillChar(waveF, SizeOf(waveF), 0);
  // open WaveMapper = std output of playsound
  waveOutOpen(@hWO, WAVE_MAPPER, @waveF, 0, 0, 0);
  vol:= volL + volR shl 16;
  // set volume
  waveOutSetVolume(hWO, vol);
  waveOutClose(hWO);
end;

UnixX 29. Jul 2003 21:59

Re: Volumenkontrolle
 
Hier ist ein kleiner einfacher Beispiel(Regelung der OutSetVolume mit einer TrackBar)
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
TtrackBar1.Position :=65535;  <== Du musst die TrackBar.Max auf 65535 einstellen

procedure TForm1.Time2Timer(Sender: TObject);
var
newvolume:word;
begin
//------------------------set volume------------------------------
newvolume:= TtrackBar1.Position ;
WaveOutSetVolume(wave_mapper, NewVolume or (NewVolume shl 16));
:coder: :D

[edit=Daniel B]Delphi-Tags eingefügt. Mfg, Daniel B[/edit]
[edit=Daniel B]BBCode eingeschaltet. Mfg, Daniel B[/edit]

DelphiUser7 30. Sep 2003 22:20

Re: Volumenkontrolle
 
Hi, ich hab die Prozedur grad auch mal versucht, und es funzt zwar, aber wenn ich schnell nach unten bzw. nach oben ziehe (mit der TrackBar), dann braucht der PC immer relativ lange, bis er die richtige Lautstärke 'gefunden' hat;
Wisst ihr vielleicht, wie ich diesen 'Zwischenraum' überbrücken bzw. verhindern kann?;

Gruss
DelphiUser7

MrKnogge 30. Sep 2003 22:24

Re: Volumenkontrolle
 
du könntest immer wenn sich die Trackbar verändert eine Variable immer solange +1 oder -1 zählen lassen bis sie den gleichen Wert wie die Trackbar hat.

Und den Wert zählst du eben nicht nur hoch sondern verwendest du auch für die lautstarke.

Ansonsten müsstest du eventuell n Timer einbauen, aber des muss auch ohne gehen (Timer) !

DelphiUser7 1. Okt 2003 15:09

Re: Volumenkontrolle
 
Den Timer hab ich doch schon eingebaut (s. Beitrag von oben), da ich ja den oben stehenden Quelltext übernommen habe;
Gruss
DelphiUser7


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz