BMP を AVIF に変換

ここで BMP を AVIF に変換できます。無料、アカウント不要です。ファイルを上の枠に落とせば、数秒で結果がダウンロードできる状態になります。 変換はお使いのブラウザーの中で行われるので、ファイルはアップロードされません。Windows でも macOS でも Linux でも、iPhone でも Android でも同じように動き、通信を切っても動き続けます。

  • 処理される場所 ブラウザーの中です。ファイルがアップロードされることはありません。
  • 非可逆 サイズと引き換えに細部が失われます。AVIFはBMPのすべてを保持できません。
  • ファイルサイズの上限 1ファイルあたり100MBまで。無料、アカウント不要です。

一度に100ファイルまで。フォーマットが混ざっていても構いません。

BMPからAVIFへの変換で実際に起きること

BMP 450 KBAVIF 17 KB 26.2 分の 1

なだらかな階調、やわらかい輪郭、粒状感のある写真です。AVIFが想定している、あるいは想定していない典型例で、数値がどちらなのかを示します。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

BMP 450 KBAVIF 3 KB 131.9 分の 1

背景が透明で、図形にグラデーションがかかっています。AVIFは両方を保持するか、片方だけ保持するか、透明部分を単色で塗りつぶすかのいずれかです。ここが見落とされがちな差です。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

BMP 450 KBAVIF 5 KB 90.7 分の 1

インターフェース、グラフ、ロゴのような、平坦な色と硬い輪郭です。上の写真とは挙動がまったく違い、答えが「ファイルの中身による」になる理由でもあります。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

いちばん小さくなる代わりに、いちばん時間のかかる符号化

AVIF ファイルは構造としては、Alliance for Open Media が 2019 年に策定したコンテナーに収めた AV1 動画の 1 コマです。動画コーデックの圧縮技術をそのまま受け継いでいるので、同じ見た目の画質なら写真では WebP や JPEG を上回ります。

コストのほうも受け継いでいます。この形式の弱点として遅い符号化が挙げられ、このサイトの処理系もそれに沿っています。大きな写真の場合、ほかの変換ではデコードのほうが時間のかかる工程ですが、AVIF ではエンコードのほうが時間のかかる工程になります。1200 万画素のビットマップ——4000×3000、BMP として 36 MB——は、進捗バーが気休めではなく実際に仕事をしていると感じられるくらいの時間がかかります。この非対称は普段の直感を裏返すので覚えておく価値があります。ビットマップは巨大で読むのは軽く、AVIF は小さいのに書くのは重いのです。

BMP には AVIF の得意分野が届かない

AVIF は 1 チャンネルあたり 12 ビットを持て、広色域を記述できます。この 2 つの能力こそがこの形式の存在理由の大半で、HDR 写真の配信形式として使われる理由でもあります。

BMP は 1 チャンネルあたり 8 ビットの普通の RGB しか持ちません。元データに広い色域はなく、余分なダイナミックレンジもなく、色プロファイルもありません——レジストリには BMP 用のメタデータの入れ物自体が記録されていません。AVIF に用意された余裕は空のままで、この変換で得られる利点は圧縮だけです。それは確かな利点ですが、それだけだと知っておく価値があります。AVIF について書かれるものの多くは、BMP には届かない能力についての話だからです。形式は情報を足すことができず、届いたものを記述できるだけです。ここに届いたのは、Microsoft が 1987 年に発表した形式が持つ 8 ビットの sRGB です。

AVIF の符号化が実際に払わせるコスト

処理は WebAssembly としてブラウザーのタブの中で、手元の機械のプロセッサーで動きます。サーバーが代わりに作業してくれるわけではなく、それが何もアップロードされない理由であり、大きなビットマップの束を変換するのが「始めて、あとで戻ってくる」種類の作業になる理由でもあります。

実際の感覚としては、そこそこの画像 1 枚なら少し待つ程度、40 枚のスキャナー出力ならコーヒーを 1 杯淹れる程度です。それが許容できず、相手が幅広い層なら、WebP がすぐ隣のページにあり、符号化時間はごくわずかで済み、容量も AVIF とわずかな差に収まることが多いです。これはこの変換の欠陥ではありません。同じ符号化をサーバーで行っても同程度の作業量が必要で、単に誰かのプロセッサーを借り、そのためにファイルを送る必要が生じるだけです。この時間は、写真が機械から一度も出ていかないことへの正直な対価です。

AVIF の対応状況は「現代的」であって「万能」ではない

レジストリは AVIF を「現代的なブラウザーが対応」と分類しており、この言葉は WebP や JPEG に与えられる「すべて」という言葉の隣で、実質的な意味を持っています。現在のデスクトップとモバイルのブラウザーは AVIF を読めますが、古い機器や一部のアプリ内ブラウザー、多くのメールソフトは読めません。

つまりこれは送るための形式ではなく配信するための形式です。添付ファイルとして、あるいは他人に渡すファイルとしては貧弱な選択で、自分の機械で開けることは相手の機械について何も語りません。デザインや編集ツールでも同じ注意が必要です。対応状況にはばらつきがあり、ブラウザーで完璧に表示される AVIF が、同僚が文書に貼り付けられないファイルであることもあります。

対応の隙間を乗り切る仕組み——フォールバックを添える

対応の隙間を乗り切る仕組みが picture 要素です。複数の候補を順番に並べ、それぞれに種類を指定しておくと、ブラウザーは自分が理解できる最初のものを選びます。AVIF を先頭に、その次に WebP、最後に JPEG を置けば、判定用のコードを走らせなくても、訪問者ごとにブラウザーが実際にデコードできる最小のファイルが届きます。

つまり同じビットマップを 2 回変換することになり、このページのバッチ変換が WebP のバッチ変換とセットで行われることが多いのはそのためです。WebP から AVIF を作るのではなく、この順番で行う価値があります。それぞれの非可逆エンコーダーは何を捨てるかを独自に判断するので、2 つを重ねると両方の損失を抱えたファイルになり、節約にもなりません。配信用の各形式は、常にビットマップ自体から作ってください。

AVIF での透明度と画質の数値

AVIF はアルファチャンネルを持ち、この経路では画像を平坦化したり背景色を尋ねたりしないので、32 ビットのビットマップは透けている部分をそのまま保ちます。ここに来るファイルの大半を占める 24 ビットのファイルには、そもそも保つべき透明度がありません。

画質の既定値は 82 で、このサイトの非可逆な変換先すべてに共通する数字です。この尺度は画像ではなく符号化器に属していることを覚えておく価値があります。AVIF の 82 と JPEG の 82 は、同じ量の損失でも同じ容量でもないので、2 つの形式を比べるなら設定ではなく出力そのものを比べてください。壊れ方も違います。JPEG はブロック状の乱れや輪郭のリンギングとして表れますが、AVIF は細かい質感をなだらかにぼかす形で表れ、元画像と並べるまで気づきにくいという性質があります。

BMP の行き先として WebP のほうがよい場合

相手に古い機器が含まれるとき。画像が小さく、差がわずか数キロバイトしかないとき。硬い輪郭を持つ平坦な絵柄で、AVIF の優位が縮まり、逆転すらするとき。そして何百ファイルも変換していて、符号化にかかる時間そのものが制約になっているとき。

AVIF がコストに見合うのは、picture 要素を通じて現代的な相手に配信される大きな写真の場合です。それは既定の選択ではなく特定の場面で、これに反する説明をするページがあれば、それは新しい形式を客観的に説明しているのではなく売り込んでいるだけです。判断は 1 分で済みます。代表的なビットマップ 1 枚を両方の形式に変換し、2 つの容量を並べて、ファイルごとに 2 回符号化しマークアップにフォールバックを書く手間に見合うかどうかを決めてください。明らかに見合うこともあれば、明らかに見合わないこともあります。

先にビットマップを縮小すると両方の数字が変わる

これは容量と符号化時間を同時に改善する唯一の調整です。効果は幅ではなく画素数に比例するので、ビットマップの幅を半分にすると、符号化器が処理する画素はその 4 分の 1 になります。

最大幅は、画像が表示される最大の幅に、高精細画面向けに 2 倍した値を設定してください。4000×3000 のスキャンを 2000×1500 に縮小しても、ほとんどの表示場所より依然として大きく、AVIF の符号化はおよそ 4 分の 1 の時間で終わります。

ビットマップのフォルダーを AVIF に変換する

フォルダーごと置けば、それぞれ手元の機械で順番に変換され、拡張子だけ変わった名前のまま、まとめて 1 つの ZIP として戻ってきます。上限は 1 ファイルあたり 100 MB で、無圧縮のビットマップにするとおよそ 3300 万画素分に相当します。

バッチはダウンロードではなく符号化を中心に計画してください。ファイルは 1 つずつ順番に処理されるので、かかる時間はおおむね個々の符号化時間の合計になり、いちばん大きな画像が全体を左右します。3300 万画素のビットマップ 1 枚が、小さな画像 30 枚より時間がかかることもあります。明らかに大きすぎるファイルを先によけて縮小しておくことが、このバッチに対してできるどんな工夫よりも効果があり、待ち時間だけでなく出力自体の質も改善する唯一の変更です。

BMP を AVIF に変換する手順

  1. お手元の BMP ファイル をこのページに落とすか、押してファイルを選んでください。
  2. 変換先に AVIF を選びます。変換はブラウザーの中で行われ、ファイルはアップロードされません。
  3. できあがった AVIF ファイル をダウンロードします。

BMP と AVIF——何が変わるか

BMPとAVIFの比較
BMPAVIF
正式名称Windows ビットマップAV1 Image File Format
拡張子.bmp, .dib.avif
メディアタイプimage/bmpimage/avif
圧縮方式無圧縮設定によってどちらにもなる
最初の公開19872019
発行元MicrosoftAlliance for Open Media
仕様AV1 Image File Format
ライセンス公開仕様、標準化はされていないオープン標準
現在の位置づけ旧式、ただし今もどこでも読める現行
ビット深度812
扱える色RGB, インデックスカラーRGB, YCbCr, 広色域
最大の画像1辺 65,536 px
ブラウザで開けるかすべてのブラウザ現行のブラウザ
代わりに検討される形式PNG, TIFFWebP, JXL, JPG

変換先の形式が追加で扱えるもの

AVIF は透明を扱えますが、BMP は扱えません。これは結果の側にあって、元のファイルが一度も使わなかった余地です。変換によって透明な背景ができるわけではなく、あとから作れるようになるだけです。

AVIF はアニメーションを持てますが、BMP ファイル は 1 フレームしかありません。出てくるのは絵 1 枚のファイルで、それがもっと多くを扱えたはずの形式に入っている、という状態です。

結果を開く

AVIF は最近のブラウザーなら読めますが、古いものでは読めません。その点では、2 つのうち通用する場所が狭いのはこちらです。送る前に、受け取る側がこれを受け付けるかどうか確かめてください。

AVIF は単一の形式ではなく、容れ物です。実際に再生されるのは中に入っているコーデックで、たいていはAV1です。同じ拡張子の 2 つのファイルが同じ機械で違う振る舞いをするのは、そのためです。

BMP は 1987 年のもので、今ではほとんど使われていません。AVIF は今のプログラムが書き出す形式なので、この変換は「読める状態を保つ」という話でもあります。

GIMPは BMP と AVIF のどちらも読めるので、別のプログラムを開かずに、結果を元のファイルと並べて確かめられます。

どちらの形式が何のためのものか

2 つは狙っている用途が違います。BMP はプログラム間のデータ受け渡し、AVIF はウェブと完成したファイルの受け渡しです。ここは考える価値があります。一方が存在する理由が、そのままもう一方が使いにくい理由になっていることが多いからです。

BMP は Microsoft の形式です(1987 年に登場)。 記録は 1 チャンネルあたり 8 ビットです。

AVIF は Alliance for Open Media の形式で、2019 年から使われています。規定は AV1 Image File Format です。GIMP、Squoosh、ImageMagickがこの形式を読めます。

BMP は 1987 年、AVIF は 2019 年に登場しました。人に渡すならたいてい古いほうが安全で、新しいほうは同じ仕事をより少ないバイト数で片づけます。

BMP から AVIF:よくある質問

BMP ファイル はどこかにアップロードされますか。

いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。

BMP から AVIF への変換は無料ですか。

はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。

BMP を AVIF に変換すると品質は落ちますか。

AVIF は圧縮するので、データはいくらか失われます。初期設定では気づかない程度ですが、確実にしたい場合は品質を上げてください。

AVIF ファイル はブラウザーで開けますか。

AVIF は最近のブラウザーなら読めますが、古いものでは読めません。その点では、2 つのうち通用する場所が狭いのはこちらです。送る前に、受け取る側がこれを受け付けるかどうか確かめてください。

AVIF ファイル の中に入っているコーデックは何ですか。

AVIF は単一の形式ではなく、容れ物です。実際に再生されるのは中に入っているコーデックで、たいていはAV1です。同じ拡張子の 2 つのファイルが同じ機械で違う振る舞いをするのは、そのためです。

AVIF にしたとき、結果の背景を透明にできますか。

AVIF は透明を扱えますが、BMP は扱えません。これは結果の側にあって、元のファイルが一度も使わなかった余地です。変換によって透明な背景ができるわけではなく、あとから作れるようになるだけです。

これらのフォーマットについて

この数値の出典

このページがBMPとAVIFについて述べていることは検証できます。根拠となる資料は次のとおりです。