mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2024-11-22 19:00:01 +08:00
extmap相关设置改成枚举
This commit is contained in:
parent
9f25392f69
commit
cd96267dc8
@ -1251,27 +1251,25 @@ bool RtcSession::supportRtcpFb(const string &name, TrackType type) const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
string const SdpConst::kTWCCRtcpFb = "transport-cc";
|
string const SdpConst::kTWCCRtcpFb = "transport-cc";
|
||||||
string const SdpConst::kTWCCExtMap = "http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01";
|
|
||||||
string const SdpConst::kRembRtcpFb = "goog-remb";
|
string const SdpConst::kRembRtcpFb = "goog-remb";
|
||||||
string const SdpConst::kRembExtMap = "http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
|
|
||||||
|
|
||||||
void RtcConfigure::RtcTrackConfigure::enableTWCC(bool enable){
|
void RtcConfigure::RtcTrackConfigure::enableTWCC(bool enable){
|
||||||
if (!enable) {
|
if (!enable) {
|
||||||
rtcp_fb.erase(SdpConst::kTWCCRtcpFb);
|
rtcp_fb.erase(SdpConst::kTWCCRtcpFb);
|
||||||
extmap.erase(SdpConst::kTWCCExtMap);
|
extmap.erase(RtpExtType::abs_send_time);
|
||||||
} else {
|
} else {
|
||||||
rtcp_fb.emplace(SdpConst::kTWCCRtcpFb);
|
rtcp_fb.emplace(SdpConst::kTWCCRtcpFb);
|
||||||
extmap.emplace(SdpConst::kTWCCExtMap);
|
extmap.emplace(RtpExtType::transport_cc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void RtcConfigure::RtcTrackConfigure::enableREMB(bool enable){
|
void RtcConfigure::RtcTrackConfigure::enableREMB(bool enable){
|
||||||
if (!enable) {
|
if (!enable) {
|
||||||
rtcp_fb.erase(SdpConst::kRembRtcpFb);
|
rtcp_fb.erase(SdpConst::kRembRtcpFb);
|
||||||
extmap.erase(SdpConst::kRembExtMap);
|
extmap.erase(RtpExtType::abs_send_time);
|
||||||
} else {
|
} else {
|
||||||
rtcp_fb.emplace(SdpConst::kRembRtcpFb);
|
rtcp_fb.emplace(SdpConst::kRembRtcpFb);
|
||||||
extmap.emplace(SdpConst::kRembExtMap);
|
extmap.emplace(RtpExtType::transport_cc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1292,13 +1290,12 @@ void RtcConfigure::RtcTrackConfigure::setDefaultSetting(TrackType type){
|
|||||||
preferred_codec = {CodecAAC, CodecG711U, CodecG711A, CodecOpus};
|
preferred_codec = {CodecAAC, CodecG711U, CodecG711A, CodecOpus};
|
||||||
rtcp_fb = {SdpConst::kTWCCRtcpFb, SdpConst::kRembRtcpFb};
|
rtcp_fb = {SdpConst::kTWCCRtcpFb, SdpConst::kRembRtcpFb};
|
||||||
extmap = {
|
extmap = {
|
||||||
SdpConst::kTWCCExtMap,
|
RtpExtType::ssrc_audio_level,
|
||||||
SdpConst::kRembExtMap,
|
RtpExtType::abs_send_time,
|
||||||
"urn:ietf:params:rtp-hdrext:ssrc-audio-level",
|
RtpExtType::transport_cc,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:mid",
|
RtpExtType::sdes_mid,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id",
|
RtpExtType::sdes_rtp_stream_id,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id",
|
RtpExtType::sdes_repaired_rtp_stream_id
|
||||||
"urn:ietf:params:rtp-hdrext:csrc-audio-level"
|
|
||||||
};
|
};
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -1307,17 +1304,17 @@ void RtcConfigure::RtcTrackConfigure::setDefaultSetting(TrackType type){
|
|||||||
preferred_codec = {CodecH264, CodecH265};
|
preferred_codec = {CodecH264, CodecH265};
|
||||||
rtcp_fb = {SdpConst::kTWCCRtcpFb, SdpConst::kRembRtcpFb, "nack", "ccm fir", "nack pli"};
|
rtcp_fb = {SdpConst::kTWCCRtcpFb, SdpConst::kRembRtcpFb, "nack", "ccm fir", "nack pli"};
|
||||||
extmap = {
|
extmap = {
|
||||||
SdpConst::kTWCCExtMap,
|
RtpExtType::abs_send_time,
|
||||||
SdpConst::kRembExtMap,
|
RtpExtType::transport_cc,
|
||||||
"urn:ietf:params:rtp-hdrext:toffset",
|
RtpExtType::sdes_mid,
|
||||||
"urn:3gpp:video-orientation",
|
RtpExtType::sdes_rtp_stream_id,
|
||||||
"http://www.webrtc.org/experiments/rtp-hdrext/playout-delay",
|
RtpExtType::sdes_repaired_rtp_stream_id,
|
||||||
"http://www.webrtc.org/experiments/rtp-hdrext/video-content-type",
|
RtpExtType::video_timing,
|
||||||
"http://www.webrtc.org/experiments/rtp-hdrext/video-timing",
|
RtpExtType::color_space,
|
||||||
"http://www.webrtc.org/experiments/rtp-hdrext/color-space",
|
RtpExtType::video_content_type,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:mid",
|
RtpExtType::playout_delay,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id",
|
RtpExtType::video_orientation,
|
||||||
"urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id"
|
RtpExtType::toffset
|
||||||
};
|
};
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -1566,7 +1563,7 @@ RETRY:
|
|||||||
|
|
||||||
//对方和我方都支持的扩展,那么我们才支持
|
//对方和我方都支持的扩展,那么我们才支持
|
||||||
for (auto &ext : offer_media.extmap) {
|
for (auto &ext : offer_media.extmap) {
|
||||||
if (configure.extmap.find(ext.ext) != configure.extmap.end()) {
|
if (configure.extmap.find(RtpExt::getExtType(ext.ext)) != configure.extmap.end()) {
|
||||||
answer_media.extmap.emplace_back(ext);
|
answer_media.extmap.emplace_back(ext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,7 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
#include "RtpExt.h"
|
||||||
#include "assert.h"
|
#include "assert.h"
|
||||||
#include "Extension/Frame.h"
|
#include "Extension/Frame.h"
|
||||||
#include "Common/Parser.h"
|
#include "Common/Parser.h"
|
||||||
@ -695,7 +696,7 @@ public:
|
|||||||
SdpAttrFingerprint fingerprint;
|
SdpAttrFingerprint fingerprint;
|
||||||
|
|
||||||
set<string> rtcp_fb;
|
set<string> rtcp_fb;
|
||||||
set<string> extmap;
|
set<RtpExtType> extmap;
|
||||||
vector<CodecId> preferred_codec;
|
vector<CodecId> preferred_codec;
|
||||||
vector<SdpAttrCandidate> candidate;
|
vector<SdpAttrCandidate> candidate;
|
||||||
|
|
||||||
@ -734,9 +735,7 @@ private:
|
|||||||
class SdpConst {
|
class SdpConst {
|
||||||
public:
|
public:
|
||||||
static string const kTWCCRtcpFb;
|
static string const kTWCCRtcpFb;
|
||||||
static string const kTWCCExtMap;
|
|
||||||
static string const kRembRtcpFb;
|
static string const kRembRtcpFb;
|
||||||
static string const kRembExtMap;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
SdpConst() = delete;
|
SdpConst() = delete;
|
||||||
|
Loading…
Reference in New Issue
Block a user