GNOME Bugzilla – Bug 788708
h264parse memory leak
Last modified: 2017-10-09 16:24:00 UTC
valgrind output ==14216== 105,224 (3,808 direct, 101,416 indirect) bytes in 14 blocks are definitely lost in loss record 8,768 of 8,775 ==14216== at 0x4C2CE5F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==14216== by 0x58B42F9: g_malloc (in /usr/lib/libglib-2.0.so.0.5400.0) ==14216== by 0x5895706: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.5400.0) ==14216== by 0x52E82FA: gst_buffer_new (gstbuffer.c:798) ==14216== by 0x52E96A5: gst_buffer_new_allocate (gstbuffer.c:846) ==14216== by 0x14877D24: gst_h264_parse_wrap_nal (gsth264parse.c:430) ==14216== by 0x14879B1A: gst_h264_parse_process_nal (gsth264parse.c:896) ==14216== by 0x1487BBE0: gst_h264_parse_handle_frame_packetized (gsth264parse.c:995) ==14216== by 0x1487BBE0: gst_h264_parse_handle_frame (gsth264parse.c:1078) ==14216== by 0x505D6FF: gst_base_parse_handle_buffer (gstbaseparse.c:2147) ==14216== by 0x50634EA: gst_base_parse_chain (gstbaseparse.c:3229) ==14216== by 0x5320D6A: gst_pad_chain_data_unchecked (gstpad.c:4205) ==14216== by 0x5320D6A: gst_pad_push_data (gstpad.c:4461) ==14216== by 0x5328E52: gst_pad_push (gstpad.c:4580) ==14216== by 0x1322FC98: gst_rtp_base_depayload_push (gstrtpbasedepayload.c:788) ==14216== by 0x13230090: gst_rtp_base_depayload_handle_buffer.isra.4 (gstrtpbasedepayload.c:440) ==14216== by 0x5320D6A: gst_pad_chain_data_unchecked (gstpad.c:4205) ==14216== by 0x5320D6A: gst_pad_push_data (gstpad.c:4461) ==14216== by 0x5328E52: gst_pad_push (gstpad.c:4580) ==14216== by 0x1278DB08: gst_queue_push_one (gstqueue.c:1395) ==14216== by 0x1278DB08: gst_queue_loop (gstqueue.c:1548) ==14216== by 0x5354358: gst_task_func (gsttask.c:335) the pipeline is like this: rtspsrc ! rtph264depay ! h264parse ! matroskamux
this seems a false positive, sorry for the noise, when h264parse reachs that code it produces a buffer with an invalid timestamp, in my app I cannot accept such buffers and I forgot to unref in error case, maybe we could investigate why h264parse outputs buffers with invalid timestamps in some cases but this isn't a memory leak
Please open a new bug for the timestamp issue, ideally with a way to reproduce (I've heard of this before).