SDP可以说是WebRTC的核心,因为双方进行通信的参数都在其中,如使用的编解码器是多少,码流是多大,有多少个媒体流等等这些都在 SDP中描述着。所以必须要非常清楚每一行的含义。而往往这部分知识很复杂,能了解清楚的人少之又少,从而导致对 WebRTC的理解很难深入下去…
11-1 【协议规范】SDP规范
SDP简介



SDP结构
SDP字段含义








rtpmap,fmtp比较重要。
11-2 【协议规范】WebRTC中的SDP

11-3 【详解】WebRTC中Offer_AnswerSDP
Local SDP和Remote SDP差不多。
v=0 //版本号o=- 6056452709547191583 2 IN IP4 127.0.0.1 //2版本号 IN Internets=-t=0 0 实时通话,一直为0.。开始时间和终止时间。a=group:BUNDLE 0a=extmap-allow-mixeda=msid-semantic: WMS 9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPF//媒体信息 96-最后是payloadm=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 102 121 127 120 125 107 108 109 35 36 124 119 123 118 114 115 116c=IN IP4 0.0.0.0a=rtcp:9 IN IP4 0.0.0.0a=ice-ufrag:EVGda=ice-pwd:HDm9JdT3VNhVdb6lYCYdfzeGa=ice-options:tricklea=fingerprint:sha-256 EE:2B:CB:3E:65:70:1F:E3:D6:A0:C3:5D:AC:60:E3:8F:0E:50:8E:FE:9F:8E:54:4F:65:D9:FC:13:02:64:49:6Da=setup:actpassa=mid:0a=extmap:1 urn:ietf:params:rtp-hdrext:toffseta=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-timea=extmap:3 urn:3gpp:video-orientationa=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01a=extmap:5 http://www.webrtc.org/experiments/rtp-hdrext/playout-delaya=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-typea=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timinga=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-spacea=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mida=extmap:10 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-ida=extmap:11 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-ida=sendrecva=msid:9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPF 42e5113f-5a41-4bfe-a398-423996678a4da=rtcp-muxa=rtcp-rsizea=rtpmap:96 VP8/90000a=rtcp-fb:96 goog-remba=rtcp-fb:96 transport-cca=rtcp-fb:96 ccm fira=rtcp-fb:96 nacka=rtcp-fb:96 nack plia=rtpmap:97 rtx/90000a=fmtp:97 apt=96a=rtpmap:98 VP9/90000a=rtcp-fb:98 goog-remba=rtcp-fb:98 transport-cca=rtcp-fb:98 ccm fira=rtcp-fb:98 nacka=rtcp-fb:98 nack plia=fmtp:98 profile-id=0a=rtpmap:99 rtx/90000a=fmtp:99 apt=98a=rtpmap:100 VP9/90000a=rtcp-fb:100 goog-remba=rtcp-fb:100 transport-cca=rtcp-fb:100 ccm fira=rtcp-fb:100 nacka=rtcp-fb:100 nack plia=fmtp:100 profile-id=2a=rtpmap:101 rtx/90000a=fmtp:101 apt=100a=rtpmap:102 H264/90000a=rtcp-fb:102 goog-remba=rtcp-fb:102 transport-cca=rtcp-fb:102 ccm fira=rtcp-fb:102 nacka=rtcp-fb:102 nack plia=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001fa=rtpmap:121 rtx/90000a=fmtp:121 apt=102a=rtpmap:127 H264/90000a=rtcp-fb:127 goog-remba=rtcp-fb:127 transport-cca=rtcp-fb:127 ccm fira=rtcp-fb:127 nacka=rtcp-fb:127 nack plia=fmtp:127 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001fa=rtpmap:120 rtx/90000a=fmtp:120 apt=127a=rtpmap:125 H264/90000a=rtcp-fb:125 goog-remba=rtcp-fb:125 transport-cca=rtcp-fb:125 ccm fira=rtcp-fb:125 nacka=rtcp-fb:125 nack plia=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01fa=rtpmap:107 rtx/90000a=fmtp:107 apt=125a=rtpmap:108 H264/90000a=rtcp-fb:108 goog-remba=rtcp-fb:108 transport-cca=rtcp-fb:108 ccm fira=rtcp-fb:108 nacka=rtcp-fb:108 nack plia=fmtp:108 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01fa=rtpmap:109 rtx/90000a=fmtp:109 apt=108a=rtpmap:35 AV1X/90000a=rtcp-fb:35 goog-remba=rtcp-fb:35 transport-cca=rtcp-fb:35 ccm fira=rtcp-fb:35 nacka=rtcp-fb:35 nack plia=rtpmap:36 rtx/90000a=fmtp:36 apt=35a=rtpmap:124 H264/90000a=rtcp-fb:124 goog-remba=rtcp-fb:124 transport-cca=rtcp-fb:124 ccm fira=rtcp-fb:124 nacka=rtcp-fb:124 nack plia=fmtp:124 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d001fa=rtpmap:119 rtx/90000a=fmtp:119 apt=124a=rtpmap:123 H264/90000a=rtcp-fb:123 goog-remba=rtcp-fb:123 transport-cca=rtcp-fb:123 ccm fira=rtcp-fb:123 nacka=rtcp-fb:123 nack plia=fmtp:123 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=64001fa=rtpmap:118 rtx/90000a=fmtp:118 apt=123a=rtpmap:114 red/90000a=rtpmap:115 rtx/90000a=fmtp:115 apt=114a=rtpmap:116 ulpfec/90000a=ssrc-group:FID 3659076229 3083105003a=ssrc:3659076229 cname:tAOMPA92M7yAkOzRa=ssrc:3659076229 msid:9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPF 42e5113f-5a41-4bfe-a398-423996678a4da=ssrc:3659076229 mslabel:9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPFa=ssrc:3659076229 label:42e5113f-5a41-4bfe-a398-423996678a4da=ssrc:3083105003 cname:tAOMPA92M7yAkOzRa=ssrc:3083105003 msid:9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPF 42e5113f-5a41-4bfe-a398-423996678a4da=ssrc:3083105003 mslabel:9cmBHlRNiTv2IpyJtWDAuQOn1lOCzK8b6cPFa=ssrc:3083105003 label:42e5113f-5a41-4bfe-a398-423996678a4d
11-4 对于SDP协议是做什么作用的?

SDP字段讲解
https://www.cnblogs.com/chyingp/archive/2019/07/29/sdp-in-webrtc.html




