動画保存先としてのgoogle Foto。
360度写真もphotospere状態で保存できるが画質が1920x1920になってしまう。
例えばinsta360で5.7k撮影すると5760x2880で撮影される。2:1。
せめて左右に分割して2880x2880で保存したい。
google fotoの節約で自動的に長辺1920になるが。
5760が1920になるよりはマシだろう。
半分ずつトリミングして保存すれば良い。
トリミングして保存
適当に書くとこう
for %%A in (*.mp4) do (
ffmpeg.exe -i "%%A" -vf crop=iw/2:ih:0:0 -r 25 -c:v hevc_nvenc "%%~nA_l.mp4"
ffmpeg.exe -i "%%A" -vf crop=iw/2:ih:iw/2:0 -r 25 -c:v hevc_nvenc "%%~nA_r.mp4"
)
とりあえず_lと_rと名前をつけて保存。
横幅の半分で切って保存。
最終的に長辺1920になるのであらかじめ変換してもよいがこのままで。
あとはgoogle fotoに投げるだけ。
投げたあとの復元
ファイル名の末尾が_l.mp4を見つけて_rとくっつける。
for %%A in (*_l.mp4) do (
set B=%%A
ffmpeg -i "%%A" -i !B:~0,-5!R.mp4 -filter_complex hstack !B:~0,-5!mrg.mp4
exiftool -XMP-GSpherical:Spherical="true" !B:~0,-5!mrg.mp4
)
photospereなので左右逆にしても影響はない。
ffmpeg単体でsphereデータが入らないようなので、exiftoolを使う。
for文の中で代入するのは遅延実行が必要らしく面倒だった。
まとめ
これで分割保存した動画をsphereに戻せた。
解像度は3840x1920だが。
0 件のコメント:
コメントを投稿