登録されている媒体型と適用範囲
| 媒体型 | 登録上の対象 | 注意点 |
|---|---|---|
| image/heic | 対応ブランドの条件に従い、HEVCで符号化された画像アイテムを含むファイル | 一つ以上の画像アイテムを含み得ます。「必ず一画像」とは限りません。 |
| image/heif | HEIFの条件に従う画像アイテムを含むファイル | 符号化方式を一種類に限定しません。 |
| image/heic-sequence | HEVCを用いる画像シーケンスに関する媒体型 | 静止画像アイテムを複数含むファイルと、時間順のシーケンスを混同しません。 |
| image/heif-sequence | 画像シーケンスに関する媒体型 | 実ファイルが登録の条件に従うか確認します。 |
媒体型は、実ファイルに合うものを使う
HEIC MIME typeの値は、拡張子の印象ではなく登録内容を確認します。IANAの画像アイテムの登録と画像シーケンスの登録には、それぞれの条件があります。HEICそのものの説明は形式の基本をご覧ください。
HEIC Content Typeは、実際に送るファイルの種類に合わせて設定します。拡張子やヘッダーだけをimage/jpeg相当に変えても、写真はJPGにはなりません。
どの段階の情報かを区別する
| 場面 | 確認するもの | それだけでは分からないこと |
|---|---|---|
| HTTPレスポンス | サーバーが返すContent-Typeと実際のレスポンス本文 | ブラウザーのデコード能力 |
| アップロード受付 | クライアントの申告、ファイル名、実データの検証結果 | 申告だけで安全なファイルと保証すること |
| オブジェクト保存 | 保存時のメタデータと、配信時のヘッダー | 保存した属性が全配信経路でそのまま使われること |
| アプリ内処理 | 実際に読み込めるデータとデコーダーの対応 | 拡張子だけから画像構成を確定すること |
取得・保存・配信を順に確認する
- アップロードされた実ファイルを、想定した検証処理で確認します。
- 保存オブジェクトに付けた媒体型を確認します。
- 実際の配信URLで、返るヘッダーと本文が想定どおりかを確認します。
- 途中にキャッシュや別の配信経路がある場合は、そのレスポンスも確認します。
- ブラウザーでの表示成否は、取得とは別に検証します。
HEIC MIME typeを直しただけで表示問題が解消するとは限りません。空ファイルや別内容のレスポンス、取得エラー、デコード失敗を別々に扱うと切り分けやすくなります。
Webページで表示する場合
imgやpictureを使う場合はHTMLでHEICを扱うときの確認点、ブラウザー内の処理を組む場合はJavaScript側の処理設計をご覧ください。媒体型と、実行環境がその画像をデコードできるかは別です。
言語ごとの実装条件を確認する
手動で別形式の画像を用意するだけなら、HEICの変換形式一覧で写真を変換できます。ブラウザーで使う変換ツールであり、MIME検査用のAPIやSDKではありません。
よくある質問
媒体型の設定、アップロードの検証、ブラウザー表示について。
HEIC MIME typeは拡張子だけで決められますか?
拡張子は手掛かりですが、登録条件と実際のファイルを確認してください。
HEIC Content Typeをimage/jpegにすればJPGになりますか?
いいえ。宣言を変えるだけで画像データは変わりません。
アップロード時のMIMEが正しければ安全ですか?
いいえ。送信者の申告だけを信用せず、アップロードされた実際のデータを検証してください。
正しいContent-Typeなら全ブラウザーで表示できますか?
媒体型の宣言とデコーダーの対応は別です。対象の実行環境で確認してください。