我已分别使用编解码器PCMA,PCMU和G729A配置了驱动和接收SIP端点。当我从驱动端看到sip邀请时,我看到编解码器的顺序相同。来自接收方的183会话进度显示G729A,并且该编解码器进行呼叫。为什么会这样?我希望编解码器协商为PCMA。是否涉及任何优先事项?如有效载荷类型?
答案 0 :(得分:1)
SDP商品中的每个medialine都包含支持的编解码器,按优先顺序排列。
RFC3264 5.1州(关于SDP提供):
在所有情况下,“m =”行中的格式必须按顺序列出 首选项,列出的第一种格式是首选。在这 case,preferred表示要约的收件人应该使用 具有最高优先级的格式。
RFC3264 6.1(关于SDP答案):
虽然回答者可以按照所需的顺序列出格式 偏好,建议除非有特殊原因, 回答者列表以相同的相对顺序格式化 出现在报价中。换句话说,如果商品中的流列表 音频编解码器8,22和48,按此顺序,仅限应答者 支持编解码器8和48,如果回答者有,建议使用 没有理由改变它,答案中的编解码器的顺序是8, 48,而不是48,8。这有助于确保使用相同的编解码器 两个方向。
以下几行摘自SDP优惠;发送者宣布他支持编解码器8,0和101.他更喜欢8(PCMA)超过0(PCMU)。
m=audio 6200 RTP/AVP 8 0 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
接收方将决定实际使用哪个编解码器,并在SDP应答中发送。他将省略他不支持的编解码器,并可能改变其余编解码器的相对顺序(虽然不推荐)。