Note
このドキュメントは2026-02-27 02:21にPLaMo Translation Modelを使用して自動翻訳されました。
FEP-ee3a: Exifメタデータサポート機能
概要
交換可能画像ファイル形式([Exif])ファミリーは、JPEG、TIFF、WAVなどのファイルフォーマットと構造化メタデータを統合した規格である。[Exif]はカメラの撮影パラメータ(レンズ情報、焦点距離、露出時間など)や音声記録パラメータ(チャンネル数、サンプリングレートなど)を記録する。本標準はもともと写真分野を対象としていたが、バージョン2.1で音響録音にも対応するように拡張された。本提案では、[Schema.org]ボキャブラリーの[exifData]プロパティを用いてFediverse全体でExifメタデータを伝達するための仕組みを定義する。
背景
[ActivityPub]実装間での相互運用性を向上させ、添付ファイルのメタデータ処理を統一するため、本FEPでは画像(Image)および音声(Audio)添付に関連付けられたExifメタデータを公開するためのボキャブラリーと処理規則を規定する。
仕様
本FEPにおいて、ExifメタデータはImageまたはAudioオブジェクトのexifDataプロパティ下に、[PropertyValue]項目の配列として表現される。各アイテムには以下が必須である:
- @type属性がPropertyValueであること
- Exifタグを識別する名前フィールド
- 対応する値を保持するvalueフィールド
公式Exif仕様で定義されているすべてのメタデータタグを表現することができるが、相互運用性の観点から、推奨されるサブセットをサポートする実装を推奨する。
プライバシーに関する考慮事項
Exifメタデータには、ユーザーの位置情報、デバイス情報、録音環境などの機密情報が含まれる可能性がある。地理的座標(緯度・経度)は個人の住所や移動パターンを特定できる場合がある。コンテンツ制作者は、これらのフィールドを含める前に必ずユーザーの同意を得ることが必須であり、公開される情報内容についてユーザーに明確に通知することが望ましい。消費者側では、地理情報やデバイス関連メタデータを機密扱いとし、明示的な許可なく一般公開しないよう留意すべきである。
定義
exifDataプロパティ
exifDataはImageまたはAudioタイプのメディアオブジェクトに付加可能なオプションプロパティである。存在する場合、その値は各オブジェクトが以下の条件を満たす配列でなければならない:
- @type属性が「PropertyValue」と等しいこと
- Exifフィールド名を含むnameプロパティを持つこと(例:"ExposureTime", "SamplesPerSec")
- 対応する値を保持するvalueプロパティを持つこと
実装側は未知のプロパティを無視しなければならない。Schema.orgにおけるexifDataの定義では値が文字列形式でも許容されているが、本FEPでは相互運用性の観点から構造化された配列表現を標準化する。
プロパティ名
プロパティ名はExif仕様のField nameに対応する文字列でなければならない(例:"FNumber", "PhotographicSensitivity", "FocalLength")。
推奨フィールド
実装側はファイル内に存在し、かつユーザー同意が得られている場合、任意のExifタグをexifDataとして公開することができる。相互運用性の観点から、以下のタグ名と説明を推奨する。画像専用または音声専用のフィールドは第二列に明示する。
| 名称(PropertyValue.name) | 適用対象 | 説明 |
|---|---|---|
DateTime |
画像、音声 | メディアが作成された日時。ExifのDateTimeタグは"YYYY:MM:DD HH:MM:SS"形式を使用する。時刻は撮影者の現地時間で表記される。 |
ExposureTime |
画像 | 露出時間(例:"1/100"または"4")。 |
FNumber |
画像 | f値として表現された絞り値(例:"f/1.8")。 |
Flash |
画像 | フラッシュの使用状況説明(例:「フラッシュは発光しなかった」)。 |
FocalLength |
画像 | カメラが報告する焦点距離。 |
FocalLengthIn35mmFilm |
画像 | 35 mmフィルム換算焦点距離。 |
GPSLatitude |
画像 | 写真撮影地点の正確な緯度。 |
GPSLatitudeRef |
画像 | 撮影地点の緯度が北緯か南緯かを指示する。'N'は北緯、'S'は南緯を示す。 |
GPSLongitude |
画像 | 写真撮影地点の正確な経度(ユーザー同意が必要)。 |
GPSLongitudeRef |
画像 | 撮影地点の経度が東経か西経かを指示する。'E'は東経、'W'は西経を示す。 |
LensMake |
画像 | レンズメーカー名。 |
LensModel |
画像 | レンズモデル名。 |
Make |
画像、音声 | デバイスの製造元。 |
Model |
画像、音声 | デバイスモデル。 |
PhotographicSensitivity |
画像 | ISO感度値。 |
Software |
画像、音声 | 使用された編集ソフトウェアまたはファームウェア。 |
SamplesPerSec |
音声 | サンプリング周波数(例:"44100 Hz")。 |
AvgBytesPerSec |
音声 | サンプルあたりのビット深度(例:"16 bit")。 |
Channels |
音声 | チャンネル構成(例:"mono", "stereo")。 |
Compression |
音声 | 圧縮方式(例:"PCM", "μ-Law", "ADPCM")。 |
実装側は追加のタグを含めることが可能であり、理解できないタグは無視しなければならない。プロパティ名は表示やフィルタリングを容易にするため、可能な限り統一することが望ましい。
使用例
画像の使用例
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"schema": "https://schema.org/"
}
],
"type": "Note",
"content": "日の出写真。",
"attachment": [{
"type": "Image",
"url": "https://example.org/photos/123.jpg",
"mediaType": "image/jpeg",
"exifData": [
{
"@type": "PropertyValue",
"name": "DateTime",
"value": "2025:03:30 06:30:00"
},
{
"@type": "PropertyValue",
"name": "ExposureTime",
"value": "1/250"
},
{
"@type": "PropertyValue",
"name": "FNumber",
"value": "f/5.6"
},
{
"@type": "PropertyValue",
"name": "FocalLength",
"value": "70 mm"
},
{
"@type": "PropertyValue",
"name": "LensModel",
"value": "Canon EF 70-200mm"
},
{
"@type": "PropertyValue",
"name": "Make",
"value": "Canon"
},
{
"@type": "PropertyValue",
"name": "Model",
"value": "EOS R5"
},
{
"@type": "PropertyValue",
"name": "PhotographicSensitivity",
"value": "400"
},
{
"@type": "PropertyValue",
"name": "Software",
"value": "Darktable"
}
]
}]
}
音声の使用例
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"schema": "https://schema.org/"
}
],
"type": "Note",
"content": "録音サンプル。",
"attachment": [{
"type": "Audio",
"url": "https://example.org/audio/sample.wav",
"mediaType": "audio/wav",
"exifData": [
{
"@type": "PropertyValue",
"name": "DateTime",
"value": "2025:03:30 06:30:00"
},
{
"@type": "PropertyValue",
"name": "ExposureTime",
"value": "1/250"
},
{
"@type": "PropertyValue",
"name": "FNumber",
"value": "f/5.6"
},
{
"@type": "PropertyValue",
"name": "FocalLength",
"value": "70 mm"
},
{
"@type": "PropertyValue",
"name": "LensModel",
"value": "Canon EF 70-200mm"
},
{
"@type": "PropertyValue",
"name": "Make",
"value": "Canon"
},
{
"@type": "PropertyValue",
"name": "Model",
"value": "EOS R5"
},
{
"@type": "PropertyValue",
"name": "PhotographicSensitivity",
"value": "400"
},
{
"@type": "PropertyValue",
"name": "Software",
"value": "Audacity"
}
]
}]
}
参考文献
- [ActivityPub] Christine Lemmer Webber, Jessica Tallon, ActivityPub, 2018
- [exifDate] Schema.org, exifData, 2025
- [PropertyValue] Schema.org, PropertyValue, 2025
- [Exif] Camera & Imaging Products Association (CIPA), Exchangeable image file format for digital still cameras: Exif Version 3.0, 2024.
著作権
CC0 1.0 Universal(CC0 1.0)パブリックドメイン献呈
本Fediverse Enhancement Proposalの著者は、法律で認められる範囲内において、当該作品に関するすべての著作権および関連または隣接する権利を放棄している。