Microsoft PixはEXIFの撮影時刻を保存しない!?

Ken published on
3 min, 427 words

Categories: misc

Piwigoというサービスを使っているんだけど、たまに写真が表示されないことがあった。

原因を調べてみると、写真のEXIFに撮影時刻の情報(Date/Time Original)が含まれていない場合に表示されていないことがわかった。
なんで撮影時刻の情報が含まれていないのだろう…と思ったらMicrosoft Pixのせいだった。
撮影時に音がならないし、シンプルで使いやすいと思っていたけど思わぬ落とし穴が…。
動画もたまにアプリが落ちて消えてしまうし、使うのを控えつつある。

撮影時刻を付与する

だいたいの撮影時刻を設定することにした。

引数で指定したディレクトリ配下をfindで探し、exiftoolSoftware: Microsoft Pixを検出し、ファイル名の数字をDate/Time Originalにすることにした。
Piwigoにアップロードしたファイルは20170521180117-91286379.jpgのようになるから、「年月日時刻」の12文字をcutで切り出している。

#!/bin/bash

if [ $# -ne 1 ]; then
    echo "Usage: `basename $0` <dir>"
    exit -1
fi

MSPIX=".*Microsoft Pix.*"

for f in `find $1 -name "*.jpg" -type f`; do
    ms=`exiftool -Software $f`
    if [[ $ms =~ $MSPIX ]]; then
        echo [$f] $ms
        basename $f | cut -c1-12 | xargs -ITT exiftool "-DateTimeOriginal=TT" $f
        chown www-data:www-data $f
     fi
done

これで見れるようにはなったのでよしとする。

関連ページ

[-] Piwigo is open source photo gallery software for the web | piwigo.org
http://piwigo.org/

[-] Microsoft Pix カメラを App Store で
https://itunes.apple.com/jp/app/microsoft-pix-%E3%82%AB%E3%83%A1%E3%83%A9/id1127910488?mt=8