Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 773283 - media-video/ffmpeg-4.3.2: ffplay broken (?): "Could not initialize SDL - No available video device"
Summary: media-video/ffmpeg-4.3.2: ffplay broken (?): "Could not initialize SDL - No a...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-27 13:54 UTC by sphakka
Modified: 2023-04-05 11:33 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sphakka 2021-02-27 13:54:39 UTC
ffplay looks broken with media-video/ffmpeg-4.3.2. Whatever audio, video file or stream I try to play, only get this:

Could not initialize SDL - No available video device
(Did you set the DISPLAY variable?)

SDL is enabled and compiled in, AFAIK.

$ ffplay -devices
ffplay version 4.3.2 Copyright (c) 2003-2021 the FFmpeg developers
  built with gcc 9.3.0 (Gentoo 9.3.0-r2 p4)
  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/share/doc/ffmpeg-4.3.2/html --mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --nm=x86_64-pc-linux-gnu-nm --ranlib=x86_64-pc-linux-gnu-ranlib --pkg-config=x86_64-pc-linux-gnu-pkg-config --optflags='-march=haswell -pipe -O2 -fomit-frame-pointer' --disable-static --enable-avfilter --enable-avresample --disable-stripping --disable-optimizations --disable-libcelt --enable-nonfree --disable-indev=oss --disable-indev=jack --disable-indev=sndio --disable-outdev=oss --disable-outdev=sndio --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --enable-gnutls --disable-gmp --enable-gpl --disable-hardcoded-tables --enable-iconv --disable-libtls --disable-libxml2 --disable-lzma --enable-network --disable-opencl --enable-openssl --enable-postproc --disable-libsmbclient --enable-ffplay --enable-sdl2 --disable-vaapi --disable-vdpau --disable-vulkan --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --disable-opengl --disable-libv4l2 --disable-libpulse --disable-libdrm --disable-libjack --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libcodec2 --enable-libdav1d --disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libgme --disable-libgsm --disable-libaribb24 --disable-mmal --disable-libmodplug --enable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libspeex --disable-libsrt --disable-librsvg --disable-ffnvcodec --enable-libvorbis --disable-libvpx --disable-libzvbi --disable-appkit --disable-libbs2b --disable-chromaprint --disable-cuda-llvm --disable-libflite --disable-frei0r --disable-libfribidi --disable-fontconfig --enable-ladspa --disable-libass --disable-libtesseract --disable-lv2 --enable-libfreetype --disable-libvidstab --disable-librubberband --disable-libzmq --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-libaom --disable-libopenh264 --disable-librav1e --disable-libsnappy --disable-libtheora --disable-libtwolame --disable-libwebp --enable-libx264 --disable-libx265 --disable-libxvid --disable-gnutls --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-neon --disable-vfp --disable-vfpv3 --disable-armv8 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-altivec --disable-vsx --disable-power8 --disable-amd3dnow --disable-amd3dnowext --disable-fma4 --disable-xop --cpu=haswell --disable-doc --disable-htmlpages --enable-manpages
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Devices:
 D. = Demuxing supported
 .E = Muxing supported
 --
 DE alsa            ALSA audio output
 DE fbdev           Linux framebuffer
 D  lavfi           Libavfilter virtual input device
  E sdl,sdl2        SDL2 output device
 DE video4linux2,v4l2 Video4Linux2 output device
 D  x11grab         X11 screen capture, using XCB
  E xv              XV (XVideo) output device 

Reproducible: Always




Portage 3.0.13 (python 3.8.7-final-0, default/linux/amd64/17.1/no-multilib, gcc-9.3.0, glibc-2.32-r6, 5.4.97-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.4.97-gentoo-x86_64-Intel-R-_Core-TM-_i7-4702MQ_CPU_@_2.20GHz-with-glibc2.2.5
KiB Mem:    16108284 total,   7447520 free
KiB Swap:   16777212 total,  16423392 free
Timestamp of repository gentoo: Fri, 26 Feb 2021 19:52:13 +0000
Head commit of repository gentoo: b38f529836b5ced0b10538077153bc2b729f7c40

Timestamp of repository nest: Thu, 25 Feb 2021 03:52:20 +0000
Head commit of repository nest: 30926de1efe9da3324386fa36573feab63976fb5

sh bash 5.0_p18
ld GNU ld (Gentoo 2.34 p6) 2.34.0
app-shells/bash:          5.0_p18::gentoo
dev-lang/perl:            5.30.3::gentoo
dev-lang/python:          2.7.18-r6::gentoo, 3.7.9::gentoo, 3.8.7-r1::gentoo, 3.9.1-r1::gentoo
dev-util/cmake:           3.18.5::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/openrc:          0.42.1-r1::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo
sys-devel/automake:       1.16.2-r1::gentoo
sys-devel/binutils:       2.34-r2::gentoo, 2.35.1-r1::gentoo
sys-devel/gcc:            9.3.0-r2::gentoo
sys-devel/gcc-config:     2.3.3::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.10::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r6::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/repo/sync/gentoo.git
    priority: -1000

nest
    location: /var/db/repos/nest
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/nest.git
    masters: gentoo

localrepo
    location: /var/db/repos/overlay/localrepo
    masters: gentoo
    priority: 10

bubba
    location: /var/lib/layman/bubba
    sync-type: laymansync
    sync-uri: https://github.com/gordonb3/bubba-overlay.git
    masters: gentoo
    priority: 50

Installed sets: @audio, @dev, @emacs, @emul, @fonts, @gkrellm, @graphix, @net, @office, @utilz, @video, @web, @webdev, @xfce
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=haswell -pipe -O2 -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=haswell -pipe -O2 -fomit-frame-pointer"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-march=haswell -pipe -O2 -fomit-frame-pointer"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=haswell -pipe -O2 -fomit-frame-pointer"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="/usr/lib/systemd/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS=""
MAKEOPTS="-j9"
PKGDIR="/var/cache/binpkgs"
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 --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="alsa amd64 apng berkdb bittorrent bluetooth btrfs bzip2 calendar caps cddb cdparanoia clang cli corefonts crypt cups curl cvs dav1d dbus device-mapper djvu dri dvd dynamic-loading ebook elogind emacs eme-free enchant fam fbcon fortran fpm gdbm git glamor gnome-keyring gnutls gpm graphicsmagick gtk3 gtkstyle gui h323 hddtemp heif http hunspell iconv icu id3tag imagemagick introspection jabber jpeg jumbo-build kpathsea ladspa laptop latex lcms libglvnd libnotify libsamplerate libtirpc lm_sensors lto luks1_default mng mp3 mplayer musepack musicbrainz mysql mysqli ncurses networkmanager nls nptl ntfs ntfsprogs objc objc++ ogg openmp openvg opus pam pcre pgo png policykit postscript ppds python3 readline rtmp scanner sdl seamonkey seccomp split-usr sql sqlite sqlitessh ssl system-av1 system-bootstrap system-cmark system-crontab system-ffmpeg system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-libyaml system-llvm system-mesa system-sqlite system-ssl system-webp system-zlib tcpd threads tordns truetype udisks unicode v4l v4l2 video vlc vorbis wavpack xattr xcb xcomposite xetex xfce xfs xkb xmp xorg xvfb zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="hda-intel usb-audio" 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="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="keyboard mouse libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python3_8" RUBY_TARGETS="ruby25 ruby26" SANE_BACKENDS="epson2 epkowa hp" USERLAND="GNU" VIDEO_CARDS="intel i965" 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:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

media-video/ffmpeg-4.3.2::gentoo was built with the following:
USE="X alsa bzip2 chromium dav1d encode gnutls gpl iconv ladspa mp3 network openssl opus postproc sdl threads truetype v4l vorbis x264 zlib -amr -amrenc (-appkit) -bluray -bs2b -cdio -chromaprint -codec2 -cpudetection (-cuda) -debug -doc -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gsm -hardcoded-tables -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -libaom -libaribb24 -libass -libcaca -libdrm -libilbc (-libressl) -librtmp -libsoxr -libtesseract -libv4l -libxml2 -lv2 -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -openal -opencl -opengl -openh264 -oss -pic -pulseaudio -rav1e -rubberband -samba -snappy -sndio -speex -srt -ssh -static-libs -svg -test -theora -twolame -vaapi -vdpau -vidstab -vpx -vulkan -webp -x265 -xvid -zeromq -zimg -zvbi" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext sse sse2 sse3 sse4_1 sse4_2 ssse3 -3dnow -3dnowext -fma4 -xop" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" VIDEO_CARDS="-nvidia"
FEATURES="unknown-features-warn pid-sandbox sfperms network-sandbox sandbox binpkg-docompress ipc-sandbox usersandbox news preserve-libs parallel-install distlocks fixlafiles strict protect-owned userfetch xattr parallel-fetch unmerge-orphans ebuild-locks userpriv unmerge-logs binpkg-dostrip merge-sync qa-unresolved-soname-deps binpkg-logs config-protect-if-modified multilib-strict usersync assume-digests"
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-02-27 17:26:35 UTC
4.3.1 work?
Comment 2 sphakka 2021-02-27 17:30:32 UTC
Don't know, I'll try. But I upgraded from 4.2.4 in which it was already broken.
Comment 3 Ionen Wolkens gentoo-dev 2021-02-27 19:55:36 UTC
Didn't look much into this but I can reproduce with libsdl2[-X]

Try to rebuild libsdl2 with USE=X enabled.
Comment 4 sphakka 2021-03-12 18:05:22 UTC
Yes USE=X on libsdl2 fixes it! Thanks for the tip ^^
Comment 5 darkshine 2023-04-05 10:09:11 UTC
Having "X" flag set for libsdl2 may be not enough to fix this problem.

I had the same issue with media-video/ffmpeg-4.4.3 and media-libs/libsdl2-2.0.20-r1. In my case libsdl2 already had "X" flag set, but didn't have any additional sound-related flags set (except "sound" flag itself) like "alsa" or "pulseaudio" etc.

I've also enabled "alsa" flag for libsdl2 and upgraded it to the version 2.24.2. That fixed the issue.
Comment 6 Ionen Wolkens gentoo-dev 2023-04-05 11:33:25 UTC
Honestly unless it /only/ works with specifics (e.g. doesn't build with -X, or doesn't work with wayland, only works with pulse, etc...), then this isn't something the ebuild should be looking at.

And then libSDL2 technically always has a "usable" backend with USE=sound/video (dummy or diskwrite) if selected, and doesn't know what the users are using. On a desktop profile this is all pretty sane out-of-the-box, otherwise users will need to enable what they use.