Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 511834 - media-video/vlc-2.1.4 crashes when trying to play theora video
Summary: media-video/vlc-2.1.4 crashes when trying to play theora video
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Paweł Stankowski
URL: https://trac.videolan.org/vlc/ticket/...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-05-30 08:01 UTC by Nikoli
Modified: 2015-04-18 04:03 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
gdb log (vlc-2.1.4_libav-10.1_theora-crash_gdb.log,20.07 KB, text/x-log)
2014-05-30 08:01 UTC, Nikoli
Details
backtrace.log (file_511834.txt,2.15 KB, text/plain)
2014-11-18 01:08 UTC, Paweł Stankowski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nikoli 2014-05-30 08:01:58 UTC
Created attachment 377836 [details]
gdb log

Segmentation fault occurred at 0000000000000010 in /usr/bin/vlc


vlc-2.1.4 segfaults when trying to play this file:
$ avprobe t.ogv 
avprobe version 10.1, Copyright (c) 2007-2014 the Libav developers
  built on May 30 2014 11:36:28 with gcc 4.7.3 (Gentoo Hardened 4.7.3-r1 p1.4, pie-0.5.5)
Input #0, ogg, from 't.ogv':
  Duration: 00:04:29.56, start: 0.002333, bitrate: 432 kb/s
    Stream #0.0: Video: theora, yuv420p, 688x576 [PAR 172:121 DAR 1849:1089], 25 fps, 25 tbn, 25 tbc
    Metadata:
      ENCODER         : Lavf55.12.0
    Stream #0.1: Audio: vorbis, 48000 Hz, 5.1, fltp, 276 kb/s
    Metadata:
      ENCODER         : Lavf55.12.0
# avprobe output


mpv works fine with same file.


Portage 2.2.8-r1 (hardened/linux/amd64, gcc-4.7.3, glibc-2.17, 3.14.4-hardened-r1 x86_64)
=================================================================
                        System Settings
=================================================================
KiB Mem:    65825876 total,  28617360 free
KiB Swap:          0 total,         0 free
Timestamp of tree: Thu, 29 May 2014 19:15:01 +0000
ld GNU ld (GNU Binutils) 2.23.2
app-shells/bash:          4.2_p45
dev-lang/python:          2.7.6
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.13.4
sys-devel/binutils:       2.23.2
sys-devel/gcc:            4.7.3-r1
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.13 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo nikoli
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=corei7-avx -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0 /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=corei7-avx -O2 -pipe"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs cgroup collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch preserve-libs protect-owned sandbox sfperms strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTDIR_OVERLAY="/var/lib/layman/nikoli"
USE="X a52 aac acl acpi aes-ni alsa amd64 amr audiofile avx bash-completion bzip2 cairo caps cdda cddb cdio cdparanoia cdr celt cli consolekit cracklib crypt css cups cxx dbus djvu dri dts dv dvd dvdr encode exif fat ffmpeg flac fluidsynth fontconfig fortran gd geoip gif gimp gmp gphoto2 gpm graphviz gsm gstreamer gtk handbook hardened iconv icu id3tag idn ilbc imagemagick imap imlib ios ipod ipv6 jbig jpeg jpeg2k justify kde kipi lame laptop lcms libass libnotify libproxy libsamplerate lm_sensors lzma lzo mac mad matroska mikmod mmx mmxext modplug modules mp3 mp4 mpeg mtp multilib musepack musicbrainz ncurses networkmanager nls nptl nptlonly ntfs ogg openal openexr opengl openmp opus pam pango pax_kernel pcre pdf phonon plasma pm-utils png policykit postscript qt3support qt4 quicktime rar raw readline reiserfs replaygain rtmp sasl scanner semantic-desktop session sid smp sndfile socks5 speex spell sqlite sse sse2 sse3 sse4_1 ssl ssse3 startup-notification svg symlink sysfs taglib threads thumbnail tiff truetype tta udev udisks unicode upnp upower usb v4l v4l2 vcd vdpau vorbis vpx wavpack webkit webp wma wmf x264 xattr xcb xcomposite xface xinerama xml xmp xpm xscreensaver xtpax xv xz zip zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="*" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-minimizer" LINGUAS="ru ru_RU en" NGINX_MODULES_HTTP="access auth_basic autoindex fastcgi gzip rewrite" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby20" USERLAND="GNU" VIDEO_CARDS="radeon r600 modesetting vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

media-video/vlc-2.1.4 was built with the following:
USE="X a52 alsa avcodec avformat bidi bluray cdda cddb dbus dts dvbpsi dvd encode ffmpeg flac fluidsynth fontconfig gcrypt gme kate kde libass libsamplerate libtiger live lua matroska mmx modplug mp3 mpeg mtp musepack ncurses ogg opengl opus png postproc qt4 rtsp sid speex sse svg swscale taglib test truetype twolame udev upnp v4l vdpau vlm vorbis wma-fixed x264 xcb xml xv -aalib (-altivec) -atmo (-audioqueue) -avahi -chromaprint -dc1394 -debug -dirac -directfb (-directx) -dvb (-dxva2) -egl -faad -fdk -gnome -gnutls -growl -httpd -ieee1394 (-ios-vout) -jack -libcaca -libnotify -libtar -linsys -lirc (-macosx) (-macosx-audio) (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) (-macosx-vout) (-media-library) (-neon) -omxil -opencv -optimisememory -projectm -pulseaudio (-qt5) -rdp -run-as-root -samba -schroedinger -sdl -sdl-image -sftp -shout -skins -theora -tremor -vaapi -vcdx -vnc -zvbi"
CFLAGS="-march=corei7-avx -O2 -pipe -ggdb"
CXXFLAGS="-march=corei7-avx -O2 -pipe -ggdb"
LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/"


media-video/libav-10.1 was built with the following:
USE="X aac alsa amr avx bzip2 cdio encode faac frei0r gpl gsm hardcoded-tables jpeg2k mmx mmxext mp3 network openssl opus rtmp sdl speex ssl ssse3 test threads tools truetype v4l vdpau vorbis vpx x264 zlib -3dnow -3dnowext (-altivec) -bindist -cpudetection -custom-cflags -debug -doc -fdk -ieee1394 -jack (-neon) -oss -pic -pulseaudio -schroedinger -static-libs -theora -vaapi (-vis) -xvid"
CFLAGS="-march=corei7-avx -O2 -pipe -ggdb"
CXXFLAGS="-march=corei7-avx -O2 -pipe -ggdb"
Comment 1 Nikoli 2014-06-04 16:08:16 UTC
Tried latest vlc git (2.1.0-git-3463-g3054560): does not crash, plays video fine.
Comment 2 Paweł Stankowski 2014-11-15 18:07:33 UTC
Author confirmed that problem was fixed upstream. Version 2.1.5 is already in portage tree and was released after author has tested git version, so closing as fixed upstream.
Comment 3 Nikoli 2014-11-15 18:17:48 UTC
vlc-2.1.5 still crashes.
Comment 4 Paweł Stankowski 2014-11-15 22:48:15 UTC
Have you tried lately with the newest ebuild? There was a bug 506322 about wrong avcodec <-> vlc communication that has been resolved few days ago.
Comment 5 Paweł Stankowski 2014-11-15 22:52:19 UTC
Ah, sorry - just realized that ebuild in version 2.1.5 is still broken - I'll correct it soon. Try 2.1.4 instead.
Comment 6 Yixun Lan archtester gentoo-dev 2014-11-16 14:42:06 UTC
sorry, was wrong fix in 2.1.5, now it's solved, thanks
Comment 7 Nikoli 2014-11-16 20:30:14 UTC
Well, vlc still fails while avplay and mpv play same file fine :/
$ grep Header /var/db/pkg/media-video/vlc-2.1.5/vlc-2.1.5.ebuild 
# $Header: /var/cvsroot/gentoo-x86/media-video/vlc/vlc-2.1.5.ebuild,v 1.4 2014/11/16 14:37:22 dlan Exp $

Did not find newer revision in http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-video/vlc/vlc-2.1.5.ebuild?view=log , so reopening.
Comment 8 Paweł Stankowski 2014-11-17 08:34:12 UTC
According to comment 1, you built libav without theora USE flag. Just a guess that it may be cause of fault here. Could you try to enable it?
Comment 9 Paweł Stankowski 2014-11-17 08:37:42 UTC
... and the same applies to vlc package. When you say that git version works correctly, have you built it using live ebuild with the same use flags?
Comment 10 Yixun Lan archtester gentoo-dev 2014-11-17 08:48:06 UTC
it segfault with 
media-video/vlc-2.1.9999 + libav-10.5 -> vlc commit: 2ea61fc
media-video/vlc-2.1.5 + libav-10.5

but doesn't with
media-video/vlc-2.1.5 + libav-9.17

also works fine with ffmpeg
media-video/vlc-2.1.5 + ffmpeg-2.2.10
media-video/vlc-9999 + ffmpeg-9999


it seems just fine to play theora file with USE=theora disable both in libav and vlc, see following

# eix -e vlc
[I] media-video/vlc
     Available versions:  2.1.2(0/5-7) (~)2.1.4(0/5-7) (~)2.1.5(0/5-7) **2.1.9999(0/5-7) **2.2.9999(0/5-7) **9999(0/5-7) {+X a52 aalib alsa altivec atmo +audioqueue avahi +avcodec +avformat bidi bluray cdda cddb chromaprint dbus dc1394 debug dirac directfb directx dts dvb +dvbpsi dvd dxva2 egl +encode faad fdk +ffmpeg flac fluidsynth fontconfig +gcrypt gme gnome gnutls growl httpd ieee1394 ios-vout jack jpeg kate kde libass libcaca libnotify libsamplerate libtar libtiger linsys lirc live lua +macosx +macosx-audio (+)macosx-dialog-provider (+)macosx-eyetv (+)macosx-qtkit (+)macosx-quartztext +macosx-vout matroska media-library mmx modplug mp3 mpeg mtp musepack ncurses neon ogg omxil opencv opengl optimisememory opus png +postproc projectm pulseaudio +qt4 qt5 rdp rtsp run-as-root samba schroedinger sdl sdl-image sftp shout sid skins speex sse svg +swscale taglib test theora tremor truetype twolame udev upnp v4l vaapi vcdx vdpau vlm vnc vorbis vpx wma-fixed x264 x265 +xcb xml xv zvbi ELIBC="glibc"}
     Installed versions:  2.1.5(16:39:47 11/17/14)(X a52 alsa avcodec avformat bidi bluray cdda cddb dbus dts dvbpsi dvd encode ffmpeg flac fluidsynth fontconfig gcrypt gme kate kde libass libsamplerate libtiger live lua matroska mmx modplug mp3 mpeg mtp musepack ncurses ogg opengl opus png postproc qt4 rtsp sid speex sse svg swscale taglib truetype twolame udev upnp v4l vlm vorbis wma-fixed x264 xcb xml xv -aalib -altivec -atmo -audioqueue -avahi -chromaprint -dc1394 -debug -dirac -directfb -directx -dvb -dxva2 -egl -faad -fdk -gnome -gnutls -growl -httpd -ieee1394 -ios-vout -jack -libcaca -libnotify -libtar -linsys -lirc -macosx -macosx-audio -macosx-dialog-provider -macosx-eyetv -macosx-qtkit -macosx-quartztext -macosx-vout -media-library -neon -omxil -opencv -optimisememory -projectm -pulseaudio -rdp -run-as-root -samba -schroedinger -sdl -sdl-image -sftp -shout -skins -test -theora -tremor -vaapi -vcdx -vdpau -vnc -zvbi ELIBC="glibc")
     Homepage:            http://www.videolan.org/vlc/
     Description:         VLC media player - Video player and streamer

# eix -e libav
[U] media-video/libav
     Available versions:  9.14(0/9) (~)9.17(0/9) {M}(~)10.5(0/10)^t {M}**10.9999(0/10)^t {M}(~)11(0/10)^t {M}**11.9999(0/10)^t **9999(0/10)^t {3dnow 3dnowext X aac alsa altivec amr avx avx2 bindist +bzip2 cdio cpudetection custom-cflags debug doc +encode faac fdk fontconfig frei0r +gpl gsm +hardcoded-tables ieee1394 jack jpeg2k mmx mmxext mp3 neon +network openssl opus oss pic pulseaudio rtmp schroedinger sdl speex ssl ssse3 static-libs test theora threads tools truetype v4l vaapi vdpau vis vorbis vpx wavpack webp x264 x265 xvid +zlib ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Installed versions:  9.17(16:22:33 11/17/14)(X aac alsa amr avx bzip2 cdio encode faac frei0r gpl gsm hardcoded-tables jpeg2k mmx mmxext mp3 network openssl opus rtmp sdl speex ssl ssse3 threads tools truetype v4l vorbis vpx x264 zlib -3dnow -3dnowext -altivec -bindist -cpudetection -custom-cflags -debug -doc -fdk -ieee1394 -jack -neon -oss -pic -pulseaudio -schroedinger -static-libs -test -theora -vaapi -vdpau -vis -xvid ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="64 -32 -x32")
     Homepage:            http://libav.org/
     Description:         Complete solution to record, convert and stream audio and video
Comment 11 Yixun Lan archtester gentoo-dev 2014-11-17 15:38:05 UTC
try to do bisect on vlc-2.2.9999, and found 73c979f240fd8da76728da2e3378f43c3cb93c2a fix this issue.
(could you guys report upstream? see if they can work out the problem)

bad: e2916227e4edd93cbf79687a86002d9c21b9f911 -> good: 3054560987971aff19c496db38834458f8c29377

bisect:
e2916227e4edd93cbf79687a86002d9c21b9f911 -> bad
 3b65b0b777ad1f05dfe0f020b2df5cd1f98233db -> bad
  47faceb4f016f9621323e2f1e1230e713a35261d -> bad
   361d4655f662fa5dfa3e01b22e344c25c77e278a -> bad
    f3f09df31f7e25189c24fe6dadc2fd21992dc5ca -> bad
     bedf87eba1f29b622b203847935e65803a9117d2 -> bad
      4572f451d65e34ac2119c2cb45da67db6b334bd8 -> bad
       b6dd43d5ccbb6ab1edd93d2f701973b9ab5f8cc2 -> bad

     73c979f240fd8da76728da2e3378f43c3cb93c2a -> good
    6ab6d20b15fde4cd529742d8df2fec4beaac6846 -> good
   061c07bd85034c109fff42e3268aadadf0506e19 -> good
  6295836c45f08c7186ee505a2fd481ad061c87df -> good
 4980f54d25e9291acf70c2b3d4cfde2f320c1d07 -> good
ebf778dc39016a5833ad5cb9da857d072072a6f1 -> good
Comment 12 Paweł Stankowski 2014-11-18 01:08:24 UTC
Created attachment 389594 [details]
backtrace.log

I debugged vlc-2.1.5 with libav-10.5 - backtrace attached.

Googling by backtrace I found upstream bug:
https://trac.videolan.org/vlc/ticket/2901

Jean-Baptiste's response was:
"--enable-ogg --enable-theora --enable-vorbis. Don't use avcodec for this."

It seems to me that playing theora files without theora USE flag is not supported upstream.
Comment 13 Nikoli 2015-03-15 22:11:32 UTC
vlc-2.1.5 still has bug, but vlc-2.2.0 and vlc-9999 work fine.
Comment 14 Ian Delaney (RETIRED) gentoo-dev 2015-04-18 04:03:05 UTC
purged from portage