5e768990f2
avformat_free_context() only frees the memory used by an AVFormatContext but it does not close the opened media file. This causes a leaked file descriptor every time a media source frees a demuxer. Using avformat_close_input() instead frees the context and closes the media file.