ffmpeg "steam" cbr gop
ffmpeg "steam" cbr gop
这是关于使用 ffmpeg 将实时视频流式传输到 STEAM...
我有这个命令
ffmpeg -re -i file-from-webcam.webm -deinterlace
-c:v libx264 -pix_fmt yuv420p -preset veryfast
-tune zerolatency -c:a aac -b:a 128k -ac 2 -strict -2 -crf 18
-r 30 -g 60 -vb 1369k -minrate 1369k -maxrate 1369 -ar 44100 -x264-params "nal-hrd=cbr"
-vf "scale=1280:720" -profile:v main
-f flv "rtmp://ingest-rtmp.broadcast.steamcontent.com/app/steam_...."
但几秒钟后,流停止并且 steam 日志显示
Make sure your upload key-frame interval is set to 2 seconds
and use constant bitrate (CBR).
Limit your encoders group of picture (GOP) to at most two times your framerate.
但我有 -x264-params "nal-hrd=cbr"
和 -r 30 -g 60
帧率 30 GOP 60...
ffmpeg命令有问题吗?
还是 linux 服务器相关?
**** SAME ffmpeg 命令在 youtube、twitter、twitch、dlive、facebook 等中运行得非常好...
所以我缺少什么才能让它在 Steam 上运行?
ffmpeg -re -i file.webm -deinterlace -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -b:a 128k -ac 2 -r 30 -g 60 -vb 1369k -minrate 1369k -maxrate 1369k -bufsize 2730k -ar 44100 -x264-params "nal-hrd=cbr" -vf "scale=1280:720,format=yuv420p" -profile:v main -f flv "rtmp://ingest-rtmp.broadcast.steamcontent.com/app/___key___"
-crf
和 -b:v
/-vb
是互斥的。您的 -vb
可能被忽略了。由于您想要特定的比特率删除 -crf
.
-maxrate 1369
缺少 k
。
- 添加
-bufsize
。参见 FFmpeg Wiki: Encoding for Streaming Sites。
- 不需要
-strict -2
。用户总是在不知道为什么的情况下添加它。 (它适用于 2015 年之前的旧 AAC 编码器。)
- 确保您的输入有音频。某些网站(如 YouTube)需要音频。如果它没有音频,请使用 anullsrc 过滤器生成无声音频。
这是关于使用 ffmpeg 将实时视频流式传输到 STEAM...
我有这个命令
ffmpeg -re -i file-from-webcam.webm -deinterlace
-c:v libx264 -pix_fmt yuv420p -preset veryfast
-tune zerolatency -c:a aac -b:a 128k -ac 2 -strict -2 -crf 18
-r 30 -g 60 -vb 1369k -minrate 1369k -maxrate 1369 -ar 44100 -x264-params "nal-hrd=cbr"
-vf "scale=1280:720" -profile:v main
-f flv "rtmp://ingest-rtmp.broadcast.steamcontent.com/app/steam_...."
但几秒钟后,流停止并且 steam 日志显示
Make sure your upload key-frame interval is set to 2 seconds
and use constant bitrate (CBR).
Limit your encoders group of picture (GOP) to at most two times your framerate.
但我有 -x264-params "nal-hrd=cbr"
和 -r 30 -g 60
帧率 30 GOP 60...
ffmpeg命令有问题吗? 还是 linux 服务器相关?
**** SAME ffmpeg 命令在 youtube、twitter、twitch、dlive、facebook 等中运行得非常好...
所以我缺少什么才能让它在 Steam 上运行?
ffmpeg -re -i file.webm -deinterlace -c:v libx264 -preset veryfast -tune zerolatency -c:a aac -b:a 128k -ac 2 -r 30 -g 60 -vb 1369k -minrate 1369k -maxrate 1369k -bufsize 2730k -ar 44100 -x264-params "nal-hrd=cbr" -vf "scale=1280:720,format=yuv420p" -profile:v main -f flv "rtmp://ingest-rtmp.broadcast.steamcontent.com/app/___key___"
-crf
和-b:v
/-vb
是互斥的。您的-vb
可能被忽略了。由于您想要特定的比特率删除-crf
.-maxrate 1369
缺少k
。- 添加
-bufsize
。参见 FFmpeg Wiki: Encoding for Streaming Sites。 - 不需要
-strict -2
。用户总是在不知道为什么的情况下添加它。 (它适用于 2015 年之前的旧 AAC 编码器。) - 确保您的输入有音频。某些网站(如 YouTube)需要音频。如果它没有音频,请使用 anullsrc 过滤器生成无声音频。