diff options
author | Chandu Babu Namburu <chandu@amd.com> | 2016-10-07 16:41:20 +0530 |
---|---|---|
committer | Leo Liu <leo.liu@amd.com> | 2016-10-27 10:42:41 -0400 |
commit | 4da60fce5dbe7caefe0be5e14e1ac3035ead38c9 (patch) | |
tree | d45093eb63644c6411eb0476a0a1b376affff49e | |
parent | 413266fa69fdb47d85dee9cf5aeb871235938a02 (diff) |
gstomxvideoenc: fix framerate calculation overflow
When framerate numerator is greater than 32768 (max value of int16),
converting the framerate to 15.16 fixed point format is overflowing.
typecast framerate numberator to 64-bit to avoid overflow.
Reviewed-by: Leo Liu <leo.liu@amd.com>
-rw-r--r-- | omx/gstomxvideoenc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/omx/gstomxvideoenc.c b/omx/gstomxvideoenc.c index 0c8162e..48a365e 100644 --- a/omx/gstomxvideoenc.c +++ b/omx/gstomxvideoenc.c @@ -1416,7 +1416,7 @@ gst_omx_video_enc_set_format (GstVideoEncoder * encoder, port_def.format.video.xFramerate = 0; } else { if (!(klass->cdata.hacks & GST_OMX_HACK_VIDEO_FRAMERATE_INTEGER)) - port_def.format.video.xFramerate = (info->fps_n << 16) / (info->fps_d); + port_def.format.video.xFramerate = (((gint64)info->fps_n) << 16) / (info->fps_d); else port_def.format.video.xFramerate = (info->fps_n) / (info->fps_d); } |