Утечка памяти FFmpeg в фрагментированном MP4

При использовании консоли FFmpeg для сохранения потока RTSP в фрагментированный файл MP4 я заметил небольшую утечку памяти. Утечка составляет около 3-4 МБ в час (когда каждый кадр представляет собой фрагмент и 30 кадров в секунду).

Была использована следующая команда:

ffmpeg.exe -i rtsp://10.50.1.16/media/video3 -vcodec copy -an -f mp4 -frag_duration 1000 -movflags empty_moov+default_base_moof+omit_tfhd_offset -loglevel quiet "c:\MemoryLeakTest.mp4"

Вы можете увидеть здесь набор Perfmon более 5 дней

Эта утечка кажется линейной во времени и связана с количеством фрагментов, записанных в файл.

Это было также воспроизводимо также с библиотеками FFmpeg.

Кто-нибудь сталкивался с чем-то подобным?

2 ответа

Укажите skip_trailer movflag. Смотрите следующий патч. https://patchwork.libav.org/patch/61014/

Чтобы обнаружить утечки памяти, вы можете скомпилировать FFmpeg из источников с символами отладки, а затем начать с некоторой отладки памяти, инструмента обнаружения утечки памяти. Например, взгляните на Valgrind

Другие вопросы по тегам