[FFmpeg-trac] #1889(undetermined:open): wavpack: huge memory allocation with prepared file

FFmpeg trac at avcodec.org
Tue Nov 6 08:52:12 CET 2012


#1889: wavpack: huge memory allocation with prepared file
-------------------------------------+-------------------------------------
             Reporter:  ami_stuff    |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  normal       |                Component:
              Version:  git-master   |  undetermined
             Keywords:               |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  1
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * status:  new => open
 * version:  unspecified => git-master
 * reproduced:  0 => 1


Comment:

 Does not crash if I limit the thread's memory.
 {{{
 $ valgrind ./ffmpeg_g -i mem.mkv -f null -
 ==26374== Memcheck, a memory error detector
 ==26374== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
 ==26374== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright
 info
 ==26374== Command: ./ffmpeg_g -i mem.mkv -f null -
 ==26374==
 ffmpeg version N-46479-g6a30233 Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Nov  6 2012 08:41:39 with gcc 4.7 (SUSE Linux)
   configuration: --disable-indev=jack
   libavutil      52.  5.100 / 52.  5.100
   libavcodec     54. 71.100 / 54. 71.100
   libavformat    54. 36.100 / 54. 36.100
   libavdevice    54.  3.100 / 54.  3.100
   libavfilter     3. 21.106 /  3. 21.106
   libswscale      2.  1.102 /  2.  1.102
   libswresample   0. 16.100 /  0. 16.100
 [matroska,webm @ 0x66b2c80] Estimating duration from bitrate, this may be
 inaccurate
 Input #0, matroska,webm, from 'mem.mkv':
   Metadata:
     ENCODER         : Lavf54.35.100
   Duration: N/A, start: 0.000000, bitrate: N/A
     Stream #0:0: Audio: wavpack, 16000 Hz, mono, s16 (default)
 Output #0, null, to 'pipe:':
   Metadata:
     encoder         : Lavf54.36.100
     Stream #0:0: Audio: pcm_s16le, 16000 Hz, mono, s16, 256 kb/s (default)
 Stream mapping:
   Stream #0:0 -> #0:0 (wavpack -> pcm_s16le)
 Press [q] to stop, [?] for help
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 ==26374== Warning: set address range perms: large range [0x3943e080,
 0xa4d6f800) (undefined)
 [wavpack @ 0x66ca8e0] Block size 4895972 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 ==26374== Warning: set address range perms: large range [0x3943e070,
 0xa4d6f810) (noaccess)
 ==26374== Warning: set address range perms: large range [0xa4d70080,
 0x116938600) (undefined)
 [wavpack @ 0x66ca8e0] Block size 18151338 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 size=       0kB time=00:00:00.00 bitrate=   0.0kbits/s
 Invalid number of samples: -1955236267
 Error while decoding stream #0:0: Invalid argument
 size=       0kB time=00:00:00.00 bitrate=   0.0kbits/s
 get_buffer() failed
 [wavpack @ 0x66ca8e0] Invalid number of samples: -521203691
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Block size 5262283 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1658698091
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1159073963
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1414440939
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1166962603
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1777631658
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1123563819
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1374157226
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -638010538
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 ==26374== Warning: set address range perms: large range [0xa4d70070,
 0x116938610) (noaccess)
 ==26374== Warning: set address range perms: large range [0x116939080,
 0x19344c380) (undefined)
 [wavpack @ 0x66ca8e0] Block size 13280210 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Invalid number of samples: -485775323
 Error while decoding stream #0:0: Invalid argument
 size=       0kB time=00:00:00.00 bitrate=   0.0kbits/s
 Invalid number of samples: -303249323
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1667421863
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Block size 12921938 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Block size 6845713 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1517418155
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1298639766
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1528407975
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1427934123
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1684967595
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Block size 28527950 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1257802907
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid FLOATINFO, size = 193
 [wavpack @ 0x66ca8e0] Block size 3964690 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Block size 3949190 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -1013899627
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Block size 23276196 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Block size 11227985 is out of bounds
 [wavpack @ 0x66ca8e0] No block with decorrelation terms
 Error while decoding stream #0:0: Operation not permitted
 [wavpack @ 0x66ca8e0] Invalid number of samples: -334279591
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -437179051
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] get_buffer() failed
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -829239467
 Error while decoding stream #0:0: Invalid argument
 [wavpack @ 0x66ca8e0] Invalid number of samples: -2040900715
 Error while decoding stream #0:0: Invalid argument
 size=       0kB time=00:00:00.00 bitrate=   0.0kbits/s    ^M
 video:0kB audio:0kB subtitle:0 global headers:0kB muxing overhead -nan%
 Output file is empty, nothing was encoded (check -ss / -t / -frames
 parameters if used)
 ==26374== Warning: set address range perms: large range [0x116939070,
 0x19344c390) (noaccess)
 ==26374==
 ==26374== HEAP SUMMARY:
 ==26374==     in use at exit: 0 bytes in 0 blocks
 ==26374==   total heap usage: 603 allocs, 603 frees, 5,805,718,221 bytes
 allocated
 ==26374==
 ==26374== All heap blocks were freed -- no leaks are possible
 ==26374==
 ==26374== For counts of detected and suppressed errors, rerun with: -v
 ==26374== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2)
 }}}

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


More information about the FFmpeg-trac mailing list