Einzelnen Beitrag anzeigen

Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#200

Re: [Komponente] Bass Player Komponente: TBassDLLPlayer (+De

  Alt 29. Okt 2006, 17:25
Zitat von Dana:
Hallo Turbo Pascal,

ich habe mit Deinen Komonenten BassdllPlayer versucht die Lautstärke eines Internetstreams zu verändern. Ging leider nicht. Deshalb habe ich folgende Zeilen in Deine Unit eingefügt. Ist das in Ordnung. Oder was habe ich falsch gemacht.
Ja und nein. BASS_SetVolume setzt die globale Lautstärke also das Mastervolume.
( So was kann ich pers. nicht leiden wenn mir ein Prg. meine Einstellung verstellt )


Die richtige Korrektur sollte zB. so aussehen:


Delphi-Quellcode:
procedure TBassdllPlayer.SetVolume(Volume: Byte);
var AnzChannels: integer;
begin
  // Begrenzen auf 100
  if Volume > 100 then Volume := 100;

  case Modus of
    moStream,
    moSamples: BASS_SetConfig(BASS_CONFIG_GVOL_STREAM, Volume);
    moMusik:
      begin
        AnzChannels := 0;
        while (BASS_MusicSetAttribute(Channel,
          BASS_MUSIC_ATTRIB_VOL_CHAN + AnzChannels, 1) <> DWord(-1)) do
        begin
          BASS_MusicSetAttribute(Channel, BASS_MUSIC_ATTRIB_VOL_CHAN + AnzChannels, Volume);
          inc(AnzChannels);
        end;
      end;
  end;
end;
Werde es bei Gelegenheit korrigieren.

//Edit: ich glaube bei GetVolume ist das der selbe Fall/Fehler "moStream" fehlt da wolh auch.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat