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.
Showing the changes to doc/APIchanges (1 of 15 files). Show all
Unified · Split
| @@ -13,6 +13,10 @@ libavutil: 2015-08-28 · 12 unmodified lines | |||
| 13 | 13 | ||
| 14 | API changes, most recent first: | 14 | API changes, most recent first: |
| 15 | 15 | ||
| 16 | 2016-xx-xx - xxxxxxx - lavf 57.3.0 - avformat.h | ||
| 17 | Add AVFormatContext.opaque, io_open and io_close, allowing custom IO | ||
| 18 | for muxers and demuxers that open additional files. | ||
| 19 | |||
| 16 | 2015-xx-xx - xxxxxxx - lavc 57.12.0 - avcodec.h | 20 | 2015-xx-xx - xxxxxxx - lavc 57.12.0 - avcodec.h |
| 17 | Add AVCodecDescriptor.profiles and avcodec_profile_name(). | 21 | Add AVCodecDescriptor.profiles and avcodec_profile_name(). |
| 18 | 22 | ||