Mesa (master): st/va: Support fractional framerate in misc parameter

Christian König deathsimple at kemper.freedesktop.org
Mon Mar 6 13:12:43 UTC 2017


Module: Mesa
Branch: master
Commit: c93a157078591847a226265edf1c701d81635fc1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c93a157078591847a226265edf1c701d81635fc1

Author: Mark Thompson <sw at jkqxz.net>
Date:   Fri Jan 27 22:03:10 2017 +0000

st/va: Support fractional framerate in misc parameter

Signed-off-by: Mark Thompson <sw at jkqxz.net>
Acked-by: Christian König <christian.koenig at amd.com>

---

 src/gallium/state_trackers/va/picture.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/state_trackers/va/picture.c
index 53bb9eb..ef8b57a 100644
--- a/src/gallium/state_trackers/va/picture.c
+++ b/src/gallium/state_trackers/va/picture.c
@@ -348,7 +348,13 @@ static VAStatus
 handleVAEncMiscParameterTypeFrameRate(vlVaContext *context, VAEncMiscParameterBuffer *misc)
 {
    VAEncMiscParameterFrameRate *fr = (VAEncMiscParameterFrameRate *)misc->data;
-   context->desc.h264enc.rate_ctrl.frame_rate_num = fr->framerate;
+   if (fr->framerate & 0xffff0000) {
+      context->desc.h264enc.rate_ctrl.frame_rate_num = fr->framerate       & 0xffff;
+      context->desc.h264enc.rate_ctrl.frame_rate_den = fr->framerate >> 16 & 0xffff;
+   } else {
+      context->desc.h264enc.rate_ctrl.frame_rate_num = fr->framerate;
+      context->desc.h264enc.rate_ctrl.frame_rate_den = 1;
+   }
    return VA_STATUS_SUCCESS;
 }
 




More information about the mesa-commit mailing list