avcodec_open2

Initialize the AVCodecContext to use the given AVCodec. Prior to using this function the context has to be allocated with avcodec_alloc_context3().

The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(), avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for retrieving a codec.

@warning This function is not thread safe!

@note Always call this function before using decoding routines (such as @ref avcodec_decode_video2()).

@code avcodec_register_all(); av_dict_set(&opts, "b", "2.5M", 0); codec = avcodec_find_decoder(AV_CODEC_ID_H264); if (!codec) exit(1);

context = avcodec_alloc_context3(codec);

if (avcodec_open2(context, codec, opts) < 0) exit(1); @endcode

@param avctx The context to initialize. @param codec The codec to open this context for. If a non-NULL codec has been previously passed to avcodec_alloc_context3() or avcodec_get_context_defaults3() for this context, then this parameter MUST be either NULL or equal to the previously passed codec. @param options A dictionary filled with AVCodecContext and codec-private options. On return this object will be filled with options that were not found.

@return zero on success, a negative value on error @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(), av_dict_set(), av_opt_find().

@nogc nothrow extern (C)
int
avcodec_open2

Meta