• SDP协议介绍


    一、概述

    SDP协议,全称Session Description Protocol,翻译过来就是会话描述协议。
    什么是会话:比如一次网络电话、一次电话会议、一次视频聊天,这些都可以称之为一次会话。

    二、作用

    SDP在webrtc或voip通话中有重要的作用,它通过文本对媒体信息进行描述。其本身并不传递媒体数据,而是用于参与媒体会话的双方进行媒体协商。通过SDP,通信双方可以知道对方的:支持的音视频编码器、网络信息以及其他重要信息。在webrtc中没有规定统一的信令,通常信令使用使用者自己实现,下图是webrtc中sdp的作用:

    highlighting text

    三、格式规范

    • 多个媒体级描述
    1. 媒体格式
    2. 传输协议
    3. 纯属IP和端口
    4. 媒体负载类型
    • 一个会话级描述
    1. 会话的名称和目的
    2. 会话存活时间
    3. 会话中包括多个媒体信息
    • 格式:type=value组成

    (1)会话层

    1. v=(协议版本)
    2. o=(所有者/创建者和会话标识符)
    3. s=(会话名称)
    4. c= * (连接信息 ― 如果包含在所有媒体中,则不需要该字段)
    5. t=会话存活时间
    6. a = *0 个或多个会话属性行)

    ps:(带星号的是可选字段,不带的是必选)

    (2)媒体层

    1. m=(媒体名称和传输地址)
    2. c=*(连接信息 ― 如果包含在所有媒体中,则不需要该字段)
    3. b=*(带宽信息)
    4. a = *0 个或多个会话属性行)
    • 字段含义详解:
      • 1、version 必选

      • 2、session name 必选

      • s= [sission name] 会话名,s=-表示忽略会话

      • 3、origion/owner 必选
        o=
        例子:o=- 6474257184349789314 2 IN IP4 127.0.0.1

      • 4、connection 可选
        c=


        例子:c=IN IP4 0.0.0.0

      • 5、media 必须
        m=
        例子:m=audio 9 UDP/TLS/RTP/SAVPF 111 63 103 104 9 0 8 106 105 13 110 112 113 126

      • 6、attributes 可选
        a= 或a=:
        例子:a=frameate:<帧速率>

      • 7、rtpmap 可选(重要)
        a=rtpmap:/[/]
        例子:a=rtpmap:111 opus/48000/2

      • 8、fmtp 可选
        a=fmtp: paramerters
        例子:a=fmtp:101 apt=100

    参考

    SDP协议介绍

  • 相关阅读:
    企业级 NoSQL 数据库 Redis
    【Flask介绍】
    XLSX json转文本流 & json转文件
    Bash变量--用户自定义变量
    不懂单链表? 这篇文章就帮你搞明白
    Token详解
    软件测试面试题之自动化测试题大合集(上)
    艾美捷胆固醇肉豆蔻酸酯技术信息说明
    VMWare和CentOS 7 的超级详细的安装步骤!!
    企业微信 API 接口调用教程:图文详解企业微信 API 的使用方法
  • 原文地址:https://blog.csdn.net/uianster/article/details/125902301