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

解决SRS推送webrtc流卡顿问题

目录

  • 1.问题描述
  • 2.原因分析
  • 3.ffmpeg去掉B帧的方法
    • 3.1 命令行推流
    • 3.2 ffmpeg源码推流

1.问题描述

使用ffmpeg通过rtmp协议推流给SRS,然后浏览器通过webrtc拉取播放流,经多次测试发现webrtc播放流总是卡顿,而拉取rtmp流是正常的。

2.原因分析

经测试发现,只要rtmp推流的视频编码中含有B帧,SRS推送出来的webrtc流就卡顿,去掉就好了。

3.ffmpeg去掉B帧的方法

3.1 命令行推流

命令行推流时,增加-bf 0 选项关闭B帧

 nohup ffmpeg -re -stream_loop -1 -i ${vfile} -c:v libx264 -c:a copy -bf 0 -f flv rtmp://10.0.0.136/live/${vname} > /dev/null 2>&1 &

3.2 ffmpeg源码推流

// 设置最大 B 帧数量为 0
codec_context->max_b_frames = 0;

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

相关文章:

  • GDPU Andriod移动应用 Broadcast Receiver
  • CSP/信奥赛C++刷题训练:经典例题 - 栈(1):洛谷P3056 :[USACO12NOV] Clumsy Cows S
  • WiFi一直获取不到IP地址是怎么回事?
  • 蓝牙BLE开发——iOS 每次写入数据超过200字节报错?
  • Ascend Extension for PyTorch是个what?
  • 学习docker第五弹-----高级篇start-Dockerfile
  • 【Elasticsearch】Elasticsearch集成Spring Boot
  • HarmonyOS 移
  • 跨子网的WinCC客户机/服务器如何实现通讯?
  • java 面向对象高级
  • 递推经典例题 - 爬楼梯
  • OpenCV视觉分析之目标跟踪(12)找到局部的最大值函数meanShift()的使用
  • 《数据治理精选案例集2.0(2024版)》592页PDF(已授权分享)
  • 【51单片机】LED点阵屏 原理 + 使用
  • Java基于SpringBoot+Vue的宠物共享平台的设计与实现(附源码,文档)
  • 【案例】Excel使用宏来批量插入图片
  • 报名开启|开放原子大赛“Rust数据结构与算法学习赛”
  • [翻译] 创始人模式(Founder Mode)
  • 拓扑排序(C++类封装+数组模拟队列和邻接表)
  • FP独立站引流革命:GG斗篷技术解锁流量新策略
  • 管道(Pipes)、过滤器(Filters)和拦截器(Interceptors)
  • uniapp组件样式运行至小程序失效
  • 认识鸿蒙系统
  • Docker Compose部署Rabbitmq(Dockerfile安装延迟队列)
  • 硬件基础06 滤波器——无源、有源(含Filter Solutions、Filter Pro、MATLAB Fdatool)
  • shopify模块新增内容或图片
  • 【EMNLP2024】基于多轮课程学习的大语言模型蒸馏算法 TAPIR
  • 置信传播算法复现
  • 【在Linux世界中追寻伟大的One Piece】poll代码改写
  • C++builder中的人工智能(17):神经网络中的自我规则非单调(Mish)激活函数