時刻合わせもしたし。そう思ってGarmin VIRB Edit1でGPSを同期してみた。
ずれてる……。
がっつりずれてる……。
しかも航跡が分断されている……2。
ムッキーッ! なんでじゃ。
頭に来て動画ファイルのExif情報を調べたり、更新したり試行錯誤して原因を探る。わかった。どうやら「Patech スポーツカメラ 12MP」がおかしい。Garmin VIRB Editは動画の撮影開始時刻をExif情報の「CreateDate」を使っている3。で、「Patech スポーツカメラ 12MP」では何が設定されているか、というと、ファイル作成日時と同じ。つまりファイルに書き出した時刻で、それっていわば、その動画ファイルの撮影終了時刻だよね……4。
くそっ、Exif情報を書き換えちゃる!
たとえば、exiftoolを使って書き換えることができる(正確には書き換えた別のファイルができる。オーバーライドするにはオプションをつけてやる5)。
exiftool -CreateDate='2017:07:01 12:57:50' 2017_0701_125751_001.mp4
でもそもそもの撮影開始時刻はどっからもってくれば、いいんだろう。Exif情報に影も形もないんですけど? ふと見ると、ファイル名がそれだった6。で、やってみたけれど、クリップの数が16個に制限されている模様……。17番目にGPSを設定できなかった(というか、再生もできない)7。まぁ、いいけど。
実は「Patech スポーツカメラ 12MP」で出力された動画ファイルはGarmin VIRB Editへ直接、インポートできない。MOVファイルになっているのでmp4ファイルに変換する必要がある。拡張子をmp4へ換えてやれば、いちおうインポートされるのだけれど、動画の部分だけで音声がインポートされない。
なので変換をかけてやる必要がある。
avconvert --preset Preset1920x1080 -s 2017_0701_125751_001.MOV --output 2017_0701_125751_001.mp4
みたいな感じ。avconvertはMacOSに入っているコマンド。
これをやってexiftoolでExif情報の書き替えをやってやるわけだ。
Footnotes:
Garmin VIRB Editのバージョンは2.9.2。
細切れの動画ファイルひとつだけだったのでこれはしかたない。全体になる分の動画に同期すればOKだった。
これって「TrackCreateDate」じゃないの? とは思うけど。4.2.3でも「CreateDate」を使用していた。ただし4.2.3で世界標準時間とあつかっているため、単純に日本時間を設定してあると、9時間ずれてしまう(2.9.2ではそのまま、使用されていた<=バグだろうけど)。
ちなみに「TrackCreateDate」も「MediaCreateDate」もファイル作成日時になっていた。
-overwrite_original
年_月日_時分秒_項番_.MOV
バージョン4.2.3でも同じ。