ストリートビューに投稿するためには、insta one x2とGPX Smart Remoteを使って360度の動画を撮影をします。UL2GSVを使えば、ほとんど作業はありません。mp4ファイルとGPXファイルをそれぞれ作って、INSV2GSVを使って送るだけです。
GPXファイルのトレックが多少不正確な場合もあります(実は、多いです)。それは緑道や登山道を通るからそうなるようにも思います。
グーグルでもちょっと?修正しているように思います(説明には書いていませんし、私はそうではないかと思うだけです。ずれの程度によって違うようです。でも確信はありません)。修正が必要な時には、カシミール3Dというソフトを使って修正しています。このブログとは別に書きます。
UL2GSVを使わないとすると、ffmpegというツールが必要になります。
必須ではないようですがfpsを1にするのと、creation_timeをGPXの最初のトラックポイントの時刻に合わせるために利用します。
グーグルへの送信は、ストリートビュースタジオで代用できます。
GPXのトレックの最初のポイントを地図で見ると、大体、撮影開始と同期しているように思っています。GPS SmartRemoteでオン/オフするのですから、違っていたら困ります。
念のため、地図と動画を比較してみると、同期していると思っています。
具体的には、横から道があるところで撮影を開始して確認しています。
UL2GSVを使わないとすると、GPXファイルは、GPSロガーアプリから作ったものを、利用しないといけないのですが、INSV2GPXで作ったGPXファイルの最初と最後のトラックポイントの時刻を利用するつもりです。
GPS Smart Remoteを使えば、何も考えなくてよいので、その点でもUL2GSVを使おうかと思っています。
GPXのトレックの最初のトレックポイントと、mp4ファイルのメタデータにあるcreation_timeがズレることがあるようです。それで、ffmpegを使って、creation_timeをGPXの最初のポイントの時刻(UTCです)にしています。
また、カメラメーカーによっては、mp4ファイルのcreation_timeをUTCでなく、ローカルタイム(日本ではJST)で表示することもあるようです。
一方で、UTCからローカルタイムに変更しようとしているブログもたくさん見かけます。そのまま使えませんが、参考にしました。
GoProを持っていないので、よくわかりませんが、GoProをスマホにつなげると、カメラの時刻がスマホの時間に変更されるみたいです。
スマホやパソコンは、JSTで表示されています。カメラとスマホを接続すると、時間が、変わるみたいなことを書いてありました。
GoProはもっていないので、よくわかりませんでした。
結論としては、タイムゾーンを設定に入れたら問題がなくなるというのが、多いです。
なお、GoProの最新カメラでは、タイムゾーンがあるみたいです。
いままでは、GPXファイルの最初のトラックポイントの時刻とmp4
ファイルのcreation_timeには、微妙に時間差を設けたこともありましたが、結果的にはエラーになったことはありません。正確に記録をつけているわけではないです。
ffmpegを使うためには、Windowsシステムツールにあるコマンドプロンプトを使うことが必要なようです。
CUIとかコマンドラインとか説明されているようです。
コマンドプロンプトの説明は、私にはできそうにありません。どこかのブログでみてもらうとして、昔のMS-DOSは、こんなインターフェースだったそうです。
私が会社に入った時は、たぶん、IBM-PCやPC-9801が会社にあったと思います。たぶんMS-DOSが動いていたと思いました?名前が違った?
近くに1台しかなかったので、誰も使っていないときには、使える程度ですが、どう使ったか覚えていません。
コマンドプロンプトにはカレントディレクトリというのがあります。カレントディレクトリにあるexeファイルは、ファイル名を書くだけで起動できたと思います。カレントディレクトリにあるファイルは、同じようにファイル名を書くだけで、使えるみたいです。
カレントディレクトリ以外にあると、フルパスを書かないといけないようです。フルパスは、cドライブにあれば、c:からすべてのパスを書かないといけないようです。
それで、簡単にするには、ファイルをすべてカレントディレクトリに集めたように思います。
どうでもよい、こんなことだけ、覚えているみたいです。
ユーザーとしてコマンドプロンプト起動すると、ユーザー名のディレクトリ(フォルダー)がカレントディレクトリになるようです。
普通は、ffmpegのzipファイルをダウンロードすると思います。
ユーザーの名前の下にフォルダーを作って、そこにzip展開します。
私の勝手な想像?も入っていますが、コマンドプロンプトを起動して、そこで、dirと書くと、directory(フォルダー名)が出てくるので、ツールがあるか?すぐに確認できるようにしているのだと思います。
UL2GSVでも、ユーザ名の下にUL2GSVというフォルダーを作って、そこにzip展開することを推奨していました。
また、エキスプローラを使って、exeファイルをコマンドプロンプト画面にドラッグアンドドロップすると、フルパスで表現されたexeファイルがコマンドプロンプト画面上に出てきます。ファイルをコマンドプロンプトの画面にドラッグアンドドロップすると同じようにフルパスで表現されます。
そういえば、フォルダーの名前を付けるときに、ブランクを入れることが多いと思います。私は多いです。
コマンドプロンプトでは、ブランクは、パラメータの区切りとか特別な意味があるようです。それで、フォルダー名にブランクがあると、動作がおかしくなることがあるようです。
ブランクを_とかにすると問題はなくなりました。
コマンドプロンプトで使う可能性がある場合には、フォルダー名は、ブランクを避けて、_にすべきと思います。
たいがい、そんなことは書いてありますが、動かないということがあって、最終的には、フォルダー名にブランクを使っていたと分かったことが何回かありました。バッチファイルでは、エラーメッセージがでることもあるみたいです。
ついでに書きますと、バッチファイルでの、エラーの認識能力は低いようなので、場合によっては、タイプミスしても、エラーメッセージは出なくて、変な動きをすることもあるみたいです。
一字ずつ、チェックしないといけないのですが、それが大変でした。
ffmpegでは、その後に入力ファイルとか指定しますが、それも、必要なファイルを、コマンドプロンプト画面にドラッグアンドドロップするだけでフルパスで表現されます。さらにパラメータとかを追記することが必要ですが・・・
また、バッチファイルというのが使えます。
これもWindowsシステムでは、どのような位置づけになるのか私には、わかりません。
バッチファイルは、テキストです。メモ帳で作れますが、保存形式としてANSIで保存しないといけないようです。メモ帳では、拡張子は.txtになりますが、それを.batに変えるだけです。
バッチファイルはデスクトップにも置くことができます。
バッチファイルと例としては、robocopyとか使って、フォルダーをバックアップして、最後にシャットダウンするのが出てきます。
そんなことができたら、パソコンを終わろうとすると、必要なデータをバックアップできるし、バックアップが終わってからシャットダウンできるのですから、不精な私には、とっても便利な機能のように思います。
シャットダウンコマンドは、コマンドプロンプトにはなくて、PowerShellにあるようです?
robocopyは、コマンドプロンプトでも、PowerShellでも同じように書けます。
一応、できたのですが、どうも時間がかかるし、正しいのかわかりませんので、確認出来たら、このブログで公表します。
ファイル一つだけをバッチファイルのアイコンに、ドラッグアンドドロップすると、パラメータ?にそのファイル名が出てくるようです。
ffmpegで処理しようと思うファイルを、バッチファイルのアイコンにドラッグアンドドロップして、処理できます。
ドラッグアンドドロップしたファイル名が、バッチファイルで、どのように表示されてくるのか、調べました。というかそんなブログを調べました。
d:\streetview\aaa\VID_20220818_103353_00_002.mp4をバッチファイルのアイコンにドラッグアンドドロップした場合です。aaaの部分は、私は、通常年月日と日本語の撮影場所を書いています。
日本語で書くと、文字化けするようなので、ここでは、aaaにしました。
%1では、d:\streetview\aaa\VID_20220818_103353_00_002.mp4
両側に" "が付く場合もある?それを見て、%~1を使い始めました。
%~1では、d:\streetview\aaa\VID_20220818_103353_00_002.mp4
%~f1も、同じように
d:\streetview\aaa\VID_20220818_103353_00_002.mp4
%1では、d:\streetview\aaa\VID_20220818_103353_00_002.mp4
両側に" "が付く場合もある?それを見て、%~1を使い始めました。
%~1では、d:\streetview\aaa\VID_20220818_103353_00_002.mp4
%~f1も、同じように
d:\streetview\aaa\VID_20220818_103353_00_002.mp4
になります。
%~n1では、ファイル名だけになります。VID_20220818_103353_00_002です。
%~x1では、拡張子だけです。この場合は.mp4です。
%~d1では、ドライブ名だけです。d:になります。
%~p1では、パス名でしょうか?\streetview\aaa\
%~n1では、ファイル名だけになります。VID_20220818_103353_00_002です。
%~x1では、拡張子だけです。この場合は.mp4です。
%~d1では、ドライブ名だけです。d:になります。
%~p1では、パス名でしょうか?\streetview\aaa\
%~dp1では、d:\streetview\aaa\になります。
例えば、%~dpn1.txtとすると
d:\streetview\aaa\VID_20220818_103353_00_002.txt
となります。
さらに、%~dp1original_%~nx1では、
d:\streetview\aaa\original_VID_20220818_103353_00_002.mp4となります。
例えば、%~dpn1.txtとすると
d:\streetview\aaa\VID_20220818_103353_00_002.txt
となります。
さらに、%~dp1original_%~nx1では、
d:\streetview\aaa\original_VID_20220818_103353_00_002.mp4となります。
最初は、mp4ファイルを保存しておきたいときにこの名前を使い、出力ファイルの名前を変えないようにしました。
今は、出力ファイルの名前を変えるようにしました
%~dpn1_meta.txtでは、
d:\streetview\aaa\VID_20220818_103353_00_002_meta.txt
となります。このファイルはメタデータを保存するのに使っています。
d:\streetview\aaa\VID_20220818_103353_00_002_meta.txt
となります。このファイルはメタデータを保存するのに使っています。
説明は、苦手です。
2つバッチファイルを作りました。
今までは、無事に動いているようです。
本来なら、githubとかで、講評するものでしょうが?あまりプログラムを作っていなかったですし、若い時から、得意ではなかったので、このブログにします。
一つは、jpegファイルと、mp4ファイルを、アイコンの上にドラッグアンドドロップすれば、そのファイルのメタデータを、そのファイルがあるフォルダーに、txtファイルとして保存するものです。
また、mp4ファイルを、ストリートビュースタジオで送る準備をするためのものです。
アイコンの上にドロップアンドドロップして、UTC?と表示されたら、GPXの最初のトレックポイントの時刻をそのまま、入力すると、fpsを1にして、Creation_timeを入力した値にしてくれるバッチソフトです。
たぶん。わざわざ手で入力しなくても、自動で処置できると思いますが、まだわかりませんでした。
出来たファイルには、_fps1_utcが付いているので、わかると思います。
このまま、streetview studioで、指定されたところに、ドロップアンドドラッグして、GPXファイルを追加したら、送信を始めるはずです。
例として、そのうち2つを公開します。
いろいろなファイルで使っていたので、テストも十分にすんでいるように思っています。
でも、公開しようとすると余計なところが気になります。
余計なところを削除すると、動かなくなるような心配をしています。