初めに
水中写真で、海中の生物をとったときに、コメントにその生物の名前を入力しておけば、JPEG側に現像した時にExifにその情報が入って、Windowsの検索でも調べることができるかなと思ってみて、やってみたら、全く反映されなかった。
そこらあたり、どんな仕様になっているのか、ちょっと調べてみた。
変換できるかどうかの調査
Windows側で日本語が入力できそうな、タグ・タイトル・コメントなどへの変換が対象としてみた
SILKYPIX側での設定
上記の様にまずは入力してみた。入力した場所は、鉛筆マークがついている箇所。
変換結果
Windows側では上記のような感じで見ることができた。
調査結果
結果としては、以下のような感じで変換されていた。
SILKYPIX | JPEG |
コメント | コメント |
キャプション | タイトル |
レーティング | 評価 |
キーワード | タグ |
ただ、コメントに日本語を入力した場合、Windowsでは正しく表示されなかった。
開発側への質問とその答え
今回の件について、開発側へ問い合わせを行った結果、ほぼほぼ上記表の仕様で正しいようだ。
ただ、コメントの日本語については、以下のような回答であった。
SILKYPIXで入力する「コメント」をアルファベットや数字などの半角文字にし、1コマ現像後、Windowsのファイルプロパティの詳細の「コメント」表示をご確認ください。
エクスプローラ上で日本語が表示されない件につきましては、エクスプローラ上の仕様かと思われます。
恐れ入りますが、弊社では分かりかねますのでMicrosoft 社のサポートセンターなどにお問い合わせください。
さすがに、天下のマイクロソフトさんが、そんな間違いが起こすことはないと思ったため、実際のデータについて、ちょっと調べてみた。
実データの調査
実際のバイナリデータをプログラムを使って調査する前に、Exifのデータに関しての仕様を調べてみた。
仕様書はカメラ映像機器工業会規格-CIPA DC-008-2016というのがあった。
それによると、ユーザーコメントは、BYTE型で、先頭8バイトに文字コードを示す識別情報が入っているとのこと。
この仕様をもとに、Exifデータを読み込む処理を作成し読み込んでみた。
その結果、日本語のコメントはUndefined系の文字コードとして登録されていた。実際の文字コードはCP932だと思われる。
Undefined系は、文字コードが分からないものの総称になり、その読み込み方法は、Exif Reader側依存になる。実際、何のコードかわからないので、Windows側では非表示にしていたものと思われる。
定義済みのコードとしては、ASCII、JIS、Unicodeがあったので、開発側には、JISやUnicodeで出力してもらいたい旨、メールを出したが、修正されるかどうかはわからない。
その他分かったこと
Windows側でコメント等を入力した場合、ユーザーコメントが変更されるのではなく、別のExifデータが追加されていた。
これらはタグID40091~40095に該当した。
これに関しては、https://www.exiv2.org/tags.htmlに掲載があった。
どうやら、Windowsで独自に設定されるコードらしい。
コメント