0
0

ive been using a work thread (that inits FMOD) and does most house keeping, however my UI thread does

FSOUND_Stream_SetTime(streammusic,current_musicaudio);
or maybe

FSOUND_SetPaused(streamchanmusic,!FSOUND_GetPaused(streamchanmusic));

or
maybe

streameffect = FSOUND_Stream_Open(s, FSOUND_16BITS | FSOUND_SIGNED | FSOUND_STEREO, 0,0);

this has worked fine for about 2 years (although i read now that FMOD 3.75 isnt completrely thread safe) however it no longer does, the reason is now (i think) that im now using samples in the orignal worker thread that is now async with the streaming stuff in the UI thread. Ive put entercrits and leavecrits around everything i can find, and it still blows up fmod in around 10 secs now. if i take out the sample stuff the its ok like before. My question is this. How can i make this thread safe, or do i have to put a message handler in and post messages from my UI thread so EVERY thing is done in one thread, or are some things safe and some not, if so do you have a clue whats is and whats isnt ?
any help is appreciated.
Greg.

  • You must to post comments
0
0

Setting channel commands should be safe enough (ie setpaused, setvolume), but i wouldnt trust anything that deals with resources, and this includes anything with the words init/close/create/open/close/free/playsound in it. They should be called from one thread.

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.