I have been using fmodce.dll with very good results in my Windows Mobile 2003 device. All my .MP3 and .WAV files ere correctly played.
Now I’m testing my application in two devices with Windows Mobile 2003 Second Edition. Application crashes unexpectedly!
For example, I can test the application for N minutes. Then I shut down the application or soft-reset my device and start the application again (another debug session from VS2005 for example). Suddenly, when bready to play any kind of sound, an error appears saying "cannot pinvoke fmoce.dll" or something similar. After that, application unexpectedly exits! It’s strange because fmoce.dll is always correctly placed in the directory where the .exe is located!
Then, I soft-reset and restart application and all works pretty well and all sounds are properly played. It’s an unexpected behaviour.
Have you got any idea or have you experienced any similar problem? Could be because the DLL gets hang and its resources are not correctly released? I’m now going to try with fmodce_small. I’ll post how it goes!
I would really appreciate any help on this. Thanks very much in advance.
- lonifasiko asked 11 years ago
Yes, in fact I noticed the problem with the bitrates after reading the readmece.txt. That’s why I start initializing at 22050 instead of 44100.
Now I must test this rates work on Pocket PC 2003 and Windows Mobile 5.0.
I did not want to say in my previous post that application was crashing FMOD just throws an exception with the message "Cannot find the file DLL PINVOKE ‘FMODCE.DLL’" in Spanish.
I’ll play a bit with the rates and I’ll give you some more feedback. Thanks for all your help.
With a deep and conscious debugging, and somehow "handling" unhandled exceptions in my Compact Framework 2.0 application, I’ve reached this conclusion: FMODCE has got problems playing .WAV files when using timers.
That is, I’ve got a timer in my application that fires each 4 seconds. Each time timer fires, I play with FMODCE a little .wav which length more or less is 2-3 seconds.
Well, this combination is fatal for my application because it unexpectedly crashes and is automatically exited. I get an unhandled exception and log the error in a text file which is giving me some good hints 😉
Has anybody experienced a similar problem with FMODCE, .WAV files and timers?
Hope somebody can help me.
Well, after I decided not usinf FMODCE for playing WAVs while having timers, I thought my problems were bound to dissapear.
Of course not 👿 Still I’m getting the error "fmodce.dll cannot be find", when fmodce.dll is correctly placed. Now this error occurs when playing a simple mp3 file.
I can only see this error in my two Windows Mobile SE devices.
Hey! Is anyboody out there? I really need some help on this…
Thanks very much in advance.
Thanks very much for your reply. I was willing somebody telling me something about this problem 😆
I’ve only got one fmodce.dll in the device. I’ve consciously searched and be sure I’ve only got one copy of the library.
I’ve got a folder with the name of the application under "Program Files". This folder contains:
- The .exe of the application
- Many DLLs
- A "Images" folder
- A "Sounds" folder containing all sounds (.wav and MP3) of the application, that is, all sound files phisically in the device, are not embeeded inside the .exe.
You mean I should copy fmodce.dll in other locations appart from the application folder. I thought fmodcethe unique way for playing music using fmodce was to have fmodce.dll in the same directory as the application. I remember me testing a while ago with fmodce.dll under \Windows, not in the application folder, and I had no success.
Maybe I need to include fmodce.dll under "Sounds", where all my sounds are located? But why sometimes some MP3s are played and others not?
I hope you can see something strange in my application configuration Brett. Thanks very much for your time.
Here I’m again 😀
I’ve discovered that if I’ve got fmodce.dll also inside "Sounds" directory, all works properly. Therefore, the ideal configuration:
One copy of fmodce.dll in the folder where the .exe of the application is located
One copy of fmodce.dll where you’ve got all the audio files you must play. In my case, under "Sounds" directory.
Seems that this way works but I think this behaviour is not the correct.
What do you think about?
Cannot test now in another device, but in my iPAQ hx4700 with Windows Mobile 2003 Second Edition operating system, the solution of placing "fmodce.dll" under "Windows" directory also works. That is, inside the application folder and "Sounds" folder there is no copy of fmodce.dll. Only one copy located under "Windows".
Want to see this in devices with Windows Mobile 2003 and devices with Windows Mobile 5.0.
What’s the ideal location for this DLL? The location/behaviour can be different for diferent operating systems?
Hope you can help me with all this info.
I’m using fmodce.dll, which size is 442 KBytes.
Should I use a different DLL for Windows Mobile 2003, Windows Mobile 2003 SE and Windows Mobile 5 devices?
I’m using the library located inside "fmodapi375ce\api\wce4\armv4" path. I think there are no more choices. Yes, there is the emulator folder containing the library for the emulator, but I have not used that.
I’ve seen that letting the library only under "Windows" sometimes crashes. Now, my "temporary solution" is to place the DLL where the .exe is, and also inside the the folder where my audio files are.
Haven’t you experienced these issues like me? Seems only related to Windows Mobile 2003 devices? Can you try using this library in one of these kind of devices?
Thanks very much.
I was using fmod_init(44100, 16, 0);
This sometimes gives the error mentioned above in my iPAQ hx4700 with Windows Mobile 2003 Second Edition OS. Now I’m using
fmod_Init(22050, 16, 0); and seems not to crash. Could be that some devices support some bitrates and not other? Can this lower bitrate make loose quality in the audio file?
Again, and again: Hasn’t anybody experienced this before?
Please login first to submit.