Sound klirrt beim setzen des Volumens

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Ratchet

Betreff: Sound klirrt beim setzen des Volumens

BeitragSo, Jan 16, 2005 15:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe einen Channel auf dem ich einen Sound abspiele. Wenn ich meine Anwendung beende wird ein Fade Out auf den Channel gemacht sodass die spielende Musik immer leiser wird. Klappt auch aber es klirrt dabei so komisch. Auch auf verschiedenen Systemen mit unterschiedlichen Soundkarten.
Ich benutze ganz einfach SetChannelVolume. Ist das eventuell eine Macke von BMax?

MVB

BeitragSo, Jan 16, 2005 15:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Keine Ahnung. Dürfte eigentlich nichts passieren.
EDIT: Habs mal ausprobiert. Die Channelbefehle sind nicht für Realtime konzepiert soweit ich weiß.
aquamonit.de|BlitzMax|MaxGUI
  • Zuletzt bearbeitet von MVB am So, Jan 16, 2005 16:01, insgesamt einmal bearbeitet

Ratchet

BeitragSo, Jan 16, 2005 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich mache nur Code: [AUSKLAPPEN]
            Volume :- 0.08
            SetChannelVolume(MusicChannel, Volume)


solange bis Volume <= 0 ist.
Volume ist vom Typen Float Confused

MVB

BeitragSo, Jan 16, 2005 16:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habs ausprobiert. Die Befehle sind nicht für Realtime ausgelegt. Siehe EDIT.
Ging das denn bei den alten Blitzversionen in Realtime?
aquamonit.de|BlitzMax|MaxGUI
  • Zuletzt bearbeitet von MVB am So, Jan 16, 2005 16:08, insgesamt 2-mal bearbeitet

Ratchet

BeitragSo, Jan 16, 2005 16:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich meine das ging. Das muss doch gehen, wie soll man denn sonst sowas realisieren?
Mal Hilfe durchstöbern....

MVB

BeitragSo, Jan 16, 2005 16:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Depth und Pan lassen sich anscheinend in Realtime ändern, bei Rate und Volume kommt dieses "Klirren".

Hier mal mein Testcode:
Code: [AUSKLAPPEN]
'Soundtest

Graphics 800,600,32

'Laden
Sound=LoadSound("sound2.wav")
If sound=0 Then RuntimeError("Sound konnte nicht geladen werden")

'Abspielen
Channel=CueSound(Sound)
ResumeChannel Channel

'Einstellungen
Volume:Float=0.5
Pan:Float=0
Depth:Float=0
Rate:Float=1
Pause:Int=0

Repeat
Cls
'Abfrage
'Pan
If KeyDown(KEY_LEFT) Then Pan:-0.01
If KeyDown(KEY_RIGHT) Then Pan:+0.01
If Pan>1 Then Pan=1
If Pan<-1 Then Pan=-1
SetChannelPan(Channel,Pan)
'Depth
If KeyDown(KEY_UP) Then Depth:+0.01
If KeyDown(KEY_DOWN) Then Depth:-0.01
If Depth>1 Then Depth=1
If Depth<-1 Then Depth=-1
SetChannelDepth(Channel,Depth)
'Volume
If KeyDown(KEY_NUMADD) Then Volume:+0.01
If KeyDown(KEY_NUMSUBTRACT) Then Volume:-0.01
If Volume>1 Then Volume=1
If Volume<0 Then Volume=0
SetChannelVolume(Channel,Volume)
'Pause
If KeyHit(KEY_P) Then
   If Pause=0 Then
      PauseChannel Channel
      Pause=1
   Else
      ResumeChannel Channel
      Pause=0
   EndIf
EndIf
'Rate
If KeyDown(KEY_PAGEUP) Then Rate:+0.01
If KeyDown(KEY_PAGEDOWN) Then Rate:-0.01
SetChannelRate(Channel,Rate)
'Optische Darstellung
SetColor 255,255,255
DrawText "[P] Pause/Resume",10,10
DrawText "[+]/[-] Volume: " + Volume,10,25
DrawText "[right]/[left] Pan: " + Pan,10,40
DrawText "[up]/[down] Depth: " + Depth,10,55
DrawText "[Page Up]/[Page Down] Rate: " + Rate,10,70
DrawRect 200,100,400,400
SetColor 255,0,0
DrawOval 400+Pan*200-3,300-Depth*200-3,6,6
Flip
Until KeyHit(KEY_ESCAPE)
aquamonit.de|BlitzMax|MaxGUI

Ratchet

BeitragSo, Jan 16, 2005 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
In der Hilfe zu SetChannelSound steht folgender Testcode:

Code: [AUSKLAPPEN]

' setchannelvolume.bmx

timer=CreateTimer(20)

sound = LoadSound ("shoot.wav")

For volume#=.1 To 2 Step .05
        WaitTimer timer
        channel=CueSound(sound)
        SetChannelVolume channel,volume
        ResumeChannel channel
Next


Da ist noch ein CueSound vor dem SetChannelVolume. Das ist aber totaler Quatsch da CueSound nur einen Sound zum abspielen vorbereitet. Und wenn ich das bei mir so mache wird der Sound gar nicht mehr leiser.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group