[FFmpeg-cvslog] avfilter/vf_v360: fix flat projection field of view calculation

Paul B Mahol git at videolan.org
Fri Sep 13 12:35:19 EEST 2019


ffmpeg | branch: master | Paul B Mahol <onemda at gmail.com> | Fri Sep 13 11:31:11 2019 +0200| [2b3094d61de80dc029f66d4a78e75c1963076a5a] | committer: Paul B Mahol

avfilter/vf_v360: fix flat projection field of view calculation

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2b3094d61de80dc029f66d4a78e75c1963076a5a
---

 libavfilter/vf_v360.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/libavfilter/vf_v360.c b/libavfilter/vf_v360.c
index 552cb24581..098bc07ef5 100644
--- a/libavfilter/vf_v360.c
+++ b/libavfilter/vf_v360.c
@@ -1777,14 +1777,9 @@ static int prepare_flat_out(AVFilterContext *ctx)
     const float h_angle = 0.5f * s->h_fov * M_PI / 180.f;
     const float v_angle = 0.5f * s->v_fov * M_PI / 180.f;
 
-    const float sin_phi   = sinf(h_angle);
-    const float cos_phi   = cosf(h_angle);
-    const float sin_theta = sinf(v_angle);
-    const float cos_theta = cosf(v_angle);
-
-    s->flat_range[0] =  cos_theta * sin_phi;
-    s->flat_range[1] =  sin_theta;
-    s->flat_range[2] = -cos_theta * cos_phi;
+    s->flat_range[0] =  tan(h_angle);
+    s->flat_range[1] =  tan(v_angle);
+    s->flat_range[2] = -1.f;
 
     return 0;
 }



More information about the ffmpeg-cvslog mailing list