Sound klirrt beim setzen des Volumens
Übersicht BlitzMax, BlitzMax NG Allgemein
RatchetBetreff: Sound klirrt beim setzen des Volumens |
So, Jan 16, 2005 15:53 Antworten mit Zitat |
|
---|---|---|
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 |
So, Jan 16, 2005 15:57 Antworten mit Zitat |
|
---|---|---|
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 |
So, Jan 16, 2005 15:59 Antworten mit Zitat |
|
---|---|---|
Ich mache nur Code: [AUSKLAPPEN] Volume :- 0.08
SetChannelVolume(MusicChannel, Volume) solange bis Volume <= 0 ist. Volume ist vom Typen Float |
||
MVB |
So, Jan 16, 2005 16:03 Antworten mit Zitat |
|
---|---|---|
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 |
So, Jan 16, 2005 16:06 Antworten mit Zitat |
|
---|---|---|
Ich meine das ging. Das muss doch gehen, wie soll man denn sonst sowas realisieren?
Mal Hilfe durchstöbern.... |
||
MVB |
So, Jan 16, 2005 16:08 Antworten mit Zitat |
|
---|---|---|
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 |
So, Jan 16, 2005 16:14 Antworten mit Zitat |
|
---|---|---|
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. |
||
Übersicht BlitzMax, BlitzMax NG Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group