Ganz nett schaut es meist aus, wenn man Lautstärkenänderung nach oben sofort anzeigt, und von da aus das Peakmeter langsam abfallen lässt. Also wenn man sich das als Balken vorstellt ist das ein von selbst ständig langsam kleiner werdender Balken, der von der Musik immer wieder mal hoch gedrückt wird. Das dürfte bei Helligkeiten ähnlich gut ausschauen.
Delphi-Quellcode:
TForm1 =
class
..
private
Color_R, Color_G, Color_B: integer;
end;
.
.
.
procedure TForm1.Timer1Timer(Sender: TObject);
var
r, g, b, level: Integer;
begin
level := BASS_ChannelGetLevel(RecChannel);
if CheckBox1.Checked
then r := (round(HIWORD(level) / 255) + TrackBar1.Position)
else r := 0;
if CheckBox2.Checked
then g := (round(HIWORD(level) / 255) + TrackBar1.Position)
else g := 0;
if CheckBox3.Checked
then b := (round(HIWORD(level) / 255) + TrackBar1.Position)
else b := 0;
if r>Color_R
then Color_R := r
else
if Color_R>0
then dec(Color_R);
if g>Color_G
then Color_G := g
else
if Color_G>0
then dec(Color_G);
if b>Color_B
then Color_B := b
else
if Color_B>0
then dec(Color_B);
JvColorTrackBar4.Position := Color_R;
JvColorTrackBar5.Position := Color_G;
JvColorTrackBar6.Position := Color_B;
JvPanel3.Color :=
RGB(Color_R, Color_G, Color_B);
SendRGB(Color_R, Color_G, Color_B);
end;
Sowas könnte funktionieren (im Browser getippt, keine Garantie
)
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)