調整影片大小會從頭重新編碼影片,因此任何與編碼管線相關的設定——像素尺寸、位元速率、影格時序、音訊配置以及色彩中繼資料——都可能以原始檔案未曾承諾的方式產生變動。縮小解析度是以犧牲細節換取較小的檔案,放大解析度無法無中生有地創造像素,適配模式可以在外框範圍內加上黑邊,而拉伸模式在長寬比不符時會明顯地拉伸人臉與線條。輸出容器同樣可能改變:許多本機工作流程會儲存為 WebM 而非 MP4,因為 WebM 是瀏覽器內建 VP9 與 VP8 編解碼器原生輸出的格式。字幕、多音軌以及章節標記很少能保留下來,因為它們位於基於畫布的重新編碼之外。這些都不是單一工具的缺陷——而是重新編碼機制的特性,要避免最糟的意外,最安全的方法就是在按下按鈕之前先了解哪個開關會影響哪個結果。

調整大小在哪個環節會出錯
每次調整大小都會讓影片經過五個步驟,每個步驟都有其各自的故障模式:解碼來源檔、縮放畫布上的每個影格、擷取該畫面、編碼結果並使用瀏覽器支援的編解碼器,以及寫入一個可供下載的檔案。任何一個步驟出問題,產生的現象都不一樣。
- 如果解碼器無法讀取編解碼器,您會看到一片空白的影格,而不是錯誤訊息。
- 如果縮放要求的尺寸是奇數,編碼器會自動向下捨入,輸出結果會比您輸入的少一個像素。
- 如果擷取階段丟失了音訊,即使預覽看起來完美,檔案播放時也會完全無聲。
- 如果錄影器沒有回傳內容,某些工具仍會給您一個零位元組的下載檔案。
- 如果寫入器處理時長出錯,檔案匯入時長度會不正確,或無法進行跳轉。
這份清單並不完整,但它能說明為什麼一個「單純的調整大小」會產生令人困惑的結果。Video Resizer 將上述每個步驟都視為一個檢查點:不支援的編解碼器、無效的尺寸、空白的錄影輸出以及功能落差會以明確的方式失敗,而不是丟給您一個誤導性的檔案。
品質、位元速率與重新編碼的代價
重新編碼本質上就是有損的。來源檔以特定的位元速率、色彩空間與量化矩陣編碼了一次,而每次您解碼並重新編碼時,都會再付出新一輪的壓縮雜訊。縮小解析度——把 1920×1080 的影片縮成 1280×720——通常是最溫和的操作,因為您只是丟棄原本就存在的細節。放大解析度——把 640×360 的片段填成 1920×1080——無法新增它沒有的資訊,因此編碼器只能被迫對所找到的像素進行內插、柔化或銳利化。
這也是為什麼品質、位元速率、影格時序、音訊配置、色彩中繼資料以及檔案大小都可能與來源不同。瀏覽器的管線會挑選一個目標影格速率、一組 VP9 或 VP8 編解碼器設定,以及一個適合擷取畫布的有界位元速率。這些預設值是為可攜性而調校的,而非為了保存歸檔品質,因此輸出檔案最好視為交付用的拷貝,而非母版。
扭曲畫面的長寬比錯誤
最常見的單一調整大小錯誤,就是強迫使用不相符的長寬比。如果您的來源是 1920×1080(16:9),而您在拉伸模式下要求剛好 1080×1080,編碼器會把寬幅影像擠進正方形,人臉就會顯得變形。適配模式透過把所要求的寬高視為一個外框範圍來避免這種情況:它會取兩個縮放比例中較小的值,統一套用,並且絕不裁切。
具體來說,在適配模式下,1920×1080 的來源搭配 1280×720 的外框範圍時,較小的縮放比例為 min(1280 ÷ 1920, 720 ÷ 1080) = 0.6667。將每個來源維度乘上該縮放比例會得到 1280 × 720,因為來源已經符合外框的 16:9 比例,結果會剛好落在範圍內。若改用 1920×1200 的來源搭配同樣的 1280×720 外框:較小的縮放比例變為 min(1280 ÷ 1920, 720 ÷ 1200) = 0.6,因此結果為 1152 × 720,能在不變形的情況下落入外框範圍。若改用拉伸模式,則會給您 1280 × 720 並刻意產生一幅明顯較寬的影像。
這個區別很重要,因為適配模式幾乎適用於所有社群平台的安全預設,而拉伸模式則是在固定欄位——例如橫幅、投影片、縮圖欄位——要求精確尺寸時的正確選擇。
格式、編解碼器與容器的意外
大多數瀏覽器本機工具都會輸出 WebM,因為 MediaRecorder API 只能寫入瀏覽器原生能編碼的格式,而每個現代瀏覽器都支援 VP9 與 VP8 WebM。搭載 H.264 的 MP4 是不同的編碼器,幾乎總是藏在一個龐大的 WASM 依賴項目或伺服器之後。這就是為什麼 Video Resizer 交付的是 WebM 檔案而非 MP4:畫布是透過 HTMLCanvasElement.captureStream 擷取,並直接錄製成瀏覽器所支援的 WebM 設定檔。
由此衍生出兩個後果。第一,如果您的下游工具只接受 MP4,您將需要額外的轉檔步驟。第二,凡是存在於視訊與音訊基本串流之外的東西——嵌入的字幕、章節標記、多語言音軌、GPS 中繼資料、色彩描述檔——都會被丟棄,因為錄影器根本沒有地方放它們。瀏覽器管線會透過標準解碼把能找回的音軌加回去,但不會保留側車式中繼資料。
如何在不觸發這些問題的情況下在本機調整影片大小
- 選擇單一的本機支援檔案——MP4、WebM、MOV、M4V 或 Ogg——並等待瀏覽器讀完其中繼資料後再繼續下一步。
- 輸入最大寬度與最大高度,每個都是介於 2 到 1920 像素之間的整數,並決定您要使用保留長寬比的適配模式,或是精確的拉伸模式。
- 選擇「調整影片大小」,保持分頁為焦點,讓即時編碼器跑完——處理時間通常與影片本身長度相當。
- 在提示出現時下載產生的 WebM,並在實際使用的播放器或平台上測試,之後再刪除來源檔案。
訣竅在於事先設定好預期:除非固定欄位迫使您使用拉伸,否則請選擇適配模式,接受 WebM 作為輸出格式,並記得奇數像素值會被減一,讓編碼器保持在編解碼器安全範圍內。
決定調整大小能否成功的限制
只有在來源端與目標端的限制同時都滿足時,工具才可能成功。下表列出 Video Resizer 在編碼前會檢查的邊界。
| 限制條件 | 允許範圍 | 在邊界時會發生什麼 |
|---|---|---|
| 目標寬度 | 2 至 1920 像素,偶數整數 | 奇數值會向下捨入一個像素 |
| 目標高度 | 2 至 1920 像素,偶數整數 | 奇數值會向下捨入一個像素 |
| 來源檔案大小 | 最大 500 MiB | 較大的檔案會在解碼前被拒絕 |
| 來源時長 | 最長五分鐘 | 較長的片段會在解碼前被拒絕 |
| 來源寬度或高度 | 每邊最大 4096 像素 | 更寬或更高的來源會被拒絕 |
| 來源像素面積 | 最大 3840 × 2160 像素 | 解析度更高的來源會被拒絕 |
如果調整大小在通過這些檢查後仍出現異常行為,調整大小問題的疑難排解指南會按照瀏覽器管線本身的順序,逐步帶您進行下一層的診斷。
本機調整大小不適用的情境
瀏覽器端的調整大小對其限制是坦誠的。它不能放大細節、無法裁切主體、不會保留字幕或多音軌、無法繞過 DRM,也無法保證專業級的母版品質。如果您的交付需求包含上述任何一項——廣播用的影格精確剪輯、需要色彩管理的母版、舊播放器要求的 MP4 輸出、超過五分鐘上限的長片,或是精確的位元速率控制——正確的做法就是把來源檔交給 FFmpeg、HandBrake 或付費的 NLE 等專用桌面編碼器。
在同一套瀏覽器工具中,裁切、壓縮與修剪各自是獨立的工作,各有不同的故障模式;選對工具通常比強迫一個調整大小工具一次完成所有事情更能產出乾淨的結果。一段兩分鐘的影片被剪裁到不同的畫面內矩形是裁切,而不是調整大小;一個需要塞進 50 MiB 附件的 400 MiB 檔案屬於壓縮,而非調整大小。把任務對應到正確的工具,是在調整影片大小時確保不出錯的最簡單方法。
想進一步了解,請參閱調整影片大小時,哪些細節真正重要。