Bug#675584: /usr/bin/avconv: avconv segfaults when transcoding video with libx264 presets
Rogério Brito
rbrito at ime.usp.br
Sat Jun 2 10:25:31 UTC 2012
Package: libav-tools
Version: 6:0.8.2-2
Severity: important
File: /usr/bin/avconv
Hi.
I have just tried to transcode some lecture videos for watching on my ipod
and I can't get them working because avconv segfaults when I use this:
,----[ avconv -y -i in.mp4 -c:v libx264 -pre libx264-ipod320 -s 320x240 -b:v 768k -c:a copy out.mp4 ]
| avconv version 0.8.2-6:0.8.2-2, Copyright (c) 2000-2011 the Libav developers
| built on May 16 2012 21:00:23 with gcc 4.7.0
| Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mp4':
| Metadata:
| major_brand : isom
| minor_version : 512
| compatible_brands: isomiso2avc1mp41
| creation_time : 1970-01-01 00:00:00
| encoder : Lavf53.29.100
| Duration: 00:27:26.60, start: 0.000000, bitrate: 158 kb/s
| Stream #0.0(und): Video: h264 (High), yuv420p, 960x540 [PAR 1:1 DAR 16:9], 26 kb/s, 15 fps, 15 tbr, 15 tbn, 30 tbc
| Metadata:
| creation_time : 1970-01-01 00:00:00
| Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16, 127 kb/s
| Metadata:
| creation_time : 1970-01-01 00:00:00
| Segmentation fault
`----
If I remove the '-pre libx264-ipod320' part from the command line, then
avconv converts the video, but not with the parameters necessary for a low
powered device (i.e., Baseline Profile H.264).
I don't have here symbols for libav (which means that gdb doesn't generate
any useful traceback), but upon using strace on avconv, this is what I get:
,----
| (...)
| open("/home/rbrito/.avconv/libx264-libx264-ipod320.avpreset", O_RDONLY) = -1 ENOENT (No such file or directory)
| open("/home/rbrito/.avconv/libx264-ipod320.avpreset", O_RDONLY) = -1 ENOENT (No such file or directory)
| open("/usr/share/avconv/libx264-libx264-ipod320.avpreset", O_RDONLY) = -1 ENOENT (No such file or directory)
| open("/usr/share/avconv/libx264-ipod320.avpreset", O_RDONLY) = 6
| lseek(6, 0, SEEK_SET) = 0
| read(6, "profile=baseline\nlevel=13\nmaxrat"..., 32768) = 57
| read(6, "", 32711) = 0
| close(6) = 0
| --- SIGSEGV (Segmentation fault) @ 0 (0) ---
| +++ killed by SIGSEGV +++
| Segmentation fault
`----
I have not read the code (too short on time), but I suspect that this is
easily reproducible.
Regards,
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (101, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.4.0-dirty (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.utf-8, LC_CTYPE=pt_BR.utf-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libav-tools depends on:
ii libavcodec53 6:0.8.2-2
ii libavdevice53 6:0.8.2-2
ii libavfilter2 6:0.8.2-2
ii libavformat53 6:0.8.2-2
ii libavutil51 6:0.8.2-2
ii libc6 2.13-32
ii libpostproc52 6:0.8.2-2
ii libsdl1.2debian 1.2.15-3
ii libswscale2 6:0.8.2-2
libav-tools recommends no packages.
libav-tools suggests no packages.
-- no debconf information
--
Rogério Brito : rbrito@{ime.usp.br,gmail.com} : GPG key 4096R/BCFCAAAA
http://rb.doesntexist.org/blog : Projects : https://github.com/rbrito/
DebianQA: http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br
More information about the pkg-multimedia-maintainers
mailing list