選擇使用瀏覽器式影片壓縮工具而非手動壓縮,取決於來源檔是否符合固定的限制範圍,以及你是否需要確定性的編碼器控制權。FFmpeg、HandBrake 或桌面非線性剪輯軟體等手動方式,可讓你進行兩段式編碼、精確的編解碼器設定檔、固定的關鍵影格間隔,並能保留字幕、章節、附件、旋轉標籤以及 HDR 中繼資料。而像 Lizely 的 Video Compressor 這類瀏覽器工具,則是用零安裝、不需上傳,以及三段預設選擇(小檔為 640p/24fps、平衡為 1280p/30fps、高品質為 1920p/30fps)來換取前述的控制權,並在當前分頁中完成工作。若你的來源檔小於 500 MiB、長度不超過五分鐘、解析度最高 3840×2160 像素,且目的地不需要特定的編解碼器設定檔,瀏覽器路線通常比閱讀 FFmpeg 文件來得快。一旦你需要歸檔等級的輸出、精確的位元率目標、字幕保留,或來源檔超過該工具的輸入上限,手動方式所帶來的成本就值得了。在整篇文章中,我將說明指向瀏覽器工具的觸發條件、它實際能力的誠實限制,以及使用 Video Compressor 進行真正的本地壓縮的步驟。

when should i use video compression instead of doing it manually
何時該使用影片壓縮而非手動處理

手動壓縮路線及其代價

手動影片壓縮通常意味著三種方式之一:手寫的 FFmpeg 命令、HandBrake 預設,或桌面非線性剪輯軟體內的匯出對話框。每條路線都讓你對編碼器有精確的控制權,但也讓你為此控制權付出時間、學習與機器設定的代價。

FFmpeg 是最靈活的選項。你可以將編解碼器指定為 libx264 或 libx265、設定固定品質係數(CRF)、強制關鍵影格間隔、選擇像素格式、原封不動地複製音訊串流,並透過單一命令列保留中繼資料、字幕與章節。代價是摩擦:你需要安裝 FFmpeg 或其靜態版本、閱讀相關的編碼指南、當來源編解碼器與容器不符時除錯出現的警告,並記住缺少編解碼器會導致渲染失敗且無明顯原因。HandBrake 以具名預設降低學習曲線,但仍要求你安裝桌面應用程式,並在目標位元率、平均位元率或固定品質之間做選擇。DaVinci Resolve 或 Premiere 等桌面剪輯軟體則加入了你可能為單次分享所不需要的時間軸作業。

這三條手動路線都在你的機器上本機執行,這意味著不需上傳,但也假設你擁有合適的硬體加速、對應的編解碼器函式庫,以及足以容納來源檔與渲染輸出的可用磁碟空間。在來源檔已能在瀏覽器中播放、目的地也不在意精確編解碼器設定檔的一次性工作中,這些準備成本就是決定性因素。

指向瀏覽器工具的觸發條件

當多項觸發條件同時成立時,瀏覽器式 Video Compressor 工具就是正確的選擇。單一觸發條件僅是提示,但結合在一起就形成明確的決策。

  • 來源檔能在你目前的瀏覽器中無錯誤地播放。解碼取決於瀏覽器已能解碼的格式,因此一個使用瀏覽器無法解碼之編解碼器、卻命名為 MP4 的檔案仍會出錯。
  • 來源檔符合 500 MiB、五分鐘、3840×2160 的限制範圍。任何超出此範圍的檔案會在一開始就被拒絕,且不會產生下載。
  • 你不需要特定的傳遞用編解碼器設定檔。唯一的輸出容器是帶有 VP9、VP8 或通用 WebM MIME 的 WebM,實際的編解碼器會依瀏覽器而異。
  • 你希望工作全程停留在裝置上。解碼、Canvas 繪製、MediaRecorder 編碼與下載皆在分頁內進行;Lizely 不會接收任何影片位元組、縮圖、時長、檔名、編解碼器或輸出結果。
  • 目的地可接受 WebM,或你只需要一個較小的檔案來分享、預覽或附加。

這些觸發條件涵蓋了大多數日常的分享與預覽情境:需要塞進電子郵件的螢幕錄影、即將傳到聊天應用程式的手機影片、必須快速算圖的簡報素材,或可接受 WebM 的個人歸檔。同樣的觸發條件也出現在我們關於如何在不上傳的情況下壓縮影片檔案大小的指南中,該文更詳細地說明了純本地的工作流程。

情境手動 FFmpeg 或桌面編碼器瀏覽器式 Video Compressor
來源檔符合 500 MiB / 5 分鐘 / 3840×2160可行,但需要安裝與命令無需設定即可使用
來源檔超出輸入上限任何大小皆可處理一開始就拒絕,無輸出
需要特定編解碼器設定檔(H.264 High、H.265 等)對設定檔與層級有完整控制不支援,僅輸出 WebM
需要保留字幕、章節、附件或 HDR 中繼資料可透過合適旗標程式處理不會保留,請自行檢查下載檔案
需要確定性、兩段式、固定關鍵影格編碼可透過命令旗標處理不支援,僅即時單段編碼
一次性分享、預覽或聊天附件為快速取得較小檔案而殺雞用牛刀三段預設可涵蓋大多數情況
不得離開裝置的隱私敏感內容本質上即為本機處理本質上即為本機處理

Video Compressor 在你的分頁中實際做了什麼

了解該工具在底層做了什麼,也是決策的一部分。Video Compressor 並非伺服器端轉碼器。它會依照固定流程,在你已開啟的瀏覽器分頁中本機重新編碼來源檔。

首先,頁面會驗證所選檔案:副檔名或 MIME、正的位元組大小至多 500 MiB、解碼後時長大於零且至多 300 秒、每邊至多 4096 像素、解碼後面積至多 3840×2160 像素。任何一項檢查失敗的檔案會在編碼開始前就被拒絕,且不會提供下載。所選預設會設定最大輸出寬度、目標幀率,以及用來選擇位元率的每像素位元數值;來源長寬比會保留,來源絕不會被放大,且輸出尺寸會向下捨入至偶數像素值,以提升編解碼器相容性。接著,請求的位元率會被夾在 180 kbps 下限與 8 Mbps 上限之間。

編碼使用一個有界限的 Canvas 繪製管線,建構於標準的 HTMLCanvasElement captureStream API 與 MediaRecorder 介面之上。頁面會在本機播放來源檔,將每個顯示的影格繪製至符合預設大小的 Canvas,再以瀏覽器回報的第一個 WebM 編解碼器錄製該 Canvas 串流:優先 VP9,其次 VP8,最後為通用 WebM。當來源檔結束時,該工具會解析錄製好的 WebM,插入 Matroska Duration,使下載檔案具有有限的播放時間,並回報輸出尺寸、輸入位元組、輸出位元組,以及兩者之間的有號百分比變化。錄製會以即時方式執行,因為 MediaRecorder 會在來源播放時觀察 Canvas 串流;因此兩分鐘的影片約需兩分鐘,而非更短。

會產生三個實際的後果。音訊僅在瀏覽器透過 HTMLMediaElement captureStream 公開可擷取音軌時才會被錄製;請在下載檔案中同時確認影像與聲音。輸出容器永遠是 WebM,因此需要 MP4 的目的地必須進行第二次轉換。顯示的百分比僅根據兩個實際的 Blob 大小計算,因此與來源檔相似或更大的結果會被如實回報,而不會被標示為縮小。

預設最大寬度目標幀率典型使用情境
小檔640 px24 fps快速聊天附件、電子郵件預覽、低動態螢幕錄影
平衡1280 px30 fps簡報插入素材、一般分享、多數短片的預設選擇
高品質1920 px30 fps審片用版本、細節較高的影片、目的地接受 WebM 的情況

如何使用 Video Compressor 進行本地壓縮

  1. 在能解碼你來源檔的瀏覽器中開啟 Video Compressor。請使用 Chrome、Edge、Firefox 或 Safari 的近期桌面版本,並在開始前確認來源檔能播放。
  2. 選擇一個瀏覽器可解碼、且不大於 500 MiB、五分鐘或 3840×2160 像素的影片。該工具會在編碼開始前驗證副檔、大小、時長與解碼後面積。
  3. 依據上方預設表選擇小檔、平衡或高品質。小檔輸出最快,高品質輸出最大,平衡介於兩者之間。
  4. 開始壓縮,並在來源檔以即時速度播放期間保持分頁開啟。錄製器會觀察 Canvas 串流,因此五分鐘的來源檔約需五分鐘的處理時間。
  5. 等待該工具回報輸出尺寸、輸入位元組、輸出位元組與有號百分比變化。較大的數字並不代表縮小;請以實際位元組為準。
  6. 下載產生的 WebM,並在支援瀏覽器所選編解碼器(VP9、VP8 或通用 WebM)的播放器中完整播放,確認影像、聲音、時長與大小皆符合目的地需求。
  7. 若結果不適合,請嘗試其他預設或回到手動方式。壓縮取決於內容:低動態動畫可大幅縮小,而雜訊影片、顆粒、攝影機晃動或本已高效率的來源檔則可能產生相似或更大的檔案。

在完整播放過輸出檔之前,請保留原始檔。來源檔本身不會被就地變更,且該工具會在工作完成或取消後釋放臨時物件 URL,但磁碟上的原始檔仍由你自行管理。

>

手動方法仍然勝出的時機

瀏覽器工具並非所有工作流程的替代方案。在某些情況下,手動方法仍是正確的選擇,認清這些情況能避免徒勞往返。

對於需要特定編解碼器設定檔、兩段式速率控制、固定關鍵影格間隔,或需具備確定性的跨平台輸出的歸檔母帶,手動 FFmpeg 或受維護的桌面編碼器是更佳的路徑。瀏覽器錄製工具並不保證上述任何一項;它會直接選用瀏覽器所回報的第一個 WebM 編解碼器,並產生單段式結果,即使使用相同的預設和來源,該結果在 Chrome、Edge、Firefox 和 Safari 之間仍可能有所不同。

當字幕、章節、附件、旋轉標記或 HDR 訊號需要於編碼後保留時,手動方法同樣勝出。影片壓縮器僅在瀏覽器透過 HTMLMediaElement captureStream 公開可擷取軌道時才會保留音訊,且它不會對音量進行正規化、不會混音,也不會複製所錄製 Canvas 串流以外的容器特性。對於超過 500 MiB、播放時間超過五分鐘,或解碼後超過 3840×2160 像素的檔案,手動編碼是唯一可行的選項;該工具會預先拒絕這類來源,且不提供下載。

最後,若目的地需要包含 H.264 或 H.265 的 MP4 容器,請預先規劃第二步轉檔作業。WebM 是唯一的輸出容器,因為瀏覽器產生的 MP4 在 MediaRecorder 支援方面仍不一致。瀏覽器路徑會先壓縮檔案大小,接著由 FFmpeg 等桌面編碼器將結果包裝成所需的容器。

刪除原始檔前先驗證輸出

任何壓縮作業的最後一步都是驗證,而當較小的檔案出現在下載資料夾時,這一步卻最常被略過。在支援 VP9、VP8 或通用 WebM 的播放器中,從頭到尾播放下載的 WebM,並檢查五項具體事項。

  • 畫面:尺寸與工具回報的內容一致,沒有綠色影格,場景切換時沒有掉格,也沒有長寬比失真。
  • 聲音:音訊在全長範圍內皆可播放,音量與來源相符,且原始有音訊的片段未遺失任何軌道。
  • 時長:檔案播放的秒數與來源相同,既不會更短也不會更長。
  • 大小:位元組數量與工具回報的輸出相符。所示百分比僅根據兩個實際 Blob 大小計算,因此所回報的數字即為真實值。
  • 符合目的地:檔案能在您實際預計使用的播放器或服務中開啟並播放,特別是當該目的地預期為 MP4 而非 WebM 時。

若上述任一檢查未通過,請勿刪除原始檔。請嘗試其他預設、改回手動 FFmpeg 指令,或聯繫目的地的支援團隊以取得其接受的編解碼器與容器規格。該工具不會對音量進行正規化、不會混音,也不會修復損毀的媒體;若結果未通過其中一項檢查,代表編碼不符合您的目的地需求,而非工具本身有問題。

如需深入了解,請參閱為何影片壓縮後的輸出反而可能變大。