我为我的一个副业的想法做了一个实验。
我的目标是让YouTube直播我已经录制好的视频。
在视频结束时,流媒体将从头开始。
如果你想知道,我刚刚做了这个实验,在看到它工作后,我说 "有效",但我并没有实际使用这个。我也不保证它对你有用,只是把对我有用的东西记录下来,这样下次我就会重复使用这段代码。
我猜这在Twitch上也能用,但我没试过,所以......只是猜测。
我在YouTube上开始了一个直播流,这给了我流媒体的钥匙。
我在一个文件夹里有一个video.mp4 视频,然后运行这个shell脚本:
#!/bin/bash
KEY="the YT stream key" #add yours
ffmpeg -stream_loop -1 -i "video.mp4" -vcodec libx264 -pix_fmt yuv420p -preset medium -r 30-g $((30 * 2)) -b:v 2500k -acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b:a 712000 -bufsize 512k -f flv "rtmp://a.rtmp.youtube.com/live2/$KEY"
这些设置假设视频是720p,每秒30帧。
不要问我这些设置都是做什么的,我把一些SO的答案和教程混合在一起,使其发挥作用。
请确保你的系统上安装了 ffmpeg 命令行工具。
这在我的Mac上是有效的,也在我后来用来测试的Ubuntu VPS上,这样我就可以断开我的Mac,让VPS来做流媒体。