I’m wrapping up FMOD for upcoming projects and I have covered almost everything apart from a few issues regarding loading content.
1) I’m lacking support for loading projects non-blocking. This has been covered in a another thread and you have said that you have this support planned for so I will leave it for now.
2) I have an idea about a workaround for the above and a more general approach to non-blocking by using the filesystem callbacks. I have already implmeneted thoose in our code and connected them to our internal filesystem and everything works fine. Now, assume that I would like to implement non-blocking loading, then I would need to pass some kind of return value and handle queueing in a certain way plus the calling code needs to support all this. Is this at all possible? And if so then can you give me some hints on how I should do it all?
3) Callbacks and non-blocking or not I can’t see how it ever will be possible to load content from memory. Do you have any planned support for this? Or is there some kind of trickery that I have been missing that can be used already to implmenet this?
4) When making a non-blocking load, how do I know when it’s all loaded apart from asking every event if it is "ready".
- Frohagen asked 11 years ago
[quote="andrew":yr2kes8a]Sorry for the delay.
3. I know of various people doing this so it is possible. Use setFileSystem and you can control all loading, possibly choosing to load some things from memory and some from disk. [/quote:yr2kes8a]
This is currently what we are doing and the READ callback does not get called for streaming. It only reads the first chunk and then repeats that chunk rather than streaming the remainder of the event sounds. I have posted about this on another thread but thought this might be a more relevant place to discuss it.
- droberts answered 10 years ago
Sorry for the delay.
That would require modifications to the event system similar to point 1. which we’re already planning to do.
I know of various people doing this so it is possible. Use setFileSystem and you can control all loading, possibly choosing to load some things from memory and some from disk. Or use "programmer" sounds. Or use EVENT_CALLBACKTYPE_SOUNDDEF_CREATE.
Currently you have to ask every event if it’s ready. This is a known limitation and one that we plan to fix.
Please login first to submit.