sip info 方法 发起 h264关键帧请求

19 篇文章 2 订阅
10 篇文章 11 订阅


csdn lidp  http://blog.csdn.net/perfectpdl


有些视频终端只在呼叫刚建立时发几个关键帧,如果关键帧丢失,对方解码会会失败或出现马赛克现象,对此通过发送关键帧请求对方发送关键帧,

呼叫建立后,通过SIP INFO 扩展 在 dialog 内发送 关键帧请求,SIP INFO 构造参考 rfc 2976 http://www.ietf.org/rfc/rfc2976.txt,

info 消息体 带 xml 数据。具体参考 rfc http://www.rfc-editor.org/rfc/rfc5168.txt.



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要使用SIP.js发送session.info请求,你需要首先创建一个SIP Session,然后使用该Session的`info()`方法发送一个包含关键帧请求SIP INFO消息。以下是一个示例代码: ```javascript //创建SIP Session const userAgent = new SIP.UA(); const session = userAgent.invite('[email protected]'); //发送session.info请求获取关键帧 session.info({ body: 'action=getParam;param=KEY_FRAME', contentType: 'application/json' }).then(() => { console.log('Successfully sent session.info with key frame request'); }).catch((error) => { console.log('Error sending session.info request: ', error); }); ``` 在这个例子中,我们首先创建了一个SIP Session,然后使用`session.info()`方法发送了一个包含关键帧请求SIP INFO消息。在消息的body中,我们使用了一个JSON格式的字符串,指定了请求参数为`KEY_FRAME`。你需要根据你的具体使用环境和需求,自行修改该字符串中的参数。 值得注意的是,如果你想在接收到关键帧后立即停止发送session.info请求,可以在请求参数中添加`stopSending`字段,如下所示: ```javascript //发送session.info请求获取关键帧,并停止发送后续请求 session.info({ body: 'action=getParam;param=KEY_FRAME;stopSending=true', contentType: 'application/json' }).then(() => { console.log('Successfully sent session.info with key frame request'); }).catch((error) => { console.log('Error sending session.info request: ', error); }); ``` 这样,当接收到第一个关键帧时,后续的session.info请求就会停止发送。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值