我進行了一個實驗,這是我對一個副業項目的想法。
我的目標是讓YouTube現場直播我已經錄製好的視頻。
在視頻結束時,串流將重新開始。
如果你在想,我剛剛進行了這個實驗,看到它的工作情況我確定“可行”,但實際上我並沒有使用它。我也不能保證這對你有用,只是記錄下對我有效的方法,以便下次能夠重用這段程式碼。
我想這個方法對Twitch也會有效,但我還沒有試過,只是猜測而已。
我在YouTube上開始了一個直播,並獲得了串流金鑰。
我在一個文件夾中有一個video.mp4
視頻,然後運行了這個shell腳本:
#!/bin/bash
KEY="你的YT串流金鑰" # 添加你的
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幀。
不要問我這些設置都是做什麼用的,我混合了一些Stack Overflow的答案和教程使其工作。
請確保您的系統上安裝了ffmpeg
命令行工具。您可以在這裡下載。
這在我的Mac上工作,並且在我後來用來測試的Ubuntu VPS上也可以工作,這樣我就可以斷開我的Mac,讓VPS進行串流。