如何用 yt-dlp 下載不存檔 (Unarchived) 的直播串流和尚未結束的 Live 直播影片?
How to use youtube-dl to download live streams (live)
對於有在練習英聽的人來說,外國 Youtuber 的直播影片算是相當優質的學習資源。畢竟那可是最道地、生活化、最鄉民的資料來源,比什麼空中美語和國立編譯館虛無飄渺的公文體英語來的親民許多。
然而直播影片有些是公開的、有些是會員限定,更有些是直播後不存檔。這種方式除了可以增加觀眾追逐現場直播的動力、提昇品牌忠誠度與黏著性之外,不留檔的形式更能大幅提昇稀有度,讓該直播主的影片不再是隨手可得的資源。
不過那是普通人的情況,對於略懂電腦與網路操作的進階使用者來說,這種技術方面的問題倒相當容易解決。本文流浪貓將教你如何用 Youtube-dl 或 yt-dlp 把不存檔的直播影片錄下來作為私人研究資料。
下載不留檔的直播串流影片
由於直播是以 HLS, m3u8 格式協議進行播放,因此與普通影片有些微不同。若要下載直播影片的話,須先抓取直播串流的格式代號。以下將以 IRyS 於 2023-4-10 AM 11:00 的歌唱不留檔直播為例:
【Unarchived Karaoke】Singing Nephilim Time!
於終端機輸入 yt-dlp 指令和 Youtube 影片網址:
yt-dlp --list-formats https://www.youtube.com/watch?v=qzJkDJ7vk1s
[info] Available formats for qzJkDJ7vk1s:
ID EXT RESOLUTION FPS │ TBR PROTO │ VCODEC VBR ACODEC ABR
──────────────────────────────────────────────────────────────────────
91 mp4 256x144 30 │ 269k m3u8 │ avc1.4d400c 269k mp4a.40.5 0k
92 mp4 426x240 30 │ 507k m3u8 │ avc1.4d4015 507k mp4a.40.5 0k
93 mp4 640x360 30 │ 962k m3u8 │ avc1.4d401e 962k mp4a.40.2 0k
94 mp4 854x480 30 │ 1283k m3u8 │ avc1.4d401f 1283k mp4a.40.2 0k
300 mp4 1280x720 60 │ 2922k m3u8 │ avc1.4d4020 2922k mp4a.40.2 0k
301 mp4 1920x1080 60 │ 5553k m3u8 │ avc1.4d402a 5553k mp4a.40.2 0k
從這裡就能看出,相較於下載影片常用的 22 格式,直播串流的影像檔案 ID 是以 91 開始到 301 結束。因此如果你想下載解析度最高的直播影片,就選擇 301;如果你對畫質沒那麼多要求,僅作為學術研究備份,那選 94 即可獲得不錯的結果。翠維尼
接著,就能用先前下載直播長片特定時間片段, 不用抓整部直播串流影片教學中提到的指令來下載影片。
ffmpeg -i ($yt-dlp -f 94 -g https://www.youtube.com/watch?v=qzJkDJ7vk1s) -c copy irys-st-1.ts
目標資料夾中的 irys-st-1.ts 即是直播的影音存檔,就算直播還沒結束也能打開來檢視是否有在錄製節目。
延伸閱讀
免安裝、免註冊,用 Youtube-dl 下載 Facebook、Twitter、Youtube 等平台的影片和音樂
用 youtube-dl 下載特定時間片段, 不用抓整部直播串流影片
安裝 yt-dlp 取代 youtube-dl 影音下載工具
留言
張貼留言
由於廣告留言太多,因此改採審核發佈,請耐心等候。
無法留言?請點我