Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

YouTube 影片格式筆記

Posted on 2022 年 2 月 18 日2022 年 2 月 18 日 By 日落 在〈YouTube 影片格式筆記〉中尚無留言

前陣子錄影上傳到 YouTube:

高鐵嘉義到彰化區間漂亮的田野風景

發現使用舊有的 yt-dlp 參數會抓不到想要的影片格式,透過 --list-formats 和 --list-subs 工具以後,才知道 YouTube 的影片格式有這麼多種,難怪上傳完成到上架要等很久。

yt-dlp 調整參數時,發現有時候下載的影片沒有聲音、有時候有聲音但畫面解析度較低。下了 --list-formats 以後,才發現影片的格式有很多種:

YouTube 影片支援的格式列表 (大圖)

其中可以看到格式中同時有影像也有聲音的 ID 僅有 17、18、22,其他不是只有影像就是指有音訊。

因此若指定高解析度的格式卻沒有指定音訊格式 -f "bestvideo[height<=1080]" 時,下載回來的檔案會只有影片沒有聲音。

因此若要讓下載視訊也同時附加音訊時,必須同時給定 video 和 audio 參數,yt-dlp 才會分別下載視訊和音訊後,再用 ffmpeg 做一次合併:

$ yt-dlp.sh \
    -f "bestvideo[height<=1080]+bestaudio" \
    "http://youtube.com/watch/?v=ooxx-yooo

另外看到 reddit 上有人分享懶人下載格式順序,直接指定常見的 format ID 來自動選擇最適合的格式搭配:

$ yt-dlp.sh \
    -f "137,248,140,251,137+140,137+251" \
    "http://youtube.com/watch/?v=ooxx-yooo

備註:若希望 yt-dlp 使用 ffmpeg 合併影片時輸出特定格式,可以加上 --remux-video "mp4" 參數

Tags:YouTube, 生活雜記

文章導覽

Previous Post: 在 Laravel 建立並自動更新 sitemap.xml
Next Post: Automatically mount tmpfs on Linux

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


其他

關於我  (About me)

小額贊助

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.