AVFormatContext.io_open

A callback for opening new IO streams.

Whenever a muxer or a demuxer needs to open an IO stream (typically from avformat_open_input() for demuxers, but for certain formats can happen at other times as well), it will call this callback to obtain an IO context.

@param s the format context @param pb on success, the newly opened IO context should be returned here @param url the url to open @param flags a combination of AVIO_FLAG_* @param options a dictionary of additional options, with the same semantics as in avio_open2() @return 0 on success, a negative AVERROR code on failure

@note Certain muxers and demuxers do nesting, i.e. they open one or more additional internal format contexts. Thus the AVFormatContext pointer passed to this callback may be different from the one facing the caller. It will, however, have the same 'opaque' field.

struct AVFormatContext
int function(AVFormatContext* s, AVIOContext** pb, const(char)* url, int flags, AVDictionary** options) io_open;

Meta