diff --git a/gst-libs/gst/vaapi/gstvaapifeienc_h264.c b/gst-libs/gst/vaapi/gstvaapifeienc_h264.c index ae6a15a8d0..88c10e25e4 100644 --- a/gst-libs/gst/vaapi/gstvaapifeienc_h264.c +++ b/gst-libs/gst/vaapi/gstvaapifeienc_h264.c @@ -1763,94 +1763,6 @@ get_view_ids (GstVaapiFeiEncH264 * const encoder, GValue * value) g_value_unset (&id); } -GstVaapiEncoderStatus -gst_vaapi_feienc_h264_set_property (GstVaapiEncoder * base_encoder, - gint prop_id, const GValue * value) -{ - GstVaapiFeiEncH264 *const feienc = GST_VAAPI_FEI_ENC_H264_CAST (base_encoder); - - switch (prop_id) { - case GST_VAAPI_FEI_H264_ENC_PROP_MAX_BFRAMES: - feienc->num_bframes = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_INIT_QP: - feienc->init_qp = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_MIN_QP: - feienc->min_qp = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_NUM_SLICES: - feienc->num_slices = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_CABAC: - feienc->use_cabac = g_value_get_boolean (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_DCT8X8: - feienc->use_dct8x8 = g_value_get_boolean (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_CPB_LENGTH: - feienc->cpb_length = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_NUM_VIEWS: - feienc->num_views = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_VIEW_IDS: - set_view_ids (feienc, value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_NUM_REF: - feienc->num_ref_frames = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_NUM_MV_PREDICT_L0: - feienc->num_mv_predictors_l0 = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_NUM_MV_PREDICT_L1: - feienc->num_mv_predictors_l1 = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_SEARCH_WINDOW: - feienc->search_window = g_value_get_enum (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_LEN_SP: - feienc->len_sp = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_SEARCH_PATH: - feienc->search_path = g_value_get_enum (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_REF_WIDTH: - feienc->ref_width = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_REF_HEIGHT: - feienc->ref_height = g_value_get_uint (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_SUBMB_MASK: - feienc->submb_part_mask = g_value_get_flags (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_SUBPEL_MODE: - feienc->subpel_mode = g_value_get_enum (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_INTRA_PART_MASK: - feienc->intra_part_mask = g_value_get_flags (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_INTRA_SAD: - feienc->intra_sad = g_value_get_enum (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_INTER_SAD: - feienc->inter_sad = g_value_get_enum (value); - break; - case GST_VAAPI_FEI_H264_ENC_PROP_ADAPT_SEARCH: - feienc->adaptive_search = g_value_get_boolean (value) ? 1 : 0; - break; - case GST_VAAPI_FEI_H264_ENC_PROP_MULTI_PRED_L0: - feienc->multi_predL0 = g_value_get_boolean (value) ? 1 : 0; - break; - case GST_VAAPI_FEI_H264_ENC_PROP_MULTI_PRED_L1: - feienc->multi_predL1 = g_value_get_boolean (value) ? 1 : 0; - break; - default: - return GST_VAAPI_ENCODER_STATUS_ERROR_INVALID_PARAMETER; - } - return GST_VAAPI_ENCODER_STATUS_SUCCESS; -} - /** * @FEI_H264_ENC_PROP_RATECONTROL: Rate control (#GstVaapiRateControl). * @FEI_H264_ENC_PROP_TUNE: The tuning options (#GstVaapiEncoderTune). @@ -1906,7 +1818,7 @@ enum static GParamSpec *properties[FEI_H264_ENC_N_PROPERTIES]; static void -_gst_vaapi_feienc_h264_set_property (GObject * object, guint prop_id, +gst_vaapi_feienc_h264_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec) { GstVaapiEncoder *const base_encoder = GST_VAAPI_ENCODER (object); @@ -2122,10 +2034,9 @@ gst_vaapi_feienc_h264_class_init (GstVaapiFeiEncH264Class * klass) encoder_class->reordering = gst_vaapi_feienc_h264_reordering; encoder_class->encode = gst_vaapi_feienc_h264_fake_encode; encoder_class->flush = gst_vaapi_feienc_h264_flush; - encoder_class->set_property = gst_vaapi_feienc_h264_set_property; encoder_class->get_codec_data = gst_vaapi_feienc_h264_get_codec_data; - object_class->set_property = _gst_vaapi_feienc_h264_set_property; + object_class->set_property = gst_vaapi_feienc_h264_set_property; object_class->get_property = gst_vaapi_feienc_h264_get_property; object_class->finalize = gst_vaapi_feienc_h264_finalize; diff --git a/gst-libs/gst/vaapi/gstvaapifeienc_h264.h b/gst-libs/gst/vaapi/gstvaapifeienc_h264.h index ffeab5d9a6..046056b70b 100644 --- a/gst-libs/gst/vaapi/gstvaapifeienc_h264.h +++ b/gst-libs/gst/vaapi/gstvaapifeienc_h264.h @@ -40,54 +40,6 @@ G_BEGIN_DECLS typedef struct _GstVaapiFeiEncH264 GstVaapiFeiEncH264; typedef struct _GstVaapiFeiEncH264Class GstVaapiFeiEncH264Class; -/** - * GstVaapiFeiEncH264Prop: - * @GST_VAAPI_FEI_H264_ENC_PROP_MAX_BFRAMES: Number of B-frames between I - * and P (uint). - * @GST_VAAPI_FEI_H264_ENC_PROP_INIT_QP: Initial quantizer value (uint). - * @GST_VAAPI_FEI_H264_ENC_PROP_MIN_QP: Minimal quantizer value (uint). - * @GST_VAAPI_FEI_H264_ENC_PROP_NUM_SLICES: Number of slices per frame (uint). - * @GST_VAAPI_FEI_H264_ENC_PROP_CABAC: Enable CABAC entropy coding mode (bool). - * @GST_VAAPI_FEI_H264_ENC_PROP_DCT8X8: Enable adaptive use of 8x8 - * transforms in I-frames (bool). - * @GST_VAAPI_FEI_H264_ENC_PROP_CPB_LENGTH: Length of the CPB buffer - * in milliseconds (uint). - * @GST_VAAPI_FEI_H264_ENC_PROP_NUM_VIEWS: Number of views per frame. - * @GST_VAAPI_FEI_H264_ENC_PROP_VIEW_IDS: View IDs - * - * The set of FEI Enc specific configurable properties. - */ -typedef enum -{ - GST_VAAPI_FEI_H264_ENC_PROP_MAX_BFRAMES = -1, - GST_VAAPI_FEI_H264_ENC_PROP_INIT_QP = -2, - GST_VAAPI_FEI_H264_ENC_PROP_MIN_QP = -3, - GST_VAAPI_FEI_H264_ENC_PROP_NUM_SLICES = -4, - GST_VAAPI_FEI_H264_ENC_PROP_CABAC = -5, - GST_VAAPI_FEI_H264_ENC_PROP_DCT8X8 = -6, - GST_VAAPI_FEI_H264_ENC_PROP_CPB_LENGTH = -7, - GST_VAAPI_FEI_H264_ENC_PROP_NUM_VIEWS = -8, - GST_VAAPI_FEI_H264_ENC_PROP_VIEW_IDS = -9, - GST_VAAPI_FEI_H264_ENC_PROP_NUM_REF = -10, - GST_VAAPI_FEI_H264_ENC_PROP_FEI_ENABLE = -11, - GST_VAAPI_FEI_H264_ENC_PROP_NUM_MV_PREDICT_L0 = -12, - GST_VAAPI_FEI_H264_ENC_PROP_NUM_MV_PREDICT_L1 = -13, - GST_VAAPI_FEI_H264_ENC_PROP_SEARCH_WINDOW = -14, - GST_VAAPI_FEI_H264_ENC_PROP_LEN_SP = -15, - GST_VAAPI_FEI_H264_ENC_PROP_SEARCH_PATH = -16, - GST_VAAPI_FEI_H264_ENC_PROP_REF_WIDTH = -17, - GST_VAAPI_FEI_H264_ENC_PROP_REF_HEIGHT = -18, - GST_VAAPI_FEI_H264_ENC_PROP_SUBMB_MASK = -19, - GST_VAAPI_FEI_H264_ENC_PROP_SUBPEL_MODE = -20, - GST_VAAPI_FEI_H264_ENC_PROP_INTRA_PART_MASK = -21, - GST_VAAPI_FEI_H264_ENC_PROP_INTRA_SAD = -22, - GST_VAAPI_FEI_H264_ENC_PROP_INTER_SAD = -23, - GST_VAAPI_FEI_H264_ENC_PROP_ADAPT_SEARCH = -24, - GST_VAAPI_FEI_H264_ENC_PROP_MULTI_PRED_L0 = -25, - GST_VAAPI_FEI_H264_ENC_PROP_MULTI_PRED_L1 = -26, - GST_VAAPI_FEI_H264_ENC_PROP_ENABLE_STATS_OUT = -27, -} GstVaapiFeiEncH264Prop; - GType gst_vaapi_feienc_h264_get_type (void) G_GNUC_CONST; @@ -116,10 +68,6 @@ gst_vaapi_feienc_h264_reordering (GstVaapiEncoder * base_encoder, GstVaapiEncoderStatus gst_vaapi_feienc_h264_reconfigure (GstVaapiEncoder * base_encoder); -GstVaapiEncoderStatus -gst_vaapi_feienc_h264_set_property (GstVaapiEncoder * base_encoder, - gint prop_id, const GValue * value); - gboolean gst_vaapi_feienc_h264_get_profile_and_idc (GstVaapiFeiEncH264 * feienc, GstVaapiProfile * out_profile_ptr, guint8 * out_profile_idc_ptr);