I use VB6 and Fmod 3.61.
As I can make to use FSOUND_STEREOPAN and to continue having the panning control?
Without FSOUND_STEREOPAN I obtain 71% of the volume in each channel when the panning is in the center (according to the documentation and I see it in the VU). With FSOUND_STEREOPAN I have 100% of volume in the two channels but the panning control is annulled.
I want that the panning control is this way: Left = (100 Left – 0 Right), Right = (0 Left – 100 Right), Center = (100 Left – 100 Right).
How can I solve this?
Am I using bad FSOUND_STREREOPAN maybe?
- LeoCombes asked 15 years ago
And as always, dsp callbacks can help you to implement that kind of behaviour yourself if you really need to.
(And that kind of panning is exactly the kind of panning used in most players, as well as on amplifiers and other hardware stuff so I don’t think it is that odd to want such a panning feature)
If you look around on this forum I think you will find some posts about how to implement these callbacks in Visual Basic too, and for c there are some nice examples included with the fmod sdk.
It is very interesting and it is true. The same “environmental” volume is gotten in any value of pan. But it is not what I want. With the pan in the center I am reducing the “real” volume, sew that I don’t want to make. I proved reproducing with Winamp and connecting an audio mixer with Vu to the output of the PC, and when moving the control of pan, the VU shows that the panning is made in the way that I explained previously.
I want to get the same thing that makes Winamp, and I thought that it was achieved with FSOUND_STEREOPAN.
Some other way?
- LeoCombes answered 15 years ago
So….if 71/71 is valid all the way around, why is the FSOUND_STEREOPAN constant available? Colores wants what I want, the ability to pan without setting FSOUND_STEREOPAN, but without having the detrimental half volume problem discussed in the documentation. I need a solution for any streams be they mono or stereo…
Yup, I read the thread carefully. As Colores described and you seemed to understand, I am looking for stereo balance control…100/100 at 128, 100/0 at 0, 0/100 at 255. Far from an “odd ramp behavior”, as far as I can tell this is what happens on the common stereo system when one plays a CD with stereo sound (using the r/l balance control).
For example, run the Windows media player and play an MP3. It will provide full volume playback and the balance control that I have described above. When I play an MP3 with FMOD, I can’t seem to duplicate this behavior using any combination of calls and constants.
I don’t mean to belabor the point, but we need to understand this…I hear you saying it isn’t possible in FMOD to duplicate what Windows media player does (with the r/l balance control) when it is playing back a stereo sound. I am merely responding to your warning that you placed in your documentation and trying to figure out what to do about it.
I think most functions in fmod are designed mostly for game and sound effect stuff, and for panning sound effects in the world, the current behaviour is the most realistic one I think.
It is true that for music, all left just means muting right.
If you know how to make dsp callbacks for fmod, it is very easy to create the effect you want though.
Did you ever get an answer Scott?
I looked at the documentation for SetPan and there does seem to be a problem:
“Important : If you are playing a STEREO sample, and using normal middle panning, it will only come out at half the volume
they are supposed to. To avoid this use FSOUND_STEREO pan.
Panning works in the following manner:
full left : 100to left, 0to right
full right : 0to left, 100to right
middle : 71to left, 71to right”
OK, if you use the FSOUND_STEREOPAN constant, you get full instead of half volume and middle pan, but how do you get the parameters for full right or full left pan into setpan?
I guess you could give up and just double the volume or maybe go the callback route, but the documentation kind of indicates that there is some way to make the setpan function work with stereo, while maintaining the volume.
When I use setpan 0 to 255, I get half volume, just like the documentation says. How do I get full volume and still pan? It seemed that STEREO_PAN might somehow be the Holy Grail (No Offense Intended) but you are showing a left and right parameter for each position and setpan takes only one (0-255 or STEREOPAN).
Please login first to submit.