[gst-cvs] gst-ffmpeg: ffenc: Implement preset interface

Stefan Kost ensonic at hora-obscura.de
Mon May 4 07:27:03 PDT 2009


Sebastian DrXXge schrieb:
> Module: gst-ffmpeg
> Branch: master
> Commit: c2a9ee92643f80685dbdacaa8e3ff38bfac9ce3c
> URL:    http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?id=c2a9ee92643f80685dbdacaa8e3ff38bfac9ce3c
>
> Author: Sebastian Dröge <sebastian.droege at collabora.co.uk>
> Date:   Mon May  4 13:00:49 2009 +0200
>
> ffenc: Implement preset interface
>
> ---
>
>  ext/ffmpeg/gstffmpegenc.c |    9 +++++++++
>  1 files changed, 9 insertions(+), 0 deletions(-)
>
> diff --git a/ext/ffmpeg/gstffmpegenc.c b/ext/ffmpeg/gstffmpegenc.c
> index fac321d..b46d806 100644
> --- a/ext/ffmpeg/gstffmpegenc.c
> +++ b/ext/ffmpeg/gstffmpegenc.c
> @@ -1115,6 +1115,15 @@ gst_ffmpegenc_register (GstPlugin * plugin)
>      type = g_type_register_static (GST_TYPE_ELEMENT, type_name, &typeinfo, 0);
>      g_type_set_qdata (type, GST_FFENC_PARAMS_QDATA, (gpointer) params);
>  
> +    {
> +      static const GInterfaceInfo preset_info = {
> +        NULL,
> +        NULL,
> +        NULL
> +      };
> +      g_type_add_interface_static (type, GST_TYPE_PRESET, &preset_info);
> +    }
> +
>      if (!gst_element_register (plugin, type_name, GST_RANK_NONE, type)) {
>        g_free (type_name);
>        return FALSE;
>
>   
Its not meant to be used like this all over the place. In the case of
ffmpeg I'd say it should override most methods and load the ffmpeg
presets (gst-ffmpeg/gst-libs/ext/ffmpeg/ffpresets/). No idea how
feasible it is though. In the repo I only see them for x264enc and we
have our own x264enc.

Stefan




More information about the Gstreamer-commits mailing list