* Set volume and pan parameters for a sound. * @param mc MixerChannel to set * @param volume Volume level for sound, range is 0..16384 * @param pan Pan position for sound, range is 0..1 */
| 211 | * @param pan Pan position for sound, range is 0..1 |
| 212 | */ |
| 213 | void MxSetChannelVolume(MixerChannel *mc, uint volume, float pan) |
| 214 | { |
| 215 | /* Use sinusoidal pan to maintain overall sound power level regardless |
| 216 | * of position. */ |
| 217 | mc->volume_left = (uint)(sin((1.0 - pan) * M_PI / 2.0) * volume); |
| 218 | mc->volume_right = (uint)(sin(pan * M_PI / 2.0) * volume); |
| 219 | } |
| 220 | |
| 221 | |
| 222 | void MxActivateChannel(MixerChannel *mc) |