[FFmpeg-user] multiple flat videos in a equirectangular projection - v360 filter

Denis Połeć denis.polec at gmail.com
Sat Jul 16 12:21:57 EEST 2022


Hello,
I wouldn't call myself a beginner, but I still need a little bit to become a pro. :) 
I have a question that might be easy to answer.

I am working on a script to bring multiple flat videos into a equirectangular projection by using v360 filter.
I have the problem that the edges of the input are very jagged. 

This did not lead to a good result when I play the equirectangular projection in a 360 player. I have also already tried different interpolation modes, which does not lead to a better result.
Does anyone have an idea how I can avoid that? Is there a better way to do this task?


Here is an example code with the result. The video in the example has a resolution of 1080p:


ffmpeg -i BRAIN.mp4 -lavfi "\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw='0':alpha_mask=1[fg1];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:alpha_mask=1[fg2];[fg2][fg1]overlay[a];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:alpha_mask=1[fg3];[fg3][a]overlay[b];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:alpha_mask=1[fg4];[fg4][b]overlay[c];\
\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=45:alpha_mask=1[fg5];[fg5][c]overlay[d];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:roll=45:alpha_mask=1[fg6];[fg6][d]overlay[e];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:roll=-45:alpha_mask=1[fg7];[fg7][e]overlay[f];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:pitch=-45:alpha_mask=1[fg8];[fg8][f]overlay[g];\
\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=-45:alpha_mask=1[fg9];[fg9][g]overlay[h];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=90:roll=-45:alpha_mask=1[fg10];[fg10][h]overlay[i];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=-90:roll=45:alpha_mask=1[fg11];[fg11][i]overlay[j];\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=180:pitch=45:alpha_mask=1[fg12];[fg12][j]overlay[k];\
\
[0]v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=90:alpha_mask=1[fg13];[fg13][k]overlay[l];\
[0]drawbox=w=1:h=1:color=black,v360=input=flat:output=e:id_fov=45:w=5120:h=2560:yaw=0:pitch=-90:alpha_mask=1[fg14];[fg14][l]overlay" -q:v 4  -vframes 1 -y test11.jpg

output:
https://nextcloud.denispolec.de/index.php/s/8yF7rKdnB9HdJsa <https://nextcloud.denispolec.de/index.php/s/8yF7rKdnB9HdJsa>
zoomed:
https://nextcloud.denispolec.de/index.php/s/fwdapyA8aGBdC2M <https://nextcloud.denispolec.de/index.php/s/fwdapyA8aGBdC2M>

Thanks!

All the best,
denis


More information about the ffmpeg-user mailing list