static void gst_video_convert_class_init (GstVideoConvertClass * klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GstElementClass *gstelement_class = (GstElementClass *) klass; GstBaseTransformClass *gstbasetransform_class = (GstBaseTransformClass *) klass; GstVideoFilterClass *gstvideofilter_class = (GstVideoFilterClass *) klass; gobject_class->set_property = gst_video_convert_set_property; gobject_class->get_property = gst_video_convert_get_property; gobject_class->finalize = gst_video_convert_finalize; gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&gst_video_convert_src_template)); gst_element_class_add_pad_template (gstelement_class, gst_static_pad_template_get (&gst_video_convert_sink_template)); gst_element_class_set_static_metadata (gstelement_class, "Colorspace converter", "Filter/Converter/Video", "Converts video from one colorspace to another", "GStreamer maintainers <*****@*****.**>"); gstbasetransform_class->transform_caps = GST_DEBUG_FUNCPTR (gst_video_convert_transform_caps); gstbasetransform_class->fixate_caps = GST_DEBUG_FUNCPTR (gst_video_convert_fixate_caps); gstbasetransform_class->filter_meta = GST_DEBUG_FUNCPTR (gst_video_convert_filter_meta); gstbasetransform_class->transform_meta = GST_DEBUG_FUNCPTR (gst_video_convert_transform_meta); gstbasetransform_class->passthrough_on_same_caps = TRUE; gstvideofilter_class->set_info = GST_DEBUG_FUNCPTR (gst_video_convert_set_info); gstvideofilter_class->transform_frame = GST_DEBUG_FUNCPTR (gst_video_convert_transform_frame); g_object_class_install_property (gobject_class, PROP_DITHER, g_param_spec_enum ("dither", "Dither", "Apply dithering while converting", gst_video_dither_method_get_type (), DEFAULT_PROP_DITHER, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_DITHER_QUANTIZATION, g_param_spec_uint ("dither-quantization", "Dither Quantize", "Quantizer to use", 0, G_MAXUINT, DEFAULT_PROP_DITHER_QUANTIZATION, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); }
static void gst_video_convert_class_init (GstVideoConvertClass * klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GstElementClass *gstelement_class = (GstElementClass *) klass; GstBaseTransformClass *gstbasetransform_class = (GstBaseTransformClass *) klass; GstVideoFilterClass *gstvideofilter_class = (GstVideoFilterClass *) klass; gobject_class->set_property = gst_video_convert_set_property; gobject_class->get_property = gst_video_convert_get_property; gobject_class->finalize = gst_video_convert_finalize; gst_element_class_add_static_pad_template (gstelement_class, &gst_video_convert_src_template); gst_element_class_add_static_pad_template (gstelement_class, &gst_video_convert_sink_template); gst_element_class_set_static_metadata (gstelement_class, "Colorspace converter", "Filter/Converter/Video", "Converts video from one colorspace to another", "GStreamer maintainers <*****@*****.**>"); gstbasetransform_class->transform_caps = GST_DEBUG_FUNCPTR (gst_video_convert_transform_caps); gstbasetransform_class->fixate_caps = GST_DEBUG_FUNCPTR (gst_video_convert_fixate_caps); gstbasetransform_class->filter_meta = GST_DEBUG_FUNCPTR (gst_video_convert_filter_meta); gstbasetransform_class->transform_meta = GST_DEBUG_FUNCPTR (gst_video_convert_transform_meta); gstbasetransform_class->passthrough_on_same_caps = TRUE; gstvideofilter_class->set_info = GST_DEBUG_FUNCPTR (gst_video_convert_set_info); gstvideofilter_class->transform_frame = GST_DEBUG_FUNCPTR (gst_video_convert_transform_frame); g_object_class_install_property (gobject_class, PROP_DITHER, g_param_spec_enum ("dither", "Dither", "Apply dithering while converting", gst_video_dither_method_get_type (), DEFAULT_PROP_DITHER, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_DITHER_QUANTIZATION, g_param_spec_uint ("dither-quantization", "Dither Quantize", "Quantizer to use", 0, G_MAXUINT, DEFAULT_PROP_DITHER_QUANTIZATION, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_CHROMA_RESAMPLER, g_param_spec_enum ("chroma-resampler", "Chroma resampler", "Chroma resampler method", gst_video_resampler_method_get_type (), DEFAULT_PROP_CHROMA_RESAMPLER, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_ALPHA_MODE, g_param_spec_enum ("alpha-mode", "Alpha Mode", "Alpha Mode to use", gst_video_alpha_mode_get_type (), DEFAULT_PROP_ALPHA_MODE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_ALPHA_VALUE, g_param_spec_double ("alpha-value", "Alpha Value", "Alpha Value to use", 0.0, 1.0, DEFAULT_PROP_ALPHA_VALUE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_CHROMA_MODE, g_param_spec_enum ("chroma-mode", "Chroma Mode", "Chroma Resampling Mode", gst_video_chroma_mode_get_type (), DEFAULT_PROP_CHROMA_MODE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_MATRIX_MODE, g_param_spec_enum ("matrix-mode", "Matrix Mode", "Matrix Conversion Mode", gst_video_matrix_mode_get_type (), DEFAULT_PROP_MATRIX_MODE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_GAMMA_MODE, g_param_spec_enum ("gamma-mode", "Gamma Mode", "Gamma Conversion Mode", gst_video_gamma_mode_get_type (), DEFAULT_PROP_GAMMA_MODE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_PRIMARIES_MODE, g_param_spec_enum ("primaries-mode", "Primaries Mode", "Primaries Conversion Mode", gst_video_primaries_mode_get_type (), DEFAULT_PROP_PRIMARIES_MODE, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); g_object_class_install_property (gobject_class, PROP_N_THREADS, g_param_spec_uint ("n-threads", "Threads", "Maximum number of threads to use", 0, G_MAXUINT, DEFAULT_PROP_N_THREADS, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); }