Documentation ¶
Index ¶
Constants ¶
View Source
const ( // 会话描述标识 Description = "application/sdp" // 当前版本号 Version = "0" // 默认版本,无小版本号 // 地址类型 AddressTypeIPv4 = "IP4" // IPv4 AddressTypeIPv6 = "IP6" // IPv6 // 网络类型常量 NetworkTypeInternet = "IN" // 因特网 // 传输协议 ProtocolUdp = "UDP" // UDP ProtocolRtpAvp = "RTP/AVP" // RTP/AVP ProtocolRtpSavp = "RTP/SAVP" // RTP/SAVP // 媒体类型 MediaTypeAudio = "audio" // 音频 MediaTypeVideo = "video" // 视频 MediaTypeText = "text" // 文本 MediaTypeApplication = "application" // 应用 MediaTypeMessage = "message" // 消息 // 会话层,描述字段按顺序排列 FieldVersion = "v" // 协议版本 FieldBasic = "o" // 发起者和会话标识符 FieldSessionName = "s" // 会话名字 FieldSessionInfo = "i" // * 会话信息 FieldURI = "u" // * URI标识符 FieldEmail = "e" // * 邮件地址 FieldPhone = "p" // * 电话号码 FieldConnection = "c" // * 连接信息,只有所有媒体层都有这个字段时,会话层才可以没有 FieldBandwidth = "b" // * 0个或多个带宽信息 // 一个或多个时间描述 FieldTimeZone = "z" // * 时域调整 FieldEncryptionKey = "k" // * 加密密钥 FieldAttribute = "a" // * 0个或多个会话属性 // 时间描述字段 FieldTime = "t" // 会话有效的时间 FieldRepeatTimes = "r" // * 0个或多个重复时间 // 媒体描述字段,如果存在的话 FieldMediaInfo = "m" // 媒体名字和传输地址 FieldMediaTitle = "i" // * 媒体标题 FieldMediaConnection = "c" // * 连接信息,如果在会话层出现,则这里可以不出现 FieldMediaBandwidth = "b" // * 0个或多个带宽信息 FieldMediaEncryptionKey = "k" // * 加密密钥 FieldMediaAttribute = "a" // * 0个或多个媒体属性 )
View Source
const CRLF = "\r\n"
分隔符
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Basic ¶
type Basic struct { Username string // 用户名 SessionId string // 会话ID SessionVersion string // 会话版本 NetworkType string // 网络类型 AddressType string // 地址类型 UnicastAddress string // 任务创建计算机的地址 }
拥有者或者创建者和会话标识
type Connection ¶
type Connection struct { NetworkType string // 网络类型 AddressType string // 地址类型 Address string // 连接地址 }
连接数据,可以是会话级别,也可以是媒体级别
type Media ¶
type Media struct { Info MediaInfo // m 媒体名称和传输地址 Title string // i* 媒体标题 Connection *Connection // c* 连接信息,如果会话层有,这里可以没有 UnsupportLine []string // TODO 不支持处理的行 }
媒体项
type MediaInfo ¶
type MediaInfo struct { MediaType string // 媒体类型 Port string // 端口或端口列表 Protocol string // 传输协议 Format string // 其他格式,中间可以有空格 }
媒体名称和传输地址
type Message ¶
type Message struct { Version string // v 版本号 Basic Basic // o 创建者/接收者和会话标识 SessionName string // s 会话名称 Connection *Connection // c* 连接信息 UnsupportLines []string // 不支持处理的行 Media []Media // 媒体信息 }
完整的SDP消息
func NewMessage ¶
Click to show internal directories.
Click to hide internal directories.