/** * Factory Method for AudioConduit */ mozilla::RefPtr<AudioSessionConduit> AudioSessionConduit::Create() { CSFLogDebug(logTag, "%s ", __FUNCTION__); WebrtcAudioConduit* obj = new WebrtcAudioConduit(); if(obj->Init() != kMediaConduitNoError) { CSFLogError(logTag, "%s AudioConduit Init Failed ", __FUNCTION__); delete obj; return NULL; } CSFLogDebug(logTag, "%s Successfully created AudioConduit ", __FUNCTION__); return obj; }
/** * Factory Method for AudioConduit */ mozilla::RefPtr<AudioSessionConduit> AudioSessionConduit::Create() { CSFLogDebug(logTag, "%s ", __FUNCTION__); NS_ASSERTION(NS_IsMainThread(), "Only call on main thread"); WebrtcAudioConduit* obj = new WebrtcAudioConduit(); if(obj->Init() != kMediaConduitNoError) { CSFLogError(logTag, "%s AudioConduit Init Failed ", __FUNCTION__); delete obj; return nullptr; } CSFLogDebug(logTag, "%s Successfully created AudioConduit ", __FUNCTION__); return obj; }
/** * Factory Method for AudioConduit */ mozilla::RefPtr<AudioSessionConduit> AudioSessionConduit::Create(AudioSessionConduit *aOther) { CSFLogDebug(logTag, "%s ", __FUNCTION__); #ifdef MOZILLA_INTERNAL_API // unit tests create their own "main thread" NS_ASSERTION(NS_IsMainThread(), "Only call on main thread"); #endif WebrtcAudioConduit* obj = new WebrtcAudioConduit(); if(obj->Init(static_cast<WebrtcAudioConduit*>(aOther)) != kMediaConduitNoError) { CSFLogError(logTag, "%s AudioConduit Init Failed ", __FUNCTION__); delete obj; return nullptr; } CSFLogDebug(logTag, "%s Successfully created AudioConduit ", __FUNCTION__); return obj; }