diff options
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2014-01-10 13:23:48 +0100 |
---|---|---|
committer | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2014-01-13 17:31:55 +0100 |
commit | 59229b20a5965081a210296122efe34e71d9d79f (patch) | |
tree | 6d646a6881e979c680768119c68283f1feb592b5 /gst-libs/gst/vaapi/gstvaapiencoder.h | |
parent | 8788ea99a87c61d48ce1f411f49b4b9c1489fc66 (diff) |
encoder: add keyframe period API.
Add gst_vaapi_encoder_set_keyframe_period() interface to allow the
user control the maximum distance between two keyframes. This new
property can only be set prior to gst_vaapi_encoder_set_codec_state().
A value of zero for "keyframe-period" gets it re-evaluated to the
actual framerate during encoder reconfiguration.
Diffstat (limited to 'gst-libs/gst/vaapi/gstvaapiencoder.h')
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapiencoder.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapiencoder.h b/gst-libs/gst/vaapi/gstvaapiencoder.h index 8f6e6ae1..1c3c86b0 100644 --- a/gst-libs/gst/vaapi/gstvaapiencoder.h +++ b/gst-libs/gst/vaapi/gstvaapiencoder.h @@ -72,12 +72,15 @@ typedef enum * GstVaapiEncoderProp: * @GST_VAAPI_ENCODER_PROP_RATECONTROL: Rate control (#GstVaapiRateControl). * @GST_VAAPI_ENCODER_PROP_BITRATE: Bitrate expressed in kbps (uint). + * @GST_VAAPI_ENCODER_PROP_KEYFRAME_PERIOD: The maximal distance + * between two keyframes (uint). * * The set of configurable properties for the encoder. */ typedef enum { GST_VAAPI_ENCODER_PROP_RATECONTROL = 1, GST_VAAPI_ENCODER_PROP_BITRATE, + GST_VAAPI_ENCODER_PROP_KEYFRAME_PERIOD, } GstVaapiEncoderProp; /** @@ -126,6 +129,10 @@ gst_vaapi_encoder_put_frame (GstVaapiEncoder * encoder, GstVideoCodecFrame * frame); GstVaapiEncoderStatus +gst_vaapi_encoder_set_keyframe_period (GstVaapiEncoder * encoder, + guint keyframe_period); + +GstVaapiEncoderStatus gst_vaapi_encoder_get_buffer_with_timeout (GstVaapiEncoder * encoder, GstVaapiCodedBufferProxy ** out_codedbuf_proxy_ptr, guint64 timeout); |