summaryrefslogtreecommitdiff
path: root/gst-libs
diff options
context:
space:
mode:
authorHyunjun Ko <zzoon@igalia.com>2017-02-09 12:39:19 +0900
committerVíctor Manuel Jáquez Leal <victorx.jaquez@intel.com>2017-02-10 13:10:10 +0100
commitffc5b43da735f8c5a00e7f152e09e6a8e840f151 (patch)
tree3247c36dbe8c0ec4fc011dbc7e9f687a9aef19e8 /gst-libs
parent025d5ce33e98d35ba5419dd7f4cf811a2f0e5cfc (diff)
libs: encoder: vp8: fix bitrate calculation
Base encoder's unit of bitrate is in Kbps. We should honor it so we use the value of bitrate in VA, in which is expressed in bps. https://bugzilla.gnome.org/show_bug.cgi?id=749950
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/vaapi/gstvaapiencoder_vp8.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapiencoder_vp8.c b/gst-libs/gst/vaapi/gstvaapiencoder_vp8.c
index a0023471..00e9baec 100644
--- a/gst-libs/gst/vaapi/gstvaapiencoder_vp8.c
+++ b/gst-libs/gst/vaapi/gstvaapiencoder_vp8.c
@@ -129,8 +129,9 @@ ensure_bitrate (GstVaapiEncoderVP8 * encoder)
gst_util_uint64_scale (GST_VAAPI_ENCODER_WIDTH (encoder) *
GST_VAAPI_ENCODER_HEIGHT (encoder),
GST_VAAPI_ENCODER_FPS_N (encoder),
- GST_VAAPI_ENCODER_FPS_D (encoder)) / 4 * 1000;
+ GST_VAAPI_ENCODER_FPS_D (encoder)) / (4 * 1000);
}
+ break;
default:
base_encoder->bitrate = 0;
break;
@@ -219,7 +220,7 @@ fill_sequence (GstVaapiEncoderVP8 * encoder, GstVaapiEncSequence * sequence)
seq_param->frame_height = GST_VAAPI_ENCODER_HEIGHT (encoder);
if (GST_VAAPI_ENCODER_RATE_CONTROL (encoder) & GST_VAAPI_RATECONTROL_CBR)
- seq_param->bits_per_second = base_encoder->bitrate;
+ seq_param->bits_per_second = base_encoder->bitrate * 1000;
seq_param->intra_period = base_encoder->keyframe_period;