I tried looping music, but failed. If anyone could give me some code for looping music, also for changing the music being played at any time, I'd appreciate it a lot.
Thanks in advance.
Try the following:
bkmusic=LoadSound("music.ogg") : If Not bkmusic Then RuntimeError "Cannot found music"
LoopSound(bkmusic)
PlaySound(bkmusic)
That should work
if you wanna change volume you'll need to investigate the channelvolume, channelpan etc commands.
Above code would then be the same except for the last bit:
global musicvolume#=0.75
channelbkmusic = PlaySound(bkmusic)
channelvolume channelbkmusic,musicvolume
As with most of the numbers in the audio channel commands, numbers need to be floating points, in order to give a range between 0 and 1 or -1 and 1
channelvolume works between 0 and 1 so ensure when you use a variable you globalise it as a float or it wonyt' fade at all.
channelpan channelbkmusic, -1 ; for left
channelpan channelbkmusic, 0 ; for centre
channelpan channelbkmusic, 1 ; for right
Channel allows for quite a lot of control - check these commands as follows:
StopChannel
PauseChannel
ResumeChannel
ChannelPitch
ChannelVolume
ChannelPan
ChannelPlaying
IPete2.
Thanks guys.
IPete2 : I think you misunderstood me, I meant change what song is playing, not modify the playback. Didn't want to use the loopsound playsound method because changing songs would be difficult, I was hoping to use the channel methods
try this tooo
music = playmusic("music.mp3")
while not keydown(1)
updatemusic(music)
wend
function updatemusic(music)
if not channelplaying(music)
music=playmusic(music)
endif
end function
Sorry chwaga - twice in one week - doh! ;)
IPete2.
http://www.blitzbasic.com/Community/posts.php?topic=69887BASS_StreamCreate / BASS_SAMPLE_LOOP
BASS_ChannelIsActive
You can try this, examples are included.
bye