diff options
author | Hyunjun Ko <zzoon@igalia.com> | 2017-02-09 12:39:19 +0900 |
---|---|---|
committer | Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com> | 2017-02-10 13:10:10 +0100 |
commit | ffc5b43da735f8c5a00e7f152e09e6a8e840f151 (patch) | |
tree | 3247c36dbe8c0ec4fc011dbc7e9f687a9aef19e8 | |
parent | 025d5ce33e98d35ba5419dd7f4cf811a2f0e5cfc (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
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapiencoder_vp8.c | 5 |
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; |