解决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;

相关推荐
柒.梧.21 小时前
理解WebRTC:浏览器原生实时音视频通信
webrtc·实时音视频
XHW___00121 小时前
webrtc中音频3A处理开关配置
音视频·webrtc
sin22011 天前
WebRTC--流程
spring boot·webrtc
runner365.git2 天前
webrtc服务端如何录像
webrtc·录像·fmp4·mpegts
大佐不会说日语~4 天前
WebRTC技术实现简易直播平台
webrtc
YRYDZFtyVKg6 天前
光伏MPPT仿真之扰动观察法探索
webrtc
Knight_AL11 天前
WebRTC / HLS / HTTP-FLV 的本质区别与选型指南
网络协议·http·webrtc
runner365.git11 天前
webrtc推流能成为直播的主要方案吗?
webrtc
XHW___00112 天前
RTP/RTCP 基本知识
webrtc·rtp/rtcp
runner365.git12 天前
语言接入大模型,websocket还是webrtc?
websocket·网络协议·webrtc