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

简介: 指挥传递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

相关文章
|
2月前
网络延迟导致终端卡顿
网络延迟导致终端卡顿
|
12月前
|
C#
如何解决在PotPlayer中看视频音画不同步的问题(C#视频可用)
如何解决在PotPlayer中看视频音画不同步的问题(C#视频可用)
967 0
|
15天前
|
Web App开发 编解码 资源调度
在阿里云直播解决方案中,当使用ARTC协议观看直播并进行清晰度切换时出现画面卡顿或马赛克现象,可能存在以下几种原因
【6月更文挑战第30天】阿里云直播中,ARTC协议下清晰度切换出现卡顿或马赛克可能由网络带宽、缓冲策略、转码效率、播放器解码、协议特点及服务器资源调度引起。解决措施包括优化网络、智能切换算法、播放器与服务器优化。通过监控和日志分析定位问题,参照官方最佳实践进行优化。
39 1
|
9月前
切换主题 | 切换白天和夜晚模式
夜晚浏览网页太亮,试试夜晚模式吧,此以 vue3 为例
|
12月前
|
监控 C#
C#大华监控画面切换
C#大华监控画面切换
109 0
|
Android开发 开发工具
RK3399平台开发系列讲解(系统修改记录篇)1.15、安卓系统旋转后导航栏丢失,并有黑边问题解决
RK3399平台开发系列讲解(系统修改记录篇)1.15、安卓系统旋转后导航栏丢失,并有黑边问题解决
170 0
|
缓存 数据处理 异构计算
屏幕刷新机制简单问(没有代码,请放心享用)
周一好呀,今天给大家带来一点轻松简单的内容,没有代码,请享用~
249 0
屏幕刷新机制简单问(没有代码,请放心享用)
libvlc视频播放器: 补偿播放进度时间-更加精细
在上几个章节,介绍了如何使用libvlc开发一款视频播放器,libvlc除了具备普通播放器该有的功能,还有很多其他强大的功能,比如:播放rtsp\rtmp流媒体视频、录制画面为视频、各种滤镜等等;
577 0
|
存储 缓存 Java
终端卡顿优化的全记录
目前手机SOC的性能越来越少,很多程序员在终端程序的开发过程中也不太注意性能方面的优化,尤其是不注意对齐和分支优化,但是这两种问题一旦出现所引发的问题,是非常非常隐蔽难查的,不过好在项目中用到了移动端的性能排查神器友盟U-APM工具的支持下,最终几个问题得到了圆满解决。