libs: encoders: use GST_PARAM_USER_SHIFT to define internal params

This patch makes use of GST_PARAM_USER_SHIFT to define the internal
param in encoders to decide which parameters to expose. Thus
gstreamer-vaapi will not interfere with any change in GStreamer in the
future.

Also, the internal symbol was change to
GST_VAAPI_PARAM_ENCODER_EXPOSURE to keep the namespacing.
This commit is contained in:
Víctor Manuel Jáquez Leal 2019-09-11 14:32:22 +02:00
parent b5dd169420
commit f0d6263318
11 changed files with 125 additions and 123 deletions

View file

@ -1432,7 +1432,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"The desired bitrate expressed in kbps (0: auto-calculate)",
0, 2000 * 1024, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoder:target-percentage:
@ -1445,7 +1445,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"The desired target percentage of bitrate for variable rate "
"controls.", 1, 100, 70,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoder:keyframe-period:
@ -1458,7 +1458,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"Maximal distance between two keyframes (0: auto-calculate)", 0,
G_MAXUINT32, 30,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoder:quality-level:
@ -1471,7 +1471,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"(lower value means higher-quality/slow-encode, "
" higher value means lower-quality/fast-encode)",
1, 7, 4, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVapiEncoder:roi-default-delta-qp
@ -1485,7 +1485,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"higher value means lower-quality)",
-10, 10, -10,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoder: trellis:
@ -1499,7 +1499,7 @@ gst_vaapi_encoder_class_init (GstVaapiEncoderClass * klass)
"Trellis Quantization",
"The Trellis Quantization Method of Encoder",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_N_PROPERTIES,
properties);

View file

@ -41,10 +41,13 @@ typedef struct _GstVaapiEncoder GstVaapiEncoder;
GType
gst_vaapi_encoder_get_type (void) G_GNUC_CONST;
/* This user defined flag is added when the internal encoder
class wants to expose its property gparam spec to the according
encode class. */
#define G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE (1 << 29)
/**
* GST_VAAPI_PARAM_ENCODER_EXPOSURE: (value 65536)
*
* This user defined flag is added when the internal encoder class
* wants to expose its property gparam spec to the according encode
* class. */
#define GST_VAAPI_PARAM_ENCODER_EXPOSURE GST_PARAM_USER_SHIFT
/**
* GstVaapiEncoderStatus:

View file

@ -3778,7 +3778,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:tune:
@ -3792,7 +3792,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:max-bframes:
@ -3803,7 +3803,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_param_spec_uint ("max-bframes",
"Max B-Frames", "Number of B-frames between I and P", 0, 10, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:refs:
@ -3815,7 +3815,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_param_spec_uint ("refs", "Number of Reference Frames",
"Number of reference frames", 1, 8, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:init-qp:
@ -3826,7 +3826,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_param_spec_uint ("init-qp",
"Initial QP", "Initial quantizer value", 0, 51, 26,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:min-qp:
@ -3837,7 +3837,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_param_spec_uint ("min-qp",
"Minimum QP", "Minimum quantizer value", 0, 51, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:max-qp:
@ -3850,7 +3850,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
g_param_spec_uint ("max-qp",
"Maximum QP", "Maximum quantizer value", 0, 51, 51,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:qp-ip:
@ -3864,7 +3864,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Difference of QP between I and P frame (available only on CQP)",
-51, 51, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:qp-ib:
@ -3878,7 +3878,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Difference of QP between I and B frame (available only on CQP)",
-51, 51, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:num-slices:
@ -3891,7 +3891,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Number of slices per frame",
1, 200, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:cabac:
@ -3905,7 +3905,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Enable CABAC",
"Enable CABAC entropy coding mode",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:dct8x8:
@ -3919,7 +3919,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Enable 8x8 DCT",
"Enable adaptive use of 8x8 transforms in I-frames",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:mbbrc:
@ -3933,7 +3933,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Macroblock level Bitrate Control",
GST_VAAPI_TYPE_ENCODER_MBBRC, GST_VAAPI_ENCODER_MBBRC_AUTO,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:temporal-levels:
@ -3946,7 +3946,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Number of temporal levels in the encoded stream ",
MIN_TEMPORAL_LEVELS, MAX_TEMPORAL_LEVELS, MIN_TEMPORAL_LEVELS,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:prediction-type:
@ -3960,7 +3960,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
gst_vaapi_encoder_h264_prediction_type (),
GST_VAAPI_ENCODER_H264_PREDICTION_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:cpb-length:
@ -3972,7 +3972,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"CPB Length", "Length of the CPB buffer in milliseconds",
1, 10000, DEFAULT_CPB_LENGTH,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:num-views:
@ -3985,7 +3985,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"Number of Views for MVC encoding",
1, MAX_NUM_VIEWS, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:view-ids:
@ -3999,7 +3999,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"view id values used for mvc encoding", 0, MAX_VIEW_ID, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS),
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:aud:
@ -4025,8 +4025,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
" compliance restrictions",
gst_vaapi_encoder_h264_compliance_mode_type (),
GST_VAAPI_ENCODER_H264_COMPLIANCE_MODE_STRICT,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
G_PARAM_READWRITE | G_PARAM_CONSTRUCT | GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:quality_factor:
@ -4040,7 +4039,7 @@ gst_vaapi_encoder_h264_class_init (GstVaapiEncoderH264Class * klass)
"(low value means higher-quality, higher value means lower-quality)",
1, 51, 26,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_H264_N_PROPERTIES,
properties);

View file

@ -3950,7 +3950,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
fei_encoder_class_data.rate_control_get_type (),
fei_encoder_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:tune:
@ -3964,7 +3964,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
fei_encoder_class_data.encoder_tune_get_type (),
fei_encoder_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:max-bframes:
@ -3975,7 +3975,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
g_param_spec_uint ("max-bframes",
"Max B-Frames", "Number of B-frames between I and P", 0, 10, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:init-qp:
@ -3986,7 +3986,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
g_param_spec_uint ("init-qp",
"Initial QP", "Initial quantizer value", 0, 51, 26,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:min-qp:
@ -3997,7 +3997,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
g_param_spec_uint ("min-qp",
"Minimum QP", "Minimum quantizer value", 0, 51, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:max-qp:
@ -4010,7 +4010,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
g_param_spec_uint ("max-qp",
"Maximum QP", "Maximum quantizer value", 0, 51, 51,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:num-slices:
@ -4023,7 +4023,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Number of slices per frame",
1, 200, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:cabac:
@ -4037,7 +4037,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Enable CABAC",
"Enable CABAC entropy coding mode",
TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:dct8x8:
@ -4051,7 +4051,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Enable 8x8 DCT",
"Enable adaptive use of 8x8 transforms in I-frames",
TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:cpb-length:
@ -4063,7 +4063,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"CPB Length", "Length of the CPB buffer in milliseconds",
1, 10000, DEFAULT_CPB_LENGTH,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:num-views:
@ -4076,7 +4076,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Number of Views for MVC encoding",
1, MAX_NUM_VIEWS, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei:view-ids:
*
@ -4089,7 +4089,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"view id values used for mvc encoding", 0, MAX_VIEW_ID, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS),
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264: disable-fei:
@ -4105,7 +4105,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Disable FEI Mode Encode",
"Disable Flexible Encoding Infrasturcture", FALSE,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
@ -4122,7 +4122,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"stats out",
"Enable stats out for fei",
TRUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:num_mv_predictors_l0:
@ -4135,7 +4135,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Indicate how many predictors should be used for l0,"
"only valid if MVPredictor input enabled",
0, 3, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:num_mv_predictors_l1:
* Indicate how many mv predictors should be used for l1 frames.
@ -4148,7 +4148,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Indicate how many predictors should be used for l1,"
"only valid if MVPredictor input enabled",
0, 3, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:search-window:
* Use predefined Search Window
@ -4160,7 +4160,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
GST_VAAPI_TYPE_FEI_H264_SEARCH_WINDOW,
GST_VAAPI_FEI_H264_SEARCH_WINDOW_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:len-sp:
@ -4172,7 +4172,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"This value defines number of search units in search path",
1, 63, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:search-path:
@ -4186,7 +4186,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
GST_VAAPI_TYPE_FEI_H264_SEARCH_PATH,
GST_VAAPI_FEI_H264_SEARCH_PATH_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:ref-width:
@ -4198,7 +4198,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Width of search region in pixel, must be multiple of 4",
4, 64, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:ref-height:
@ -4210,7 +4210,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Height of search region in pixel, must be multiple of 4",
4, 32, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:submb-mask:
* Defines the bit-mask for disabling sub-partition
@ -4223,7 +4223,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
GST_VAAPI_TYPE_FEI_H264_SUB_MB_PART_MASK,
GST_VAAPI_FEI_H264_SUB_MB_PART_MASK_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:subpel-mode:
@ -4239,7 +4239,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
GST_VAAPI_TYPE_FEI_H264_SUB_PEL_MODE,
GST_VAAPI_FEI_H264_SUB_PEL_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:intrapart-mask:
* Specifies which Luma Intra partition is enabled/disabled
@ -4253,7 +4253,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
GST_VAAPI_TYPE_FEI_H264_INTRA_PART_MASK,
GST_VAAPI_FEI_H264_INTRA_PART_MASK_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:intra-sad:
@ -4267,7 +4267,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"in the motion search SAD comparison for intra MB",
GST_VAAPI_TYPE_FEI_H264_SAD_MODE, GST_VAAPI_FEI_H264_SAD_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:inter-sad:
@ -4281,7 +4281,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"in the motion search SAD comparison for inter MB",
GST_VAAPI_TYPE_FEI_H264_SAD_MODE, GST_VAAPI_FEI_H264_SAD_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:adaptive-search:
@ -4292,7 +4292,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"adaptive-search",
"Enable adaptive search",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:multi-predL0:
* When set to 1, neighbor MV will be used as predictor for list L0,
@ -4304,7 +4304,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Enable multi prediction for ref L0 list, when set neighbor MV will be used"
"as predictor, no neighbor MV will be used otherwise",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264:multi-predL1:
@ -4317,7 +4317,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Enable multi prediction for ref L1 list, when set neighbor MV will be used"
"as predictor, no neighbor MV will be used otherwise",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH264Fei: fei-mode:
@ -4337,7 +4337,7 @@ gst_vaapi_encoder_h264_fei_class_init (GstVaapiEncoderH264FeiClass * klass)
"Functional mode of FEI Encoding",
GST_VAAPI_TYPE_FEI_MODE, GST_VAAPI_FEI_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class,
ENCODER_H264_FEI_N_PROPERTIES, properties);

View file

@ -2845,7 +2845,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:tune:
@ -2859,7 +2859,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:max-bframes:
@ -2870,7 +2870,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_param_spec_uint ("max-bframes",
"Max B-Frames", "Number of B-frames between I and P", 0, 10, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:refs:
@ -2882,7 +2882,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_param_spec_uint ("refs",
"Number of Reference Frames", "Number of reference frames", 1, 3, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:init-qp:
@ -2893,7 +2893,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_param_spec_uint ("init-qp",
"Initial QP", "Initial quantizer value", 0, 51, 26,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:min-qp:
@ -2904,7 +2904,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_param_spec_uint ("min-qp",
"Minimum QP", "Minimum quantizer value", 0, 51, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:max-qp:
@ -2917,7 +2917,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
g_param_spec_uint ("max-qp",
"Maximum QP", "Maximum quantizer value", 0, 51, 51,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:qp-ip:
@ -2931,7 +2931,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"Difference of QP between I and P frame (available only on CQP)",
-51, 51, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:qp-ib:
@ -2945,7 +2945,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"Difference of QP between I and B frame (available only on CQP)",
-51, 51, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/* FIXME: there seems to be issues with multi-slice encoding */
/**
@ -2959,7 +2959,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"Number of slices per frame",
1, 200, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:cpb-length:
@ -2971,7 +2971,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"CPB Length", "Length of the CPB buffer in milliseconds",
1, 10000, DEFAULT_CPB_LENGTH,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:mbbrc:
@ -2985,7 +2985,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"Macroblock level Bitrate Control",
GST_VAAPI_TYPE_ENCODER_MBBRC, GST_VAAPI_ENCODER_MBBRC_AUTO,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderH265:low_delay_b:
@ -2998,7 +2998,7 @@ gst_vaapi_encoder_h265_class_init (GstVaapiEncoderH265Class * klass)
"Transforms P frames into predictive B frames."
" Enable it when P frames are not supported.",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_H265_N_PROPERTIES,
properties);

View file

@ -853,7 +853,7 @@ gst_vaapi_encoder_jpeg_class_init (GstVaapiEncoderJpegClass * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_JPEG_PROP_TUNE] =
g_param_spec_enum ("tune",
@ -862,14 +862,14 @@ gst_vaapi_encoder_jpeg_class_init (GstVaapiEncoderJpegClass * klass)
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_JPEG_PROP_QUALITY] =
g_param_spec_uint ("quality",
"Quality factor",
"Quality factor", 0, 100, 50,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_JPEG_N_PROPERTIES,
properties);

View file

@ -888,7 +888,7 @@ gst_vaapi_encoder_mpeg2_class_init (GstVaapiEncoderMpeg2Class * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderMpeg2:tune:
@ -902,20 +902,20 @@ gst_vaapi_encoder_mpeg2_class_init (GstVaapiEncoderMpeg2Class * klass)
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_MPEG2_PROP_QUANTIZER] =
g_param_spec_uint ("quantizer",
"Constant Quantizer",
"Constant quantizer (if rate-control mode is CQP)",
2, 62, 8, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_MPEG2_PROP_MAX_BFRAMES] =
g_param_spec_uint ("max-bframes", "Max B-Frames",
"Number of B-frames between I and P", 0, 16, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_MPEG2_N_PROPERTIES,
properties);

View file

@ -643,28 +643,28 @@ gst_vaapi_encoder_vp8_class_init (GstVaapiEncoderVP8Class * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP8_PROP_TUNE] =
g_param_spec_enum ("tune", "Encoder Tuning", "Encoder tuning option",
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP8_PROP_LOOP_FILTER_LEVEL] =
g_param_spec_uint ("loop-filter-level", "Loop Filter Level",
"Controls the deblocking filter strength", 0, 63,
DEFAULT_LOOP_FILTER_LEVEL,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP8_PROP_SHARPNESS_LEVEL] =
g_param_spec_uint ("sharpness-level", "Sharpness Level",
"Controls the deblocking filter sensitivity", 0, 7,
DEFAULT_SHARPNESS_LEVEL,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP8_PROP_YAC_Q_INDEX] =
g_param_spec_uint ("yac-qi",
@ -674,7 +674,7 @@ gst_vaapi_encoder_vp8_class_init (GstVaapiEncoderVP8Class * klass)
" for P frames)",
0, 127, DEFAULT_YAC_QI,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_VP8_N_PROPERTIES,
properties);

View file

@ -679,7 +679,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
g_class_data.rate_control_get_type (),
g_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP9_PROP_TUNE] =
g_param_spec_enum ("tune",
@ -688,7 +688,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
g_class_data.encoder_tune_get_type (),
g_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP9_PROP_LOOP_FILTER_LEVEL] =
g_param_spec_uint ("loop-filter-level",
@ -696,7 +696,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
"Controls the deblocking filter strength",
0, 63, DEFAULT_LOOP_FILTER_LEVEL,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP9_PROP_SHARPNESS_LEVEL] =
g_param_spec_uint ("sharpness-level",
@ -704,7 +704,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
"Controls the deblocking filter sensitivity",
0, 7, DEFAULT_SHARPNESS_LEVEL,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP9_PROP_YAC_Q_INDEX] =
g_param_spec_uint ("yac-qi",
@ -712,7 +712,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
"Quantization Table index for Luma AC Coefficients",
0, 255, DEFAULT_YAC_QINDEX,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
properties[ENCODER_VP9_PROP_REF_PIC_MODE] =
g_param_spec_enum ("ref-pic-mode",
@ -721,7 +721,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
gst_vaapi_encoder_vp9_ref_pic_mode_type (),
GST_VAAPI_ENCODER_VP9_REF_PIC_MODE_0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiEncoderVP9:cpb-length:
@ -735,7 +735,7 @@ gst_vaapi_encoder_vp9_class_init (GstVaapiEncoderVP9Class * klass)
"CPB Length", "Length of the CPB_buffer/window_size in milliseconds",
1, 10000, DEFAULT_CPB_LENGTH,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, ENCODER_VP9_N_PROPERTIES,
properties);

View file

@ -2051,7 +2051,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
fei_enc_class_data.rate_control_get_type (),
fei_enc_class_data.default_rate_control,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:tune:
@ -2065,7 +2065,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
fei_enc_class_data.encoder_tune_get_type (),
fei_enc_class_data.default_encoder_tune,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:max-bframes:
@ -2076,7 +2076,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
g_param_spec_uint ("max-bframes",
"Max B-Frames", "Number of B-frames between I and P", 0, 10, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:init-qp:
@ -2087,7 +2087,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
g_param_spec_uint ("init-qp",
"Initial QP", "Initial quantizer value", 1, 51, 26,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:min-qp:
@ -2098,7 +2098,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
g_param_spec_uint ("min-qp",
"Minimum QP", "Minimum quantizer value", 1, 51, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:num-slices:
@ -2111,7 +2111,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Number of slices per frame",
1, 200, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:cabac:
@ -2125,7 +2125,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Enable CABAC",
"Enable CABAC entropy coding mode",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:dct8x8:
@ -2139,7 +2139,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Enable 8x8 DCT",
"Enable adaptive use of 8x8 transforms in I-frames",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:cpb-length:
@ -2151,7 +2151,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"CPB Length", "Length of the CPB buffer in milliseconds",
1, 10000, DEFAULT_CPB_LENGTH,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:num-views:
@ -2164,7 +2164,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Number of Views for MVC encoding",
1, MAX_NUM_VIEWS, 1,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:view-ids:
*
@ -2177,7 +2177,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"view id values used for mvc encoding", 0, MAX_VIEW_ID, 0,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS),
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:num-ref:
*
@ -2188,7 +2188,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Num Ref",
"reference frame number",
1, 6, 1, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:num_mv_predictors_l0:
@ -2200,7 +2200,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Num mv predict l0",
"Indicate how many predictors should be used for l0",
0, 3, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:num_mv_predictors_l1:
*
@ -2211,7 +2211,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Num mv predict l1",
"Indicate how many predictors should be used for l1",
0, 3, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:search-window:
*/
@ -2222,7 +2222,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
GST_VAAPI_TYPE_FEI_H264_SEARCH_WINDOW,
GST_VAAPI_FEI_H264_SEARCH_WINDOW_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:len-sp:
*/
@ -2232,7 +2232,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"This value defines number of search units in search path",
1, 63, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:search-path:
@ -2244,7 +2244,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
GST_VAAPI_TYPE_FEI_H264_SEARCH_PATH,
GST_VAAPI_FEI_H264_SEARCH_PATH_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:ref-width:
@ -2255,7 +2255,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Width of search region in pixel, must be multiple of 4",
4, 64, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:ref-height:
@ -2266,7 +2266,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Height of search region in pixel, must be multiple of 4",
4, 32, 32,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:submb-mask:
* Defines the bit-mask for disabling sub-partition
@ -2279,7 +2279,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
GST_VAAPI_TYPE_FEI_H264_SUB_MB_PART_MASK,
GST_VAAPI_FEI_H264_SUB_MB_PART_MASK_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:subpel-mode:
@ -2291,7 +2291,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
GST_VAAPI_TYPE_FEI_H264_SUB_PEL_MODE,
GST_VAAPI_FEI_H264_SUB_PEL_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:intrapart-mask:
*/
@ -2302,7 +2302,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
GST_VAAPI_TYPE_FEI_H264_INTRA_PART_MASK,
GST_VAAPI_FEI_H264_INTRA_PART_MASK_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:intra-sad:
*/
@ -2312,7 +2312,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Specifies distortion measure adjustments used in the motion search SAD comparison for intra MB",
GST_VAAPI_TYPE_FEI_H264_SAD_MODE, GST_VAAPI_FEI_H264_SAD_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:inter-sad:
@ -2323,7 +2323,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"Specifies distortion measure adjustments used in the motion search SAD comparison for inter MB",
GST_VAAPI_TYPE_FEI_H264_SAD_MODE, GST_VAAPI_FEI_H264_SAD_MODE_DEFAULT,
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:adaptive-search:
@ -2333,7 +2333,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"adaptive-search",
"Enable adaptive search",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:multi-predL0:
@ -2343,7 +2343,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"multi predL0",
"Enable multi prediction for ref L0 list",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
/**
* GstVaapiFeiEncH264:multi-predL0:
@ -2353,7 +2353,7 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass)
"multi predL1",
"Enable multi prediction for ref L1 list",
FALSE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT |
G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE);
GST_VAAPI_PARAM_ENCODER_EXPOSURE);
g_object_class_install_properties (object_class, FEI_H264_ENC_N_PROPERTIES,
properties);

View file

@ -1021,7 +1021,7 @@ gst_vaapiencode_class_install_properties (GstVaapiEncodeClass * klass,
pspec = specs[i];
/* Encoder do not want to expose */
if (!(pspec->flags & G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE))
if (!(pspec->flags & GST_VAAPI_PARAM_ENCODER_EXPOSURE))
continue;
/* Can only set on encoder init time */
if (pspec->flags & G_PARAM_CONSTRUCT_ONLY)
@ -1029,8 +1029,8 @@ gst_vaapiencode_class_install_properties (GstVaapiEncodeClass * klass,
/* filter out the G_PARAM_CONSTRUCT, the encoder created later, no need
to set the init value in encode.
Also no G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE */
flags = pspec->flags & (~(G_PARAM_FLAG_VAAPI_ENCODER_EXPOSURE |
Also no GST_VAAPI_PARAM_ENCODER_EXPOSURE */
flags = pspec->flags & (~(GST_VAAPI_PARAM_ENCODER_EXPOSURE |
G_PARAM_CONSTRUCT));
if (G_PARAM_SPEC_TYPE (pspec) == G_TYPE_PARAM_UINT) {