[FFmpeg-trac] #1244(avformat:open): ogg: vorbis_header() leaks memory allocated for packets in private data.

FFmpeg trac at avcodec.org
Mon Jan 7 23:42:44 CET 2013


#1244: ogg: vorbis_header() leaks memory allocated for packets in private data.
------------------------------------+------------------------------------
             Reporter:  dalecurtis  |                    Owner:
                 Type:  defect      |                   Status:  open
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:  ogg leak    |               Blocked By:
             Blocking:              |  Reproduced by developer:  1
Analyzed by developer:  0           |
------------------------------------+------------------------------------

Comment (by cehoyos):

 The leak has changed:
 {{{
 $ valgrind --leak-check=full ffmpeg_g -i wav.711.ogv -f null -
 ==19501== Memcheck, a memory error detector
 ==19501== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
 ==19501== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright
 info
 ==19501== Command: ffmpeg_g -i wav.711.ogv -f null -
 ==19501==
 ffmpeg version N-48607-gdbf0a90 Copyright (c) 2000-2013 the FFmpeg
 developers
   built on Jan  7 2013 23:18:39 with gcc 4.7 (SUSE Linux)
   configuration: --enable-gpl --disable-indev=jack
   libavutil      52. 13.100 / 52. 13.100
   libavcodec     54. 86.100 / 54. 86.100
   libavformat    54. 59.106 / 54. 59.106
   libavdevice    54.  3.102 / 54.  3.102
   libavfilter     3. 32.100 /  3. 32.100
   libswscale      2.  1.103 /  2.  1.103
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  2.100 / 52.  2.100
 [ogg @ 0x66c6c20] Multiple fisbone for the same stream is not implemented.
 Update your FFmpeg version to the newest one from Git. If the problem
 still occurs, it means that your file has a feature which has not been
 implemented.
 [ogg @ 0x66c6c20] Header parsing failed for stream 0
 [ogg @ 0x66c6c20] Header parsing failed for stream 1
 [ogg @ 0x66c6c20] Number of headers (1) mismatch for stream 2
 [vorbis @ 0x671adc0] Extradata missing.
     Last message repeated 1 times
 [ogg @ 0x66c6c20] Could not find codec parameters for stream 1 (Unknown:
 none): unknown codec
 Consider increasing the value for the 'analyzeduration' and 'probesize'
 options
 Guessed Channel Layout for  Input Stream #0.2 : mono
 Input #0, ogg, from 'wav.711.ogv':
   Duration: 00:00:00.09, start: 0.000000, bitrate: 603 kb/s
     Stream #0:0: Data: none
     Stream #0:1: Unknown: none
     Stream #0:2: Audio: vorbis, 8000 Hz, mono, fltp, 16 kb/s
 [vorbis @ 0x671adc0] Extradata missing.
 Output #0, null, to 'pipe:':
     Stream #0:0: Audio: pcm_s16le, 8000 Hz, mono, s16, 128 kb/s
 Stream mapping:
   Stream #0:2 -> #0:0 (vorbis -> pcm_s16le)
 Error while opening decoder for input stream #0:2
 ==19501==
 ==19501== HEAP SUMMARY:
 ==19501==     in use at exit: 592 bytes in 2 blocks
 ==19501==   total heap usage: 396 allocs, 394 frees, 941,113 bytes
 allocated
 ==19501==
 ==19501== 72 bytes in 1 blocks are definitely lost in loss record 1 of 2
 ==19501==    at 0x4C290FE: memalign (in /usr/lib64/valgrind
 /vgpreload_memcheck-amd64-linux.so)
 ==19501==    by 0x4C291A7: posix_memalign (in /usr/lib64/valgrind
 /vgpreload_memcheck-amd64-linux.so)
 ==19501==    by 0xBBB4E1: av_mallocz (mem.c:92)
 ==19501==    by 0x9A361C: avcodec_open2 (utils.c:813)
 ==19501==    by 0x463960: transcode_init (ffmpeg.c:2300)
 ==19501==    by 0x4516C5: main (ffmpeg.c:3005)
 ==19501==
 ==19501== 520 bytes in 1 blocks are definitely lost in loss record 2 of 2
 ==19501==    at 0x4C290FE: memalign (in /usr/lib64/valgrind
 /vgpreload_memcheck-amd64-linux.so)
 ==19501==    by 0x4C291A7: posix_memalign (in /usr/lib64/valgrind
 /vgpreload_memcheck-amd64-linux.so)
 ==19501==    by 0xBBB369: av_malloc (mem.c:92)
 ==19501==    by 0x99EFBD: avcodec_alloc_frame (utils.c:692)
 ==19501==    by 0x42AA45: pcm_encode_init (pcm.c:51)
 ==19501==    by 0x9A3EB5: avcodec_open2 (utils.c:1030)
 ==19501==    by 0x463960: transcode_init (ffmpeg.c:2300)
 ==19501==    by 0x4516C5: main (ffmpeg.c:3005)
 ==19501==
 ==19501== LEAK SUMMARY:
 ==19501==    definitely lost: 592 bytes in 2 blocks
 ==19501==    indirectly lost: 0 bytes in 0 blocks
 ==19501==      possibly lost: 0 bytes in 0 blocks
 ==19501==    still reachable: 0 bytes in 0 blocks
 ==19501==         suppressed: 0 bytes in 0 blocks
 ==19501==
 ==19501== For counts of detected and suppressed errors, rerun with: -v
 ==19501== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 2 from 2)
 }}}

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1244#comment:2>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list