Hi Serge,
The best way to do that is with a speaker volume matrix callback.
Something like this ( although note i haven't compiled or tested the code ):
// consider using AK::SoundEngine::GetIDFromString to get this id
AkUint32 target_bus_id = 0x123456;
void speaker_volume_matrix_callback( AkSpeakerVolumeMatrixCallbackInfo* info ) {
AkUniqueID bus_id = info->pMixerContext->GetBusID();
if ( bus_id != target_bus_id ) {
// or some other way to making sure you only do this when you need it
return;
}
AKASSERT( info->outputConfig.uNumChannels == 6 );
AKPLATFORM::AkMemSet( info->pVolumes, 0, sizeof( AkReal32 ) * info->outputConfig.uNumChannels );
Ak::SpeakerVolumes::Matrix::VectorPtr ls = AK::SpeakerVolumes::Matrix::GetChannel( info->pVolumes, 4, 6 );
ls[ 0 ] = 1.0f;
Ak::SpeakerVolumes::Matrix::VectorPtr rs = AK::SpeakerVolumes::Matrix::GetChannel( info->pVolumes, 5, 6 );
rs[ 1 ] = 1.0f;
}