GNOME Bugzilla – Bug 681192
adpcmdec: decoding error with IMA WAV ADPCM in quicktime
Last modified: 2016-06-01 09:42:26 UTC
Hi, the following media: http://77.43.75.110/temp/2012_07_27_19_45_24_455_recovered.mov show this memleak: ==21871== 240 bytes in 12 blocks are definitely lost in loss record 2,600 of 2,764 ==21871== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==21871== by 0x5988A57: __vasprintf_chk (vasprintf_chk.c:82) ==21871== by 0x53F0DBA: g_vasprintf (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==21871== by 0x53D049C: g_strdup_vprintf (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==21871== by 0x4E74357: _gst_element_error_printf (gstelement.c:1895) ==21871== by 0xBA1B483: adpcmdec_handle_frame (adpcmdec.c:427) ==21871== by 0x9D4E2C4: gst_audio_decoder_push_buffers (gstaudiodecoder.c:1044) ==21871== by 0x9D4E71F: gst_audio_decoder_chain_forward (gstaudiodecoder.c:1146) ==21871== by 0x9D50DD7: gst_audio_decoder_chain (gstaudiodecoder.c:1394) ==21871== by 0x4E91B79: gst_pad_push (gstpad.c:4710) ==21871== by 0x8DEFB06: gst_queue_loop (gstqueue.c:1156) ==21871== by 0x4EB84EB: gst_task_func (gsttask.c:328) ==21871== by 0x53D8247: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==21871== by 0x53D79E4: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==21871== by 0x566AE99: start_thread (pthread_create.c:308) using this pipeline: gst-launch filesrc location=/tmp/2012_07_27_19_45_24_455_recovered.mov ! qtdemux name=demux demux. ! queue ! jpegdec ! xvimagesink demux. ! queue ! adpcmdec ! alsasink additionally adpcmdec fails to decode it while mplayer/ffmpeg can decode the media
Which version of mplayer/ffmpeg can decode this? For me neither mplayer nor vlc play this properly. VLC just plays the video without the sound, mplayer just stops with an error after a second (like GStreamer). Also, what created this file?
dpkg -l | grep mplayer ii mplayer 2:1.0~rc4.dfsg1+svn34540-1 movie player for Unix-like systems dpkg -l | grep ffmpeg ii ffmpeg 4:0.8.3-0ubuntu0.12.04.1 Multimedia player, server, encoder and transcoder (transitional package) both can play audio and video, the file was created with gstreamer 0.10, the recording was interrupted by a system reboot and the file recovered with qtmoovrecover
Leaks are fixed now: commit aa3ba65eb528a7f9a49eb48a2ff96fec29ad8c1c Author: Tim-Philipp Müller <tim.muller@collabora.co.uk> Date: Fri Oct 19 19:24:23 2012 +0100 qtdemux: don't leak gst_riff_strf_auds in case of MS/RIFF audio https://bugzilla.gnome.org/show_bug.cgi?id=681192 commit ccbb233da839215a6631297dd587a974d27581b8 Author: Tim-Philipp Müller <tim@centricular.net> Date: Sat Oct 20 11:38:55 2012 +0100 alsasink: fix caps leak in acceptcaps function https://bugzilla.gnome.org/show_bug.cgi?id=681192 commit 277ca049766bc19ea317acd3b9ae15db179b909b Author: Tim-Philipp Müller <tim@centricular.net> Date: Sat Oct 20 11:38:10 2012 +0100 audiodecoder: don't leak message strings when error is not fatal https://bugzilla.gnome.org/show_bug.cgi?id=681192
thanks, can these fix be applied to 0.10 too?
> thanks, can these fix be applied to 0.10 too? I have applied those to 0.10 now, but neither of those two fixes could just be cherry-picked, but required additional work. You will generally find that people are unwilling to do this additional work.
Created attachment 226889 [details] [review] patch for 0.10 other patches are not needed for 0.10, feel free to remove me as author
Created attachment 226894 [details] [review] same patch for videodecoder 0.10 as the previous patch, feel free to remove me as author
Comment on attachment 226889 [details] [review] patch for 0.10 I had already committed that, besides - you should have kept the original author (everything else just adds more work again..)
Nicola, do you have the file available again ? Is this still an issue with current gstreamer ?
the file is available here: http://195.250.34.59/temp/2012_07_27_19_45_24_455_recovered.mov still the same issue with 1.2 master (few days old)
Don't see any memory leaks here but it still fails to decode, yes.
Also fails with avdec_adpcm_ima_wav instead of adpcmdec, but plays with avplay.
Works with adpcmdec, issue with avdec_adpcm_ima_wav. *** This bug has been marked as a duplicate of bug 684684 ***