[Libav-user] AVFormatContext.io_close callback never called in general use?

Jesse Auerbach JAuerbach at imax.com
Sat Sep 30 21:35:48 EEST 2023


I'm using AVFormatContext with custom io_open and io_close callback functions, and it appears that io_close() is never called in general use. avformat_open_input() calls init_input() which in general use calls io_open callback. However, avformat_close_input() frees the context and the avio, without calling the corresponding io_close. In fact, the only function that appears to call io_close is ff_format_io_close() which is entirely private to avformat library and can't be called publically. Moreover, ff_format_io_close() is only called by a few formats within the library - generally to free nested inputs or buffers they opened up themselves.

Is this an oversight/bug in AVFormat, or by design? If by design, then it seems like io_close should not be available to be set publically.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://ffmpeg.org/pipermail/libav-user/attachments/20230930/a7f57f57/attachment.htm>

More information about the Libav-user mailing list