我使用livestreamer記錄定期現場直播,視頻從YouTube如下Livestreamer - 調度記錄和Debian的Linux發行版變種
livestreamer <youtube-live-url> best -o out_file.mp4
的記錄需要盡一切晚上8點至晚上10點每星期四。
我不能總是在這些時間在電腦上。
我在考慮用crontab-e
在給定的時間,星期四晚上8點用上面的命令開始錄音,這很容易。
流必須在當天晚上10點用CTRL + C停止。 殺死進程將不會工作,因爲流不會被寫入文件。直播流必須用CTRL + C關閉。
問題是我不知道如何將PID分配給初始進程,然後將CTRL + C發送到同一進程,所有這些都是從crontab完成的,以關閉流並將文件寫出。
任何任何想法。也許Crontab是或不是解決這個問題的最好方法。
一個特定的工作配方,如果任何人有一個有效的錄音,請參閱。
喜@ Z0n3r對於一個簡短的測試我使用'12 23 * * *超時-s SIGINT 1m livestreamer https://www.youtube.com/watch?v=y60wDzZt8yg 240p -o live8.mp4'。這是行不通的。我認爲,因爲crontab在啓動後會釋放進程,並且無法識別正確的進程以使用SIGINT關閉進程。有任何想法嗎? (ps從終端,外部crontab,'超時-s SIGINT 1m livestreamer https://www.youtube.com/watch?v=y60wDzZt8yg 240p -o live8.mp4'工作很好) – Kes
@Kes嘗試添加完整路徑你的cron命令中都有timeout和livestreamer。使用'哪個超時'和'哪個livestreamer'來驗證這些,並將你的cron命令改爲例如:/ usr/bin/timeout -s SIGINT 1m/usr/local/bin/livestreamer https://www.youtube.com/watch ?v = y60wDzZt8yg 240p -o live8.mp4 –
謝謝。這很好用! :) – Kes