|
|
|
@ -331,6 +331,8 @@ srs_error_t SrsRtcServer::do_create_session(
|
|
|
|
|
{
|
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
|
|
|
|
|
|
SrsContextId cid = _srs_context->get_id();
|
|
|
|
|
|
|
|
|
|
// first add publisher/player for negotiate sdp media info
|
|
|
|
|
if (publish) {
|
|
|
|
|
if ((err = session->add_publisher(req, remote_sdp, local_sdp)) != srs_success) {
|
|
|
|
@ -390,7 +392,6 @@ srs_error_t SrsRtcServer::do_create_session(
|
|
|
|
|
session->set_local_sdp(local_sdp);
|
|
|
|
|
session->set_state(WAITING_STUN);
|
|
|
|
|
|
|
|
|
|
SrsContextId cid = _srs_context->get_id();
|
|
|
|
|
// Before session initialize, we must setup the local SDP.
|
|
|
|
|
if ((err = session->initialize(source, req, publish, username, cid)) != srs_success) {
|
|
|
|
|
return srs_error_wrap(err, "init");
|
|
|
|
@ -444,6 +445,8 @@ srs_error_t SrsRtcServer::setup_session2(SrsRtcConnection* session, SrsRequest*
|
|
|
|
|
{
|
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
|
|
|
|
|
|
SrsContextId cid = _srs_context->get_id();
|
|
|
|
|
|
|
|
|
|
if (session->state() != WAITING_ANSWER) {
|
|
|
|
|
return err;
|
|
|
|
|
}
|
|
|
|
@ -456,7 +459,6 @@ srs_error_t SrsRtcServer::setup_session2(SrsRtcConnection* session, SrsRequest*
|
|
|
|
|
// TODO: FIXME: Collision detect.
|
|
|
|
|
string username = session->get_local_sdp()->get_ice_ufrag() + ":" + remote_sdp.get_ice_ufrag();
|
|
|
|
|
|
|
|
|
|
SrsContextId cid = _srs_context->get_id();
|
|
|
|
|
if ((err = session->initialize(source, req, false, username, cid)) != srs_success) {
|
|
|
|
|
return srs_error_wrap(err, "init");
|
|
|
|
|
}
|
|
|
|
|