• Anton Khirnov's avatar
    lavf: allow custom IO for all files · 9f61abc8
    Anton Khirnov authored
    Some (de)muxers open additional files beyond the main IO context.
    Currently, they call avio_open() directly, which prevents the caller
    from using custom IO for such streams.
    
    This commit adds callbacks to AVFormatContext that default to
    avio_open2()/avio_close(), but can be overridden by the caller. All
    muxers and demuxers using AVIO are switched to using those callbacks
    instead of calling avio_open()/avio_close() directly.
    
    (de)muxers that use the URLProtocol layer directly instead of AVIO
    remain unconverted for now. This should be fixed in later commits.
    9f61abc8
APIchanges 67.2 KB