Mark Thompson wrote:
Signed-off-by: Mark Thompson <s...@jkqxz.net>
---
See <https://cgit.freedesktop.org/libva/tree/va/va.h#n1277> - this is a recent
addition, but is backwards-compatible.
Depends on Andy's patch
<https://lists.freedesktop.org/archives/mesa-dev/2017-January/142242.html> for
actual support for fractional framerate.
Seems good testing so far, in the sense that it doesn't regress anything.
Added CCs.
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 a024437bff..8073ad8906 100644
--- a/src/gallium/state_trackers/va/picture.c
+++ b/src/gallium/state_trackers/va/picture.c
@@ -357,7 +357,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;
}
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev