I am using realtek HD audio on board and when i plug my headphones into a port and set it to headphones i still get sounds out of rear and center. I dont have a front panel. In my app I have a button for headphone mode how would I make fmod not send any audio to these channels when I am in headphone mode. cause my sound card obviosly isny smart enough to mute all the channels when i plug in my headphones.
help me with what to put in this function
- ashandir asked 10 years ago
Thanks for your reply. We just switched from a diamond audio card to the realtek HD onboard audio. The realtek card does not have any bass boost setting. We use a sub to generate road vibration on our steering wheel. The old card would only send bass to the sub when bass boost was on. The new card is not sending anything to the sub. So to make it work we switched from 6 speaker mode to 4 speaker mode and just set the center/sub port to front speakers. And use the amplifier to only let the low freq stuff hit the sub. Would be nice if we could figure out why fmod audio engine is requiring bass boost setting in order for sub to get any sound but thats not the main problem cause going to 4 speaker mode is getting us good enough results.
Main problem is that the industrial computer we get does not have a front speaker port. The realtrek driver seems to only mute the other channels when you are using headphones in the front port. The channel volume code would work perfect if we were able to fix the bass problem so the center and sub were not using the front channel. Because now if I turn off the volume to all but front i get sound in headphones like I want but center and sub are playing that front channel also. We are probably going to have to get our PC maker to send us a front panel audio port we can connect to the motherboard. Might be a pain since we use a weird case.
But if anyone has any tips or experience with FMOD and bass not playing on cards that dont have bass boost…let me know. Thanks.
- ashandir answered 10 years ago
system->close(); system->setSpeakerMode(FMOD_SPEAKERMODE_STEREO); system->init(); recoverAudioSystemState();
Changing speaker mode must be done before init, so you cannot keep the sounds going and change the output mode. You’ll have to store information about all the currently playing sounds and recover them after you call init.
Alternatively you could do something like this:
(assuming the headphones are plugged into the front L/R)
system->set3DSpeakerPosition(FMOD_SPEAKER_FRONT_LEFT, -1.0f, 0.0f, true);
system->set3DSpeakerPosition(FMOD_SPEAKER_FRONT_RIGHT, 1.0f, 0.0f, true);
system->set3DSpeakerPosition(FMOD_SPEAKER_FRONT_CENTER, 0.0f, 0.0f, false);
system->set3DSpeakerPosition(FMOD_SPEAKER_LOW_FREQUENCY, 0.0f, 0.0f, false);
system->set3DSpeakerPosition(FMOD_SPEAKER_BACK_LEFT, 0.0f, 0.0f, false);
system->set3DSpeakerPosition(FMOD_SPEAKER_BACK_RIGHT, 0.0f, 0.0f, false);
system->set3DSpeakerPosition(FMOD_SPEAKER_SIDE_LEFT, 0.0f, 0.0f, false);
system->set3DSpeakerPosition(FMOD_SPEAKER_SIDE_RIGHT, 01.0f, 0.0f, false);
[quote:1vhwxa9k]cause my sound card obviosly isny smart enough to mute all the channels when i plug in my headphones. [/quote:1vhwxa9k]
It doesn’t sound like you’ve given it any way of knowing that you’re using headphones. I would look for an easier alternative using your hardware. If your surround system is plugged into an amplifier it might have a headphone port that will down mix to stereo.
Hope this helps.
- Guest answered 10 years ago
Please login first to submit.