GoProで撮影した動画はメタデータにGPS情報があるらしいのですが、それを抽出するスクリプトがGitHubにありました。
→gopro-utils
上記スクリプトを使用して、環境をDockerで作成、ついでにDockerでバッチ処理的なことがしたくて、GPS情報を抽出している間だけコンテナが起動、抽出が終わったら終了する、といった仕組みを構築してGitHubに上げてみました。
リポジトリ名のセンスがひどい
訳の怪しいREADMEに書いてありますが、手順としては以下の通りです。
- Dockerを立ち上げる
- mp4フォルダにGPS情報を抽出したい動画ファイルを入れる(複数可能)
- run.shかrun.cmdを実行する
特に問題がなければ、Dockerコンテナが立ち上がり、gpxフォルダにGPS情報がgpxファイルとして出力されます。
すべてのファイルの出力が終わると、勝手にDockerコンテナは終了します。
GoPro HERO8 Blackで撮影した動画で動作を確認しております。
注意点として、GoProの撮影開始直後は時刻や位置情報が狂っていることがあります。
これはGoProの仕様であると思われる為、どうにもできないものと思われます。
しばらくすると正しい情報が取得できるようになる為、撮影時に暖機運転(?)として、撮影を開始してしばらく置いてから(1分くらい?)本来撮影したいものを撮影すればよいかと思います。
エラーハンドリングとかちゃんとやってない完全に自分用ではありますが、GPS情報を出力したいって人の手助けになればいいな。