一个解决视频切换花屏的方案

简介: 指挥传递RTP的是RTCP,那么RTCP中有没有介绍传递I帧的命令呢?我抱着这样的疑问进行了下搜索,解决方法RFC已经帮我们定义好了。

问题:


最近在开发一个项目,该项目需要在主被叫视频通话过程中对主叫播放视频彩铃,当视频彩铃播放完成后,再切回到主被叫视频通话。


开发完成后,进行测试中发现存在一个问题。视频彩铃切换到视频通话后,存在画面切换时延长的问题。


分析:


我想到切换视频最快的方法是刷新I帧,如果能让主被叫传送I帧,应该能解决这个问题。


指挥传递RTP的是RTCP,那么RTCP中有没有介绍传递I帧的命令呢?我抱着这样的疑问进行了下搜索,解决方法RFC已经帮我们定义好了。


在RFC4585中,定义了PLI(Picture Loss Indication)消息,意思是告知图像传输丢帧,要求重传I帧。


根据协议上的描述,将Packet Type设置为206(Payload-specific Feedback),子类型设置为1(RTCP Feedback message type:Picture Loss Indication )。

2b7791126fa84076a0f68d8c9b9b1883.png

800bef884a4f4d06bdf38203b4bf8cf0.png

13ee446b5b0548889d24740df23d65cd.png


解决方案:


当捕捉到视频文件播放完成后,对视频通话的主被叫发送PLI格式的RTCP。版本修改后,视频切换非常迅速清晰。


01eb4aabcfe8433b85d420a1ce99d6a5.png

相关文章
|
C#
如何解决在PotPlayer中看视频音画不同步的问题(C#视频可用)
如何解决在PotPlayer中看视频音画不同步的问题(C#视频可用)
1053 0
|
6月前
|
Web App开发 编解码 资源调度
在阿里云直播解决方案中,当使用ARTC协议观看直播并进行清晰度切换时出现画面卡顿或马赛克现象,可能存在以下几种原因
【6月更文挑战第30天】阿里云直播中,ARTC协议下清晰度切换出现卡顿或马赛克可能由网络带宽、缓冲策略、转码效率、播放器解码、协议特点及服务器资源调度引起。解决措施包括优化网络、智能切换算法、播放器与服务器优化。通过监控和日志分析定位问题,参照官方最佳实践进行优化。
243 1
|
7月前
|
缓存
停止AVPlayer并在缓存阶段立即播放其它视频闪退问题及解决方案
停止AVPlayer并在缓存阶段立即播放其它视频闪退问题及解决方案
82 0
切换主题 | 切换白天和夜晚模式
夜晚浏览网页太亮,试试夜晚模式吧,此以 vue3 为例
195 0
|
监控 C#
C#大华监控画面切换
C#大华监控画面切换
150 0
|
Web App开发 存储 缓存
我是如何优化弹窗拖拽卡顿的?内附排查和优化过程
我是如何优化弹窗拖拽卡顿的?内附排查和优化过程
248 0
|
人工智能 JavaScript 前端开发
小程序实现页面多级来回切换支持滑动和点击操作
想留住粉丝,就必须安排演示: [审核中…]然后开摆!!!!首先通过swiper创建一个简单的多tab页面 通过触发pagechange1方法中的事件对currentIndex来进行赋值,又通过currentIndex的改变使前端wxml对应更改,这个部分对滑动和点击的操作都一样,无非就是使currentIndex对应到各自的位置,通过数字来决定位置 这个部分完整代码如下: wxml wxss js 上一步完成后,下级页面再加一个滑动页面,当内切换结束后,在做切换就是父级的切换操作 在“内容1”的vie
273 0
小程序实现页面多级来回切换支持滑动和点击操作
|
Android开发
android图片切换ImageSwichter的动画切换效果
android图片切换ImageSwichter的动画切换效果
385 1
|
缓存 数据处理 异构计算
屏幕刷新机制简单问(没有代码,请放心享用)
周一好呀,今天给大家带来一点轻松简单的内容,没有代码,请享用~
296 0
屏幕刷新机制简单问(没有代码,请放心享用)