解决SRS推送webrtc流卡顿问题

目录

1.问题描述

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

2.原因分析

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

3.ffmpeg去掉B帧的方法

3.1 命令行推流

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

bash 复制代码
 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;

相关推荐
换个昵称都难15 天前
webrtc peerconnection_server 模块介绍
运维·服务器·webrtc
EasyGBS15 天前
延迟直降90%!国标GB28181视频平台EasyGBS支持WebRTC WHIP推流设备接入,让万物互联更简单
音视频·webrtc
换个昵称都难15 天前
webrtc RtpRtcp模块化测试-MockRtpRtcp
webrtc
如意IT16 天前
指纹浏览器检测之BrowserScan的webrtc指纹检测和反检测
自动化·webrtc·chromium·浏览器开发
换个昵称都难16 天前
webrtc TURN 主要源码介绍
webrtc
换个昵称都难16 天前
webrtc RTC_P2P源码解析
asp.net·webrtc·p2p
换个昵称都难16 天前
webrtc StunServer源码介绍
webrtc
数据知道17 天前
指纹浏览器:DNS 泄漏防范与 WebRTC 本地 IP 屏蔽的底层实现
爬虫·网络协议·tcp/ip·安全·webrtc·数据采集·指纹浏览器
换个昵称都难18 天前
webrtc源码解析概要介绍
webrtc
换个昵称都难18 天前
WebRTC 完整调用流程(前端纯 JS 实现,最简可运行)
webrtc