一款給初學者的影片壓縮工具,應該讓使用者在清楚的輸出預設之間做出簡單的選擇、回報實際的壓縮前後檔案大小,並且在瀏覽器內完成處理;Video Compressor 正是這樣做的,支援單一瀏覽器可解碼的來源檔案,最高 500 MiB 與五分鐘,解碼後的影片面積上限為 3840 × 2160 像素。對初學者而言,實際的工作是產生一個可用的 WebM 副本,而不是學習一長串編解碼器設定,或是相信所承諾的壓縮量。請從一個你能在同一個瀏覽器中播放的來源檔開始,對照每一項限制進行檢查,再依據你需要的輸出尺寸與影格速率選擇 Small、Balanced 或 Quality。在工具即時繪製並錄製來源檔之後,請檢視實際的尺寸與帶正負號的位元組變化,而不是假設預設名稱就保證檔案會更小。壓縮效果取決於內容:低動態的動畫可能大幅縮小,而顆粒、鏡頭晃動、雜訊多的畫面、快速變化的細節,或原本就已經有效率的來源,則可能產生相近甚至更大的檔案。Video Compressor 絕不會上傳來源檔或其解碼後的影格,而產生的 WebM 會一直屬於目前分頁的工作流程,直到你下載為止。請保留原始檔,直到你完整播放過輸出檔、檢查過聲音與畫面,並確認其長度與相容性符合你的使用情境。

video compressor for beginners
給初學者的 Video Compressor:第一次本機執行

為 WebM 設定明確的目的地

在壓縮之前,請先決定完成檔的使用位置。草稿簡報、訊息附件與線上上傳可能會有不同的檔案大小或相容性需求,因此預設並不保證會產生唯一一個精確的結果。請記錄來源檔大小,產生一份輸出,再將實際量測結果與你的目的地進行比較。在整個過程中請保持來源檔不變動。這樣你就能依照一個簡明的順序進行:選擇合理的控制項、檢查實際輸出,再判斷是否足夠,而不是事先試圖預測出完美的檔案大小。

依據固定限制檢查來源檔

在選擇檔案之前,請先詳讀每一項輸入限制。來源檔必須同時滿足所有條件,而不僅僅是檔案大小這項。

輸入檢查精確限制初學者解讀
來源一個瀏覽器可解碼的影片目前的瀏覽器必須內含能解碼此檔案的編解碼器。
檔案大小不超過 500 MiB空白、無效或過大的檔案皆非可用的來源。
長度大於零且不超過 300 秒五分鐘是所接受的最長長度。
影格邊界任一邊皆不超過 4096 像素解碼後的寬度與高度都必須符合此邊界。
解碼後面積不超過 3840 × 2160 像素這項獨立的面積限制同時約束了瀏覽器記憶體與 Canvas 的運作。

即使檔案可能命名為 MP4、WebM、MOV、M4V 或 Ogg,其副檔名並不保證能成功解碼。編解碼器的支援取決於目前的瀏覽器,檔名看似有效也無法讓不支援的編解碼器變得可播放。無效的檔案、不支援的解碼器、過長的長度或影格大小、缺少 Canvas 串流,或是 WebM 錄製器無法使用,皆會產生錯誤且不會下載任何檔案。這個工具不會默默地截斷未通過限制的來源。

比較三種預設選擇

這些預設揭示的是不同的輸出控制項,而不是宣稱有某個通用最佳值。

預設最大寬度目標影格速率
Small640 像素每秒 24 影格
Balanced1280 像素每秒 30 影格
Quality1920 像素每秒 30 影格

每個預設都會保留來源檔的長寬比、永不放大來源檔,並將輸出尺寸向下取整為偶數像素值,以獲得更廣泛的編解碼器相容性。有界的每像素位元數啟發式會選擇所要求的錄製位元率,範圍限制在 180 kbps 至 8 Mbps 之間。這仍然不是一個固定輸出的承諾:動態、雜訊、細節、來源效率、編解碼器行為,以及瀏覽器的編碼器都可能大幅改變結果。請在開始前先選擇預設。更換預設、選擇新檔案、取消或離開頁面,皆會使目前的工作失效,並釋放其暫時性的物件 URL。

壓縮你的第一段短片

請依以下順序進行一次可控的初次嘗試:

  1. 在目前的瀏覽器中開啟 Video Compressor,並選擇一個影片檔。
  2. 確認檔案不超過 500 MiB、長度不超過五分鐘、任一邊皆不超過 4096 像素,並符合 3840 × 2160 的解碼後面積限制。在開始之前,請確認瀏覽器能解碼其編解碼器。
  3. 若需要最大 640 像素與 24 fps 目標,請選擇 Small;若需要最大 1280 像素與 30 fps,請選擇 Balanced;若需要最大 1920 像素與 30 fps,請選擇 Quality。請不要預期所選名稱能保證特定的位元組大小。
  4. 開始壓縮,並在來源即時播放期間保持分頁開啟。如果來源含有音訊,頁面會在處理期間播放出聲音,請視需要調整裝置音量。
  5. 錄製結束時,請檢視實際的輸出尺寸、輸入位元組、輸出位元組,以及測量出的百分比變化。若有可用的 WebM,請將其下載。
  6. 從頭到尾播放下載的檔案。確認其長度、畫面、聲音、方向與預定目的地的相容性,再刪除原始檔。

為何工作會跟隨播放時間

Video Compressor 是在來源播放的同時進行錄製,而不是瞬間處理整段影片。頁面會將顯示的影格繪製到有界的 Canvas 中,並以瀏覽器所提供的 WebM 編解碼器錄製該串流。因此,兩分鐘的來源大約需要兩分鐘來編碼。在此期間離開頁面或更換來源檔將會結束目前的工作流程,這就是為什麼分頁應保持開啟。

錄製器會依據瀏覽器所回報的支援情況,依序嘗試 VP9,再嘗試 VP8,最後才是通用的 WebM 選項。即使使用相同的來源與預設,不同瀏覽器之間的結果仍可能有所不同。當瀏覽器透過 HTMLMediaElement captureStream 公開音訊軌道時,工具會將其加入輸出串流。將頁面播放設為靜音並不保證不會擷取任何音訊,因此完成後的檔案仍需進行聲音檢查。

從實際的位元組讀取結果

輸出尺寸值得特別注意,因為預設的寬度是最大值,而非強制值。來源比例會決定另一個維度,禁止放大,奇數尺寸的計算結果會向下取整。寬幅的來源可能達到所選的最大值,而較窄或尺寸特殊的來源則會產生不同的偶數尺寸。

帶正負號的位元組變化為輸出位元組減去輸入位元組。所顯示的百分比則是差值除以輸入位元組,再乘以 100:(輸出位元組 − 輸入位元組) ÷ 輸入位元組 × 100。負數表示輸出較小,正數則表示輸出較大。此百分比僅根據兩個實際的 Blob 大小計算;並非由預設或標稱位元率推估而得。如需更深入了解為何完成後的量測比預設標籤更重要,Video Compressor 準確度指南 會說明結果實際回報的內容。

在比較預設之前先考量素材內容

壓縮結果會依據動態、來源編解碼器、瀏覽器編碼器以及所使用的預設而有所不同:

  • 低動態的動畫可能會大幅縮小,因為大面積的畫面在視覺上保持相似。
  • 雜訊、顆粒、鏡頭晃動以及快速變化的細節可能使檔案難以壓縮,並可能產生相近或更大的結果。
  • 原本就已有效率的來源檔,可能讓另一個 WebM 編碼幾乎沒有減少位元組的空間。

當完成結果不符合你的需求時,請嘗試其他預設。請勿將較大的結果視為錯誤:此工具會回報實際量測的變化,絕不會將較大的 Blob 標示為縮小。瀏覽器編碼器的選擇,也是進行有意義的比較時應使用同一瀏覽器的另一個原因。

在刪除原始檔之前驗證下載結果

WebM 是唯一的輸出容器,因為瀏覽器對 MediaRecorder 所產生之 MP4 的支援仍不一致。請在目的地環境中完整播放下載檔案,並確認其長度、畫面、聲音與實際的相容性。音訊只有在瀏覽器公開可擷取的來源軌道時才會包含,因此請測試實際檔案,而非假設靜音播放就代表來源沒有音訊。

此工具不會保留字幕、章節、附件、旋轉標記、色彩中繼資料、HDR 訊號,或每一項容器功能。它同樣不會進行音量標準化、混音、修復損壞的媒體,或保證每項來源屬性皆原封不動地保留。請保留原始檔,直到完整的 WebM 已通過這些檢查,特別是當其他個人或系統將依賴該檔案時。

了解何時桌上型編碼器更合適

當有界的 WebM、清晰的預設控制項與量測後的結果符合你的需求時,Video Compressor 是個實用的本機選擇。對於需要精確編解碼器設定檔、兩階段速率控制、固定關鍵影格間隔、保留字幕,或跨平台具確定性輸出的歸檔母版或專業交付規格,請使用受維護的桌上型編碼器(例如搭配審慎指令的 FFmpeg)。瀏覽器內壓縮同樣不是修復工具,也不是經認證的中繼資料保留工作流程。讓工具與工作相互對應,才能避免將一個便利的 WebM 當作通用的歸檔母版。

相關閱讀:Extract Frames from Video for Beginners: A Local Guide