benbowです。今回は皆さんよくご存じのDCIMについて書いてみますよ。DCIMはData Center Infrastructure Management の略語でもありますが、ここにはデータセンタ内の資産管理については書いてありません。残念ですがそちらを目的にいらした方は引き返していただいた方が良いかも知れません。この記事のDCIMはデジタルカメラで撮った写真のデータでよく見る、皆さんよくご存じのアレのことです。こちらの方に興味のある方はもう少しお付き合いください。
デジタル写真を扱う機器には多くの種類があって
デジタル写真を扱う機器は非常に多くの種類があります。デジタル写真が撮れる機器としてはデジタルカメラ、スマートフォンやフィーチャフォンがすぐに思いつきますが、デジタル写真を「扱う」が意味するところは「撮る」だけではありません。デジタル写真を見たり、印刷したり、データ自体のコピーや移動などを行ったりと様々です。
デジタル写真を「見る」だけならフォトフレームやテレビなどがありますし、印刷であればプリンタ1ですよね。PCやスマートフォン2なら様々な形でデジタル写真を取り扱いますし、そのほかにもゲーム機あたりが思い浮かびます。こんな感じでざっと思いつくだけでもかなりの種類がありますし、それらの種類の中ではさらに様々な機種やメーカーがあるわけです。
統一規格があればみんな幸せ
こんな感じで非常に多くのデジタル写真を扱う機器がある中、それぞれが独自の形式でデジタル写真を書いたり読んだりしていたら収集がつかない、というかその機種やメーカー独自のデジタル写真しか扱えない機器ではまったく売れないことが予想されます。ということで、統一規格があればみんな幸せになれますね。
デジタル写真に限らず、統一規格や標準規格というのは数多くあります。ちなみにインターネットではRFCのインターネット標準(Internet Standard, STD)がそういった役割を担っています。この辺に興味のある方はJPNICの インターネット10分講座:RFC が概要を知るにはわかりやすくて良いですよ。
閑話休題。デジタル写真の統一規格の話に戻りますが、この規格がDCF(Design rule for Camera File system)です。これに従っていないと製品化できないような厳密なものではないので、DCFへの対応をうたっていても機器に正しく実装されているとは限らないのが泣き所ですが、メジャーどころの製品であれば概ね問題ないように思います。
この記事のタイトルにあるDCIMは、DCF規格で定義されているディレクトリ名(フォルダ名)で、Digital Camera IMagesの略称なんです。皆さんのデジタルカメラで撮った写真を記録するSDカードなどの中身を見るとDCIMフォルダがあると思いますが、それがこれに該当します。
DCF規格をざっくり説明してみる
DCFの詳細については カメラ映像機器工業会(Camera & Imaging Products Association:CIPA) の CIPA規格類 にある カメラファイルシステム規格DCF2.0(2010年版) (PDF) を参照、ということになりますが、ここでその内容をかいつまんでざっくりと説明してみます。
DCFメディア規定
記録メディアやディレクトリ(フォルダ)構成、ディレクトリやファイル名についての規定です。ここにDCIMについても書いてありますね。
ルートディレクトリ直下のディレクトリ名”DCIM”を持つディレクトリをDCFイメージルートディレクトリという。DCIMとは”Digital Camera Images”の略である。
とあるので、SDカードのルートにあるDCIMはDCFに従う限り固定のディレクトリ名ということですね。で、DCIMの直下には
DCFオブジェクトを格納するための複数のディレクトリをDCFディレクトリという。DCFディレクトリはDCFイメージルートディレクトリの直下に存在する。
とあって、そのディレクトリ名は100~999の数字+任意の半角英数大文字の5文字と定義されています。100MSDCF
, 101MSDCF
といった感じですね。先頭の数字は重複してはならないとされているので、DCFディレクトリは最大900個までということです。
DCFディレクトリ内のファイルについては、明示的に定義されているファイル形式がJPEGとそのサムネイルファイルで、それ以外についてはデータ形式についての定義はないようです。ファイル名は任意の半角英数大文字の4文字+0001~9999の数字となっていますが、αの場合は先頭に”DSC”を付けているようです。DCF規格の用語説明にある”DSC”(Digital Still Camera)がその由来だと考えられます。
また、Exifについてもここで詳細に定義さてれいますね。
Writer規定
ディレクトリやファイルを書き込む際の規定です。DCFイメージルートディレクトリがなかったら”DCIM”というディレクトリ名で書いてねとか、ディレクトリ番号は連番で振ってね、といったようなルールが定義されています。
Reader規定
ディレクトリやファイルを読み込んで表示などを行う際の規定です。削除についての規定もこちらのようですね(私の感覚ではWriterにある方が自然な気もしますが)。
写真を読み込んで表示したり印刷したりする際は、ディレクトリ構成やファイル構成に合わせて実施してねとか、削除の際は警告を出した方が良いよ、といったようなルールおよび推奨される挙動が定義されています。
こんな感じの規定が詳細にわたって記載されていて、そのボリュームは50ページ強に及びます。それほど難解な内容でもないので、デジタル写真を扱うアプリケーションを作ってみようと思い立ったときなどには一読すると良いかも知れません。
コメント