SILKYPIXでの現像-Exif情報変換

初めに

水中写真で、海中の生物をとったときに、コメントにその生物の名前を入力しておけば、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で独自に設定されるコードらしい。

コメント

タイトルとURLをコピーしました