Commit Graph

151 Commits

Author SHA1 Message Date
Paul B Mahol e917cd9828 avfilter/vf_v360: unbreak fov_from_dfov() for (d)fisheye when width != height
Based on patch by Daniel Playfair Cal.
2021-04-11 10:12:11 +02:00
Paul B Mahol 1050f94c22 avfilter/vf_v360: allow user to control fov for equirectagular format
It may be useful to use different values from typical 360/180 deg.
2021-04-11 00:56:44 +02:00
Michael Koch ce8f45aaba avfilter/vf_v360: fix several problems with 'perspective' output
The image center wasn't preserved, the output image was mirror reversed,
and rotations were made around wrong axes.
I did also remove the vector normalization, because it's sure that the vector
is already normalized if it's calculated from sin() and cos() terms.
2020-12-04 19:50:10 +01:00
Paul B Mahol d6e903b09b avfilter/vf_v360: make commands always do relative rotation 2020-10-25 12:49:25 +01:00
Paul B Mahol a086b73e1f avfilter/vf_v360: use quaternions for rotation
Fixes gimbal lock issues, and round-off errors.
2020-10-07 01:54:05 +02:00
Paul B Mahol 3a035a8cd2 avfilter/vf_v360: fix possible out of range values 2020-10-04 19:23:52 +02:00
Paul B Mahol eaba6cecfb avfilter/vf_v360: add mitchell interpolation 2020-10-04 19:23:52 +02:00
Paul B Mahol 23d0754165 avfilter/vf_v360: stop using floats variables in xyz_to_octahedron
Use proper integer variables.
2020-09-30 00:09:22 +02:00
Paul B Mahol 12585c87e6 avfilter/vf_v360: simplify input flipping 2020-09-29 14:21:22 +02:00
Paul B Mahol 86b29c0cd0 avfilter/vf_v360: split maps into slices 2020-09-29 14:21:20 +02:00
Paul B Mahol 6db1b1af4c avfilter/vf_v360: add octahedron format 2020-09-27 22:40:26 +02:00
Paul B Mahol ce297b44d3 avfilter/vf_v360: do not ignore return value of allocate_plane() 2020-06-23 21:55:40 +02:00
Paul B Mahol 00a5df71ad avfilter/vf_v360: add orthographic projection support 2020-06-23 16:00:02 +02:00
Paul B Mahol 44ce333f03 avfilters/vf_v360: add equisolid projection support 2020-06-22 14:41:36 +02:00
Paul B Mahol 2970846fc1 avfilter/vf_v360: make FOV adjusted for dual fisheye too
Remove any usage of padding for this format.
2020-04-29 19:18:25 +02:00
Steven Liu d813e43b3d avfilter/vf_v360: adjustment out_pad and in_pad maximum value to 1/10
Because not every user know about in_pad and out_pad reasonable value range
so maybe try to set 1.0, but setting 1.0 is so hugh to get an fatal error.

Suggested-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2020-04-29 13:48:02 +01:00
Paul B Mahol ec7fb45240 avfilter/vf_v360: add pannini input support 2020-04-04 14:16:28 +02:00
Paul B Mahol dc67c0f180 avfilter/vf_v360: improve description of output fov options 2020-04-03 17:14:58 +02:00
Paul B Mahol b00b935d99 avfilter/vf_v360: add lagrange9 interpolation 2020-04-02 12:25:37 +02:00
Paul B Mahol 72be5d4661 avfilter/vf_v360: fix swapped variables 2020-03-29 13:27:49 +02:00
Paul B Mahol 85025162da avfilter/vf_v360: speedup fisheye output 2020-03-29 13:27:49 +02:00
Paul B Mahol 460001981f avfilter/vf_v360: reduce unnecessary negations 2020-03-29 13:27:49 +02:00
Paul B Mahol 840e92da17 avfilter/vf_v360: improve sg input format
Specifically unbreak yaw functionality.
2020-03-26 13:53:22 +01:00
Paul B Mahol 7931e766ad avfilter/vf_v360: improve sg output format 2020-03-26 13:37:13 +01:00
Paul B Mahol 0b43897530 avfilter/vf_v360: fix hfov/vfov calculation from dfov for sg projection 2020-03-25 13:38:41 +01:00
Paul B Mahol 5c7b6aadb5 avfilter/vf_v360: simplify some unnecessary indirections 2020-03-03 12:41:30 +01:00
Paul B Mahol 580d68f90e avfilter/vf_v360: add half equirectangular input format 2020-03-03 12:21:16 +01:00
Paul B Mahol ca04231983 avfilter/vf_v360: add half equirectangular output format 2020-03-03 12:03:42 +01:00
Paul B Mahol 6e1913a02e avfilter/vf_v360: add truncated square pyramid input format 2020-03-02 19:05:13 +01:00
Paul B Mahol 3dd81be866 avfilter/vf_v360: add truncated square pyramid output format 2020-03-02 17:43:25 +01:00
Paul B Mahol 1281399135 avfilter/vf_v360: fix cylindrical input format 2020-03-01 11:24:31 +01:00
Paul B Mahol db8146f4dd avfilter/vf_v360: cleanup some code 2020-03-01 10:33:36 +01:00
Paul B Mahol 8f3df1dd4d avfilter/vf_v360: improve interpolation for equirect input at poles 2020-02-29 22:35:02 +01:00
Paul B Mahol f707c84b8b avfilter/vf_v360: add partial size setup for flat
Other part of size is calculated from both available horizontal
and vertical FOV and given one size component.
2020-02-29 20:22:37 +01:00
Paul B Mahol 3733a6bc20 avfilter/vf_v360: speed up fisheye input calculation 2020-02-29 16:39:35 +01:00
Paul B Mahol 2dfd9445ff avfilter/vf_v360: improve tetrahedron input format at frame borders 2020-02-29 14:24:35 +01:00
Paul B Mahol 50a13b987b avfilter/vf_v360: simplify tetrahedron input calculation 2020-02-29 14:24:35 +01:00
Paul B Mahol fc7d4d08fb avfilter/vf_v360: improve precision of some output formats 2020-02-29 14:24:35 +01:00
Paul B Mahol 31ecfa95fb avfilter/vf_v360: simplify code which handles interpolation points 2020-02-28 16:53:19 +01:00
Paul B Mahol 9b22254331 avfilter/vf_v360: add initial barrel split format input support 2020-02-27 23:37:23 +01:00
Paul B Mahol b0a9960a77 avfilter/vf_v360: add barrel split format output support 2020-02-26 14:52:25 +01:00
Paul B Mahol b484eb2556 avfilter/vf_v360: add basic commands support 2020-02-25 11:33:06 +01:00
Paul B Mahol 08a21c1fd8 avfilter/vf_v360: handle gracefully invalid values for rorder option 2020-02-25 11:12:02 +01:00
Paul B Mahol 90913abc2e avfilter/vf_v360: improve dfisheye_to_xyz() output 2020-02-23 22:00:32 +01:00
Paul B Mahol e6ea0e7429 avfilter/vf_v360: improve fisheye_to_xyz() output 2020-02-23 21:55:35 +01:00
Paul B Mahol ebc8806b9f avfilter/vf_v360: improve equirect_to_xyz() quality 2020-02-23 18:15:06 +01:00
Paul B Mahol 4b4bcb126c avfilter/vf_v360: do not remap alpha plane if that will be overwritten later 2020-01-25 20:00:53 +01:00
Paul B Mahol 9990cb16d3 avfilter/vf_v360: mark another hemisphere not visible for flat input format 2020-01-25 14:34:05 +01:00
Paul B Mahol 8d861cd850 avfilter/vf_v360: add mask option, unset pixels are marked as transparent 2020-01-25 14:34:05 +01:00
Paul B Mahol a4f2fc9341 avfilter/vf_v360: fix fov calculation from dfov for fisheye input/output 2020-01-24 23:22:38 +01:00