FFmpeg B站直播
Contents
FFmpeg是一个强大的视频流处理工具, 基本的转码操作就不说了. 我想认识它都是从它无所不能的格式转换开始的.
如果你有B站的直播账号, 可以试试下面这些命令, 如果你想推龙珠, 或是虎牙,
欢迎你探索FFmpeg
的命令, 我给你在博客加链接哈.
使用FFmpeg
推上B站
其实我参考了这位兄台的配置: 使用FFmpeg在B站直播的姿势
1 | # 后面的地址, 就是RTMP地址+直播码 |
上面这个命令是向直播间推送了一段视频, 要是全介绍一遍命令你也不想看, 我挑几个关键的
说一下哈(其实我之前没有用过FFmpeg
, 剩下的暂时真的不想去了解了, 有问题请大家在
评论区直接指出就好了).
参数 | 一些含义 |
---|---|
-re | 放慢读取速度, 不加这个参数, 推视频的时候fps会达到100~200, 服务器来不及接受的. |
-i; -vf | 指定视频以及字幕. |
-c:v libx264 | 我也不知道为什么一定要用x264编码一下, 可能就是需要吧 |
-flv | B站只接受flv格式的推流 |
树莓派推送
有很多同学有树莓派这种小东西, 你们完全可以用树莓派直接推送, 反正对于Linux来说,
FFmpeg
已经快要成为了默认软件, 贴出来直播地址, 我们一起围观.
FFmpeg
录屏以及测试
说完了RTMP推送, 再来一点屏幕录制以及测试相关的内容:
1 | ffmpeg \ |
像上面的这条命令, 就可以录制屏幕内容到output.mp4
中.
请注意, 因为我是Linux用户, 所以我这边使用
-f x11grab
, 如果你是Windows 用户, 请使用-f gdigrab
,Mac
用户请自己探索哈.
上面的命令, 对于录制来说, 已经够了, 但是我们只是想查看一下视频, 其实不一定要他生成 文件的, 生成了还要去删.
实现快速预览
这个时候, 如果你有流这个概念, 就应该可以知道, 视频也是一种流, 刚刚的操作只是将
视频流导入了output.mp4
这个文件中, 那么, 我们可以直接使用播放器来播放这个视频流,
顺势就有了下面的命令, 可以不生成文件, 直接使用stdout
作为中间流传递.
1 | ffmpeg \ |
命令中的-
输出视频流到stdout
, mpv -
就表示从stdout
来读入视频流
(也可以使用vlc -
).
所以, 你可以直接使用本地播放器来查看测试FFmpeg
的输出文件.
最后, 放上我的直播地址, 直播缺氧的时候, 欢迎大家来看, 哈哈哈, 好像这才是重点: