My application runs on many different Linux distributions, and the following is what I have noticed:
If I set fmod to FSOUND_Init(44100, 32, 0); it works ok, but then other distros (about 50/50), still using ALSA on the same hardware withd the same sound file only works if FSOUND_Init(32000, 64, 0));
I am not an audiophile and really do not know whats going on here, I just copied these inits from examples, how can I get it to work on all distros?
- thedevilsjester asked 11 years ago
- You must login to post comments
thats pretty odd, i would expect 32000 to fail more than 44100 which is the industry standard. It just sounds like bad alsa drivers to me. You have to let the user decide i suppose.
FMOD Ex has a rewritten linux driver, have you tried that?
- Brett Paterson answered 11 years ago
- You must login to post comments
My program doesnt just have an end user and stop there, each of those end users have end users, so if I let my end user choose, they would end up in the same situation that I am in. They would have to let their users choose as well, which just adds extra headache and voids he KISS rule.
I havent tried FMOD Ex yet, the shareware-ish license, does that extend to FMOD Ex or is it just FMOD 3? Is the Ex code much different?
I just sent out a new beta version of my app to be tested using 44100 and will see what my results are.
- thedevilsjester answered 11 years ago
- You must login to post comments
why not try all frequencies, for example my startup code
[code:mq8mhf1u]
int tryfreq[] = {customFreqHz, 44100, 48000, 32000, 22050};
int numfreq = sizeof(tryfreq)/sizeof(int);
BOOL bret = FALSE;
while(curfreq < numfreq)
{
int retries = 2;
int retrycount = 0;
PROTECT_ON;
bret = FSOUND_Init(tryfreq[curfreq], numChannles, 0);
PROTECT_OFF("");
while(bret == FALSE && retrycount < retries)
{
Sleep(100);
PROTECT_ON;
bret = FSOUND_Init(tryfreq[curfreq], numChannles, 0);
PROTECT_OFF("");
retrycount++;
}
if(retrycount < retries)
break;
curfreq++;
}
[/code:mq8mhf1u]
- mm40 answered 11 years ago
- You must login to post comments
Because when it fails it doesnt error! It just wont play the sound and stalls when I try and close everything out. Very odd.
- thedevilsjester answered 11 years ago
- You must login to post comments
Not to bump up an old topic, but this problem still plagues me and my end users, to the point where only a small percentage can actually hear music.
Code like that posted above, doesnt help at all because even when I use a freq with FSOUND_Init that my PC doesnt like, FSOUND_Init gives a "success" code, no errors.
I believe this is a major bug in fmods ALSA implementation.
Note that I get the same behavior in the examples, and have multiple PCs that I test on, with the same results.
Is bret still making bug fixes to FMOD3 or am I SOL?
[quote:1tn42hqv]FMOD Ex has a rewritten linux driver, have you tried that?[/quote:1tn42hqv]
FMOD Ex has a worse problem that makes it unusable for me so thats not a viable solution.
- thedevilsjester answered 10 years ago
- You must login to post comments
Please login first to submit.