enum
{
PROP_0,
+ PROP_ADAPTER_LUID,
+ PROP_DEVICE_PATH,
PROP_TARGET_USAGE,
PROP_LOW_LATENCY,
};
object_class->set_property = gst_qsv_encoder_set_property;
object_class->get_property = gst_qsv_encoder_get_property;
+#ifdef G_OS_WIN32
+ g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
+ g_param_spec_int64 ("adapter-luid", "Adapter LUID",
+ "DXGI Adapter LUID (Locally Unique Identifier) of created device",
+ G_MININT64, G_MAXINT64, 0,
+ (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE | G_PARAM_READABLE |
+ G_PARAM_STATIC_STRINGS)));
+#else
+ g_object_class_install_property (object_class, PROP_DEVICE_PATH,
+ g_param_spec_string ("device-path", "Device Path",
+ "DRM device path", NULL,
+ (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE |
+ G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
+#endif
+
g_object_class_install_property (object_class, PROP_TARGET_USAGE,
g_param_spec_uint ("target-usage", "Target Usage",
"1: Best quality, 4: Balanced, 7: Best speed",
{
GstQsvEncoder *self = GST_QSV_ENCODER (object);
GstQsvEncoderPrivate *priv = self->priv;
+ GstQsvEncoderClass *klass = GST_QSV_ENCODER_GET_CLASS (self);
switch (prop_id) {
+ case PROP_ADAPTER_LUID:
+ g_value_set_int64 (value, klass->adapter_luid);
+ break;
+ case PROP_DEVICE_PATH:
+ g_value_set_string (value, klass->display_path);
+ break;
case PROP_TARGET_USAGE:
g_value_set_uint (value, priv->target_usage);
break;
enum
{
PROP_0,
- PROP_ADAPTER_LUID,
- PROP_DEVICE_PATH,
PROP_CABAC,
PROP_MIN_QP_I,
PROP_MIN_QP_P,
object_class->set_property = gst_qsv_h264_enc_set_property;
object_class->get_property = gst_qsv_h264_enc_get_property;
-#ifdef G_OS_WIN32
- g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
- g_param_spec_int64 ("adapter-luid", "Adapter LUID",
- "DXGI Adapter LUID (Locally Unique Identifier) of created device",
- G_MININT64, G_MAXINT64, qsvenc_class->adapter_luid,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE | G_PARAM_READABLE |
- G_PARAM_STATIC_STRINGS)));
-#else
- g_object_class_install_property (object_class, PROP_DEVICE_PATH,
- g_param_spec_string ("device-path", "Device Path",
- "DRM device path", cdata->display_path,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE |
- G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
-#endif
-
g_object_class_install_property (object_class, PROP_CABAC,
g_param_spec_enum ("cabac", "Cabac", "Enables CABAC entropy coding",
GST_TYPE_QSV_CODING_OPTION, DEFAULT_CABAC,
GParamSpec * pspec)
{
GstQsvH264Enc *self = GST_QSV_H264_ENC (object);
- GstQsvEncoderClass *klass = GST_QSV_ENCODER_GET_CLASS (self);
switch (prop_id) {
- case PROP_ADAPTER_LUID:
- g_value_set_int64 (value, klass->adapter_luid);
- break;
- case PROP_DEVICE_PATH:
- g_value_set_string (value, klass->display_path);
- break;
case PROP_CABAC:
g_value_set_enum (value, self->cabac);
break;
enum
{
PROP_0,
- PROP_ADAPTER_LUID,
- PROP_DEVICE_PATH,
PROP_MIN_QP_I,
PROP_MIN_QP_P,
PROP_MIN_QP_B,
object_class->set_property = gst_qsv_h265_enc_set_property;
object_class->get_property = gst_qsv_h265_enc_get_property;
-#ifdef G_OS_WIN32
- g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
- g_param_spec_int64 ("adapter-luid", "Adapter LUID",
- "DXGI Adapter LUID (Locally Unique Identifier) of created device",
- G_MININT64, G_MAXINT64, qsvenc_class->adapter_luid,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE | G_PARAM_READABLE |
- G_PARAM_STATIC_STRINGS)));
-#else
- g_object_class_install_property (object_class, PROP_DEVICE_PATH,
- g_param_spec_string ("device-path", "Device Path",
- "DRM device path", cdata->display_path,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE |
- G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
-#endif
-
g_object_class_install_property (object_class, PROP_MIN_QP_I,
g_param_spec_uint ("min-qp-i", "Min QP I",
"Minimum allowed QP value for I-frame types (0: default)",
GParamSpec * pspec)
{
GstQsvH265Enc *self = GST_QSV_H265_ENC (object);
- GstQsvEncoderClass *klass = GST_QSV_ENCODER_GET_CLASS (self);
switch (prop_id) {
- case PROP_ADAPTER_LUID:
- g_value_set_int64 (value, klass->adapter_luid);
- break;
- case PROP_DEVICE_PATH:
- g_value_set_string (value, klass->display_path);
- break;
case PROP_MIN_QP_I:
g_value_set_uint (value, self->min_qp_i);
break;
enum
{
PROP_0,
- PROP_ADAPTER_LUID,
- PROP_DEVICE_PATH,
PROP_QUALITY,
};
object_class->set_property = gst_qsv_jpeg_enc_set_property;
object_class->get_property = gst_qsv_jpeg_enc_get_property;
-#ifdef G_OS_WIN32
- g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
- g_param_spec_int64 ("adapter-luid", "Adapter LUID",
- "DXGI Adapter LUID (Locally Unique Identifier) of created device",
- G_MININT64, G_MAXINT64, qsvenc_class->adapter_luid,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE | G_PARAM_READABLE |
- G_PARAM_STATIC_STRINGS)));
-#else
- g_object_class_install_property (object_class, PROP_DEVICE_PATH,
- g_param_spec_string ("device-path", "Device Path",
- "DRM device path", cdata->display_path,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE |
- G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
-#endif
-
g_object_class_install_property (object_class, PROP_QUALITY,
g_param_spec_uint ("quality", "Quality",
"Encoding quality, 100 for best quality",
GParamSpec * pspec)
{
GstQsvJpegEnc *self = GST_QSV_JPEG_ENC (object);
- GstQsvEncoderClass *klass = GST_QSV_ENCODER_GET_CLASS (self);
switch (prop_id) {
- case PROP_ADAPTER_LUID:
- g_value_set_int64 (value, klass->adapter_luid);
- break;
- case PROP_DEVICE_PATH:
- g_value_set_string (value, klass->display_path);
- break;
case PROP_QUALITY:
g_value_set_uint (value, self->quality);
break;
enum
{
PROP_0,
- PROP_ADAPTER_LUID,
- PROP_DEVICE_PATH,
PROP_QP_I,
PROP_QP_P,
PROP_GOP_SIZE,
object_class->set_property = gst_qsv_vp9_enc_set_property;
object_class->get_property = gst_qsv_vp9_enc_get_property;
-#ifdef G_OS_WIN32
- g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
- g_param_spec_int64 ("adapter-luid", "Adapter LUID",
- "DXGI Adapter LUID (Locally Unique Identifier) of created device",
- G_MININT64, G_MAXINT64, qsvenc_class->adapter_luid,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE | G_PARAM_READABLE |
- G_PARAM_STATIC_STRINGS)));
-#else
- g_object_class_install_property (object_class, PROP_DEVICE_PATH,
- g_param_spec_string ("device-path", "Device Path",
- "DRM device path", cdata->display_path,
- (GParamFlags) (GST_PARAM_CONDITIONALLY_AVAILABLE |
- G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
-#endif
-
g_object_class_install_property (object_class, PROP_QP_I,
g_param_spec_uint ("qp-i", "QP I",
"Constant quantizer for I frames (0: default)",
GParamSpec * pspec)
{
GstQsvVP9Enc *self = GST_QSV_VP9_ENC (object);
- GstQsvEncoderClass *klass = GST_QSV_ENCODER_GET_CLASS (self);
switch (prop_id) {
- case PROP_ADAPTER_LUID:
- g_value_set_int64 (value, klass->adapter_luid);
- break;
- case PROP_DEVICE_PATH:
- g_value_set_string (value, klass->display_path);
- break;
case PROP_QP_I:
g_value_set_uint (value, self->qp_i);
break;