跳到主要內容

← 返回部落格

AVIF 是什麼?打不開怎麼辦?

你下載了一張圖,副檔名是 .avif,結果常用的軟體打不開。AVIF 是較新、極有效率的格式——很適合網頁,但在其他地方偶爾很惱人。這篇說明它是什麼、以及怎麼處理。

這件事我們自己測過。 在實測自家轉換器時我們撞到一個值得知道的硬限制:瀏覽器 canvas 只能編碼三種格式。向 Chromium 151 要一張 AVIF,回來的是 PNG。這就是本站有「從 AVIF 轉出」卻沒有「轉成 AVIF」頁面的原因——也是為什麼今天要產生 AVIF,只能靠伺服器端或原生的編碼器。 看完整實測數據

AVIF 到底能多小。 1200 × 800 的介面截圖用 AVIF 只要 1,472 位元組。從它轉出去每次都要付錢:轉 WebP 1.4 KB → 6.9 KB(+378%);平面插畫轉 PNG 3.2 KB → 90.6 KB(+2704%),那是整張表裡最懸殊的一列。離開 AVIF 沒有「省空間」的理由,只有相容性的理由。兩個誠實的限制:我們的測試檔沒有透明(ffmpeg 的 AVIF muxer 不寫 alpha 項),而且它們是用 ffmpeg 產生的 —— 因為瀏覽器 canvas 根本無法編碼 AVIF。

AVIF 是什麼?

AVIF(AV1 Image File Format)以 AV1 影片編碼為基礎,提供目前數一數二的壓縮率:同樣畫質下,AVIF 檔案常常比 JPG 和 WebP 更小,而且支援透明與 HDR。這就是為什麼越來越多現代網站採用 AVIF。

為什麼 AVIF 檔案那麼小

AV1 是為了高效串流 4K 影片而設計的。AVIF 把這套先進壓縮借來用在靜態圖片上,比舊格式更積極地捨棄肉眼幾乎察覺不到的細節,於是檔案很小、畫質卻出乎意料地好。

「多小」是可以量的:我們 1200 × 800 的介面截圖用 AVIF 只要 1,472 位元組。對照一下,同一張圖轉 PNG 要 36.5 KB。壓縮的故事一句話講完 —— 而這也是為什麼從 AVIF 轉出去每一次都要付代價。

缺點:支援度還在追趕

Chrome、Edge、Firefox、Safari 的新版都能顯示 AVIF,但是:

  • 許多桌面軟體、較舊的手機、部分編輯器仍打不開 .avif。
  • 有些上傳表單與印表機不接受它。
  • 用舊軟體的同事可能根本看不到。

這就是為什麼「AVIF 怎麼開」是很常見的問題——檔案本身沒問題,只是你的軟體還不懂 AVIF。

如何開啟或轉換 AVIF

最簡單的解法就是轉成通用格式。以下工具全程在你的瀏覽器本機執行,圖片不會上傳:

代價在我們自己的頁面上量過:平面插畫 3.2 KB → 23.5 KB 的 JPG(+626%);那張介面截圖 1.4 KB → 36.5 KB 的 PNG(+2442%)。兩者都不是缺陷 —— 你正在離開我們表裡效率最高的編碼,所以唯一的理由是相容性。

你自己該用 AVIF 嗎?

如果你在經營網站、想要最小的圖片,AVIF 很棒——再搭配 JPG 或 WebP 當舊瀏覽器的退路。要交給別人的檔案,就轉成 JPG 或 PNG,對方到哪都打得開。

AVIF vs. HEIC vs. WebP

AVIF 很容易和另外兩個「鄰居」搞混:

  • HEIC——iPhone 儲存照片用的格式。它用的容器和 AVIF 很像,但編碼不同(HEVC),而且有專利限制。AVIF 則是由開放媒體聯盟(Alliance for Open Media)制定的免權利金、開放標準,這正是瀏覽器選擇支援 AVIF 而非 HEIC 的一大原因。要開 iPhone 照片的話,見 HEIC 怎麼轉 JPG。
  • WebP——比較舊、支援更廣,但同畫質下通常比 AVIF 稍大。三者的完整對決見 AVIF vs WebP vs JPEG。

三方比較通常是用「編碼世代」來講的。我們用位元組講:從 AVIF 轉出去到 WebP,看那個較舊的編碼要收多少錢:

測試圖輸入輸出變化
照片122.3 KB234.4 KB+92%
螢幕截圖1.4 KB6.9 KB+378%
插畫3.2 KB9.9 KB+208%

插畫是 3.2 KB → 9.9 KB(+208%),照片是 122.3 KB → 234.4 KB(+92%)。WebP 落後一個編碼世代,而它在合成影像上付出最多、在照片上付出最少 —— HEIC 的位置也在這個順序裡,因為 HEIC 和 AVIF 共用 HEIF 容器,差別主要在裡面的編碼(HEVC 對 AV1)。實務上把它們分開的不是效率而是授權:AV1 免權利金,這就是為什麼瀏覽器出了 AVIF、從來沒出過 HEIC。

常見誤解

  • 「AVIF 是影片格式。」 不是。它用 AV1 的影格內壓縮儲存單張靜態圖(或一段動畫)。你下載的 .avif 是一張圖,不是一段影片。
  • 「AVIF 一定是無損的。」 它預設是有損,只是效率很高。它確實有真正的無損模式,但檔案會明顯變大。
  • 「打不開就是檔案壞了。」 幾乎從來不是。.avif 開不了,只代表你的軟體比這個格式還舊——檔案本身沒問題。

常見問答

在正式網站上用 AVIF 安全嗎?

安全,只要用 <picture> 元素自動提供 JPG 或 WebP 退路,照顧到少數還在用舊軟體的訪客即可。

AVIF 可以當 email 附件嗎?

可以,但對方不一定打得開。保險起見,先轉成 JPG 再寄。

存成 AVIF 會降低畫質嗎?

在合理的畫質設定下,肉眼看不出損失;但和所有有損格式一樣,同一個檔案反覆重存會慢慢劣化。