int MediaSession::AudioMixerPortAttachToEndpoint(int mixerId,int portId,int endpointId) { //Get mixer AudioMixers::iterator it = audioMixers.find(mixerId); //If not found if (it==audioMixers.end()) //Exit return Error("AudioMixerResource not found\n"); //Get it AudioMixerResource* audioMixer = it->second; //Get endpoint Endpoints::iterator itEnd = endpoints.find(endpointId); //If not found if (itEnd==endpoints.end()) //Exit return Error("Endpoint not found\n"); //Get it Endpoint* endpoint = itEnd->second; //Log endpoint tag name Log("-AudioMixerPortAttachToEndpoint [%ls]\n",endpoint->GetName().c_str()); //Attach return audioMixer->Attach(portId,endpoint->GetJoinable(MediaFrame::Audio)); }
int MediaSession::RecorderAttachToEndpoint(int recorderId,int endpointId,MediaFrame::Type media) { //Get Player Recorders::iterator it = recorders.find(recorderId); //If not found if (it==recorders.end()) //Exit return Error("Recorder not found\n"); //Get it Recorder* recorder = it->second; //Get source endpoint Endpoints::iterator itEndpoints = endpoints.find(endpointId); //If not found if (itEndpoints==endpoints.end()) //Exit return Error("Endpoint not found\n"); //Get it Endpoint* source = itEndpoints->second; //Attach return recorder->Attach(media,source->GetJoinable(media)); }
int MediaSession::EndpointAttachToEndpoint(int endpointId,int sourceId,MediaFrame::Type media) { //Get endpoint Endpoints::iterator it = endpoints.find(endpointId); //If not found if (it==endpoints.end()) //Exit return Error("Endpoint not found\n"); //Get it Endpoint* endpoint = it->second; //Log endpoint tag name Log("-EndpointAttachToEndpoint [%ls]\n",endpoint->GetName().c_str()); //Get source endpoint it = endpoints.find(sourceId); //If not found if (it==endpoints.end()) //Exit return Error("Endpoint not found\n"); //Get it Endpoint* source = it->second; //Attach return endpoint->Attach(media,source->GetJoinable(media)); }
int MediaSession::VideoTranscoderAttachToEndpoint(int videoTranscoderId,int endpointId) { //Get mixer VideoTranscoders::iterator it = videoTranscoders.find(videoTranscoderId); //If not found if (it==videoTranscoders.end()) //Exit return Error("VideoTranscoder not found [%d]\n",videoTranscoderId); //Get it VideoTranscoder* videoTranscoder = it->second; //Get endpoint Endpoints::iterator itEnd = endpoints.find(endpointId); //If not found if (itEnd==endpoints.end()) //Exit return Error("Endpoint not found [%d]\n",endpointId); //Get it Endpoint* endpoint = itEnd->second; //Log endpoint tag name Log("-VideoTranscoderAttachToEndpoint [transcoder:%ls,endpoint:%ls]\n",videoTranscoder->GetName().c_str(),endpoint->GetName().c_str()); //Attach return videoTranscoder->Attach(endpoint->GetJoinable(MediaFrame::Video)); }