/* -------------------- Initialization functions for the SoundManager2 class -------------------- */ bool SoundManager2::initialize( bool debug_flag ){ setDebug( debug_flag ); activate(); setMusicVolume(255); setSoundEffectVolume(255); setMusicChannel(1); setSwapMusicChannel(2); setInitialSoundEffectChannel(3); setSoundEffectChannel(getInitialSoundEffectChannel()); setMaxChannels(64); bool initialized = FSOUND_Init (44100, getMaxChannels(), 0); if(isDebug()){ printf("SoundManager Initialization (debug: %i):\n", isDebug()); printf("\tActive: %i\n", isActive()); printf("\tMusic Volume: %i\n", getMusicVolume()); printf("\tSound Effect Volume: %i\n", getSoundEffectVolume()); printf("\tSound Effect Channel: %i\n", getSoundEffectChannel()); printf("\tMusic Channel: %i\n", getMusicChannel()); printf("\tSwap Music Channel: %i\n", getSwapMusicChannel()); printf("\tInitial Sound Effect Channel: %i\n", getInitialSoundEffectChannel()); printf("\tMusic Channel: %i\n", getMusicChannel()); } return initialized; }
AFM_API_EXPORT OMX_ERRORTYPE AFM_Encoder::getParameter( OMX_INDEXTYPE nParamIndex, OMX_PTR pComponentParameterStructure) const { OMX_ERRORTYPE error = OMX_ErrorNone; switch (nParamIndex) { case AFM_IndexParamPcmLayout: { AFM_PARAM_PCMLAYOUTTYPE *pcmlayoutIn = (AFM_PARAM_PCMLAYOUTTYPE *) pComponentParameterStructure; if (pcmlayoutIn->nPortIndex != 0) { return OMX_ErrorBadPortIndex; } pcmlayoutIn->nBlockSize = getSampleFrameSize(); pcmlayoutIn->nChannels = getChannels(); pcmlayoutIn->nMaxChannels = getMaxChannels(); pcmlayoutIn->nBitsPerSample = getSampleBitSize(); pcmlayoutIn->nNbBuffers = 1; return error; } default: return AFM_Component::getParameter( nParamIndex, pComponentParameterStructure); } }
OMX_ERRORTYPE GSMFRDecoder::construct() { OMX_ERRORTYPE error; OMX_AUDIO_PARAM_PCMMODETYPE defaultPcmSettings; OMX_AUDIO_PARAM_GSMFRTYPE defaultGsmfrSettings; defaultPcmSettings.nPortIndex = 1; defaultPcmSettings.eNumData = OMX_NumericalDataSigned; defaultPcmSettings.eEndian = OMX_EndianBig; defaultPcmSettings.bInterleaved = OMX_TRUE; defaultPcmSettings.ePCMMode = OMX_AUDIO_PCMModeLinear; defaultPcmSettings.nBitPerSample = 16; defaultPcmSettings.nChannels = 1; defaultPcmSettings.nSamplingRate = 8000; defaultPcmSettings.eChannelMapping[0] = OMX_AUDIO_ChannelCF; defaultGsmfrSettings.nSize = sizeof(OMX_AUDIO_PARAM_GSMFRTYPE); getOmxIlSpecVersion(&defaultGsmfrSettings.nVersion); defaultGsmfrSettings.nPortIndex = 0; defaultGsmfrSettings.bDTX = OMX_FALSE; defaultGsmfrSettings.bHiPassFilter = OMX_TRUE; error = AFM_Decoder::construct( OMX_AUDIO_CodingGSMFR, getSampleFrameSize()*getMaxChannels(), defaultPcmSettings, 1); if (error != OMX_ErrorNone) return error; ENS_String<16> role = "audio_decoder.gsmfr"; role.put((OMX_STRING)mRoles[0]); setActiveRole(mRoles[0]); error = createGSMFRBitstreamPort(defaultGsmfrSettings); if (error != OMX_ErrorNone) return error; if (mIsHost) { AFM_PcmPort *pcmPort = static_cast<AFM_PcmPort *>(getPort(1)); //pcmPort->forceStandardTunneling(); pcmPort->setSupportedProprietaryComm(AFM_HOST_PROPRIETARY_COMMUNICATION); } return OMX_ErrorNone; }
uint16_t World::getRandomChannel() const { return Randomizer::Instance()->randShort(getMaxChannels() - 1); }