[FFmpeg-devel] [PATCH] avcodec/qsv: export session management functionality

Hendrik Leppkes h.leppkes at gmail.com
Wed Apr 13 10:16:47 CEST 2016


On Thu, Apr 7, 2016 at 5:44 PM, nablet developer <sdk at nablet.com> wrote:
>
> +/**
> + * Initialize a MSDK session
> + *
> + * Media SDK is based on sessions, so this is the prerequisite
> + * initialization for HW acceleration.  For Windows the session is
> + * complete and ready to use, for Linux a display handle is
> + * required.  For releases of Media Server Studio >= 2015 R4 the
> + * render nodes interface is preferred (/dev/dri/renderD).
> + * Using Media Server Studio 2015 R4 or newer is recommended
> + * but the older /dev/dri/card interface is also searched
> + * for broader compatibility.
> + *
> + * @param avccl pointer to AVClass, uses for logging
> + * @param qs    the MSDK session used
> + * @param load_plugins  list of hexadecimal plug-in UIDs delimeted by colons.
> + */
> +int av_qsv_init_session(AVClass *avccl, AVQSVSession *qs,
> +                        const char *load_plugins);

This looks wrong, we don't pass pointers to an AVClass around. The
logging functions want a pointer to a pointer to a AVClass either way
(ie. a AVClass pointer embedded in another struct)
If you want to pass a generic logging context, make it accept a void*,
not AVClass.

The same for all other methods where this applies.


More information about the ffmpeg-devel mailing list