当前位置: 首页 > news >正文

WebRTC系列-H264视频帧组包(视频花屏问题)

文章目录

  • 工具函数
    • 是否满足组帧条件函数PotentialNewFrame
    • 更新丢失包记录 UpdateMissingPackets
    • 重要属性
  • 1. InsertPacket
  • 2. FindFrames

WebRTC在弱网环境下传输较大的视频数据,比如:屏幕共享数据;会偶发的出现黑屏的问题;也就是说当视频的码率比较大且视频的分辨率比较高的时候,有一定概率出现黑屏的问题;
本文基于M76分支的代码分析其WebRTC组包的两个关键函数;WebRTC的组帧逻辑主要在 PacketBuffer类中(在modules/video_coding/packet_buffer.cc中),其中的 PacketBuffer::InsertPacketPacketBuffer::FindFrames是组包的两个关键函数;这篇文章会分析其中的主要逻辑及可能导致问题的位置;
本文会从代码逻辑,以及调试断点代码两个角度去分析可能存在的问题;文末会给出解决方式及可能存在的问题;

http://www.lryc.cn/news/292170.html

相关文章:

  • Common Mistakes in German
  • Java基础数据结构之反射
  • 【实战系列----消息队列 数据缓存】rabbitmq 消息队列 搭建和应用
  • 【云原生kubernetes系列】---亲和与反亲和
  • 【极简】Pytorch中的register_buffer()
  • J-Link:STM32使用J-LINK烧录程序,其他MCU也通用
  • 从0到1入门C++编程——06 类和对象之多态、文件操作
  • elementUI实现selecttree自定义下拉框树形组件支持多选和搜索
  • 使用 Spring Boot 构建 Docker 镜像的简易指南
  • 「数据结构」3.ArrayList
  • H.264与H.265的主要差异
  • 【数据结构】 归并排序超详解
  • Debezium系列之:深入理解GTID全局事务标识,并记录一次数据库重启造成数据丢失的原因和解决方案
  • 格式化内存卡后,如何找回丢失的监控视频?
  • 《动手学深度学习(PyTorch版)》笔记4.8
  • 助力水下潜行:浮力调节系统仿真
  • Mysql常用sql语句
  • dubbo rpc序列化
  • 【C语言】va_list(可变参数处理)
  • 负载均衡下的webshell连接
  • 5-4 D. DS串应用—最长重复子串
  • C语言实现12种排序算法
  • C语言应用实例——贪吃蛇
  • Mac如何设置一位数密码?
  • 运动编辑学习笔记
  • C#小结:ScottPlot 5.0在VS2022桌面开发的应用(以winform为例)
  • Jmeter性能测试: Jmeter 5.6.3 分布式部署
  • 跟着cherno手搓游戏引擎【15】DrawCall的封装
  • Qt实现窗口吸附屏幕边缘 自动收缩
  • shell脚本之免交互