Merge branch 'master' of github.com:Dw9/ZLMediaKit into master2

This commit is contained in:
xia-chu 2023-08-29 09:59:35 +08:00
commit 415ed33405
2 changed files with 8 additions and 7 deletions

View File

@ -1555,9 +1555,12 @@ shared_ptr<RtcSession> RtcConfigure::createAnswer(const RtcSession &offer) const
//设置音视频端口复用 //设置音视频端口复用
if (!offer.group.mids.empty()) { if (!offer.group.mids.empty()) {
for (auto &m : ret->media) { for (auto &m : ret->media) {
//The remote end has rejected (port 0) the m-section, so it should not be putting its mid in the group attribute.
if(m.port) {
ret->group.mids.emplace_back(m.mid); ret->group.mids.emplace_back(m.mid);
} }
} }
}
return ret; return ret;
} }
@ -1613,15 +1616,13 @@ RETRY:
if (offer_media.type == TrackApplication) { if (offer_media.type == TrackApplication) {
RtcMedia answer_media = offer_media; RtcMedia answer_media = offer_media;
answer_media.role = mathDtlsRole(offer_media.role); answer_media.role = mathDtlsRole(offer_media.role);
#ifdef ENABLE_SCTP
answer_media.direction = matchDirection(offer_media.direction, configure.direction);
answer_media.candidate = configure.candidate;
answer_media.ice_ufrag = configure.ice_ufrag; answer_media.ice_ufrag = configure.ice_ufrag;
answer_media.ice_pwd = configure.ice_pwd; answer_media.ice_pwd = configure.ice_pwd;
answer_media.fingerprint = configure.fingerprint; answer_media.fingerprint = configure.fingerprint;
answer_media.ice_lite = configure.ice_lite; answer_media.ice_lite = configure.ice_lite;
#else #ifndef ENABLE_SCTP
answer_media.direction = RtpDirection::inactive; answer_media.port = 0;
WarnL << "answer sdp忽略application, 请安装usrsctp后再测试datachannel功能";
#endif #endif
ret->media.emplace_back(answer_media); ret->media.emplace_back(answer_media);
return; return;

View File

@ -564,7 +564,7 @@ void WebRtcTransportImp::onCheckAnswer(RtcSession &sdp) {
GET_CONFIG(uint16_t, udp_port, Rtc::kPort); GET_CONFIG(uint16_t, udp_port, Rtc::kPort);
GET_CONFIG(uint16_t, tcp_port, Rtc::kTcpPort); GET_CONFIG(uint16_t, tcp_port, Rtc::kTcpPort);
m.rtcp_addr.port = udp_port ? udp_port : tcp_port; m.rtcp_addr.port = m.port ? (udp_port ? udp_port : tcp_port) : 0;
m.port = m.rtcp_addr.port; m.port = m.rtcp_addr.port;
sdp.origin.address = m.addr.address; sdp.origin.address = m.addr.address;
} }