Almamu / linux-wallpaperengine

Wallpaper Engine backgrounds for Linux!
GNU General Public License v3.0
1.67k stars 61 forks source link

Cannot initialize SDL audio system #10

Closed ghost closed 1 year ago

ghost commented 4 years ago

Debian testing

Installed deps including

Output when I run a background from a directory

Irrlicht Engine version 1.8.4 Linux 5.2.17-rt7 #1 SMP Tue Oct 22 07:22:41 MDT 2019 x86_64 Using renderer: OpenGL 3.1 AMD BARTS (DRM 2.50.0 / 5.2.17-rt7, LLVM 9.0.0): X.Org OpenGL driver version is 1.2 or better. GLSL version: 1.4 Cannot initialize SDL audio system

I have also tried running as sudo

Marc-Pierre-Barbier commented 4 years ago

I don't know if this will help but on arch I had to install the 32bit version of sdl

Almamu commented 4 years ago

What is the output of dpkg --list | grep sdl? Take in mind that you need SDL (not SDL2) and SDL_mixer. I guess your installation is x64? I'll try to build it in debian testing as soon as I have time and get back to you.

themultiplexer commented 4 years ago

I got the same issue on Debian Buster (NVdia Graphics card). Would really love to see it work!

Almamu commented 4 years ago

@themultiplexer I'll need some extra information on why this happens. Can you run dpkg --list | grep sdl and copy the output here? I guess you're using the 64 bit version of debian?

themultiplexer commented 4 years ago

I actually fixed the problem tonight: I found out that MixInit() returns error code 9 which means: Mixer not built with MP3 support

So i pulled SDL_mixer and compiled it myself: If libmpg123 is found, SDL_mixer automatically compiles with MP3 support.

hg clone http://hg.libsdl.org/SDL_mixer/
hg checkout SDL-1.2
sudo apt install libmpg123-dev
mkdir build
cd build
../configure
make
sudo make install

Finally I had to add the SDL header path to CMakeLists.txt so it finds SDL_types.h, etc.

set(SDL_INCLUDE_DIRS /usr/include/SDL)

I hope this fix works for you @bennybenjaman

Almamu commented 4 years ago

That's a little weird. I'm adding some extra information to the "Cannot initialize SDL audio system" so It's easier to debug in the future, and I'll investigate why the debian's SDL-mixer doesn't support MP3. I'll keep the issue open for now so I can at least update the compilation instructions.

ghost commented 4 years ago

I had success with removing the system libsdl-mixer1.2 and libsdl-mixer1.2-dev and instead installing binaries from https://www.libsdl.org/projects/SDL_mixer/release-1.2.html with alien and dpkg. This seems to be easier than rewriting linux-wallpaperengine to use SDL_mixer 2.0.

Linux Mint 20

staticnation commented 4 years ago

Irrlicht Engine version 1.8.4 Linux 5.7.10-xanmod1 #0~git20200722.ed358d3 SMP PREEMPT Wed Jul 22 12:07:44 UTC 2020 x86_64 Using renderer: OpenGL 4.6 Radeon RX 580 Series (POLARIS10, DRM 3.37.0, 5.7.10-xanmod1, LLVM 10.0.1): X.Org OpenGL driver version is 1.2 or better. GLSL version: 4.6 Could not create archive for: /home/static/.git/linux-wallpaperengine/build/kgscene.pkg Cannot initialize SDL audio system: Mixer not built with MP3 support

static@Blackstar:~/.git/linux-wallpaperengine/build$ dpkg --list | grep sdl ii libsdl-console:amd64 2.1-6 amd64 Console that can be added to any SDL application, libraries ii libsdl-gfx1.2-5:amd64 2.0.25-11 amd64 drawing and graphical effects extension for SDL ii libsdl-image1.2:amd64 1.2.12-12 amd64 Image loading library for Simple DirectMedia Layer 1.2, libraries ii libsdl-image1.2:i386 1.2.12-12 i386 Image loading library for Simple DirectMedia Layer 1.2, libraries ii libsdl-kitchensink1:amd64 1.0.7-1 amd64 FFmpeg and SDL2 based library for audio and video playback ii libsdl-mixer1.2:amd64 1.2.12-16build1 amd64 Mixer library for Simple DirectMedia Layer 1.2, libraries ii libsdl-mixer1.2:i386 1.2.12-16build1 i386 Mixer library for Simple DirectMedia Layer 1.2, libraries ii libsdl-mixer1.2-dev:amd64 1.2.12-16build1 amd64 Mixer library for Simple DirectMedia Layer 1.2, development files ii libsdl-net1.2:i386 1.2.8-6 i386 Network library for Simple DirectMedia Layer 1.2, libraries ii libsdl-sge:amd64 030809dfsg-9 amd64 extension of graphic functions for SDL multimedia libraries ii libsdl-sound1.2:amd64 1.0.3-9 amd64 Sound library for Simple DirectMedia Layer 1.2, libraries ii libsdl-ttf2.0-0:i386 2.0.11-6 i386 TrueType Font library for Simple DirectMedia Layer 1.2, libraries ii libsdl1.2-dev 1.2.15+dfsg2-5 amd64 Simple DirectMedia Layer development files ii libsdl1.2debian:amd64 1.2.15+dfsg2-5 amd64 Simple DirectMedia Layer ii libsdl1.2debian:i386 1.2.15+dfsg2-5 i386 Simple DirectMedia Layer ii libsdl2-2.0-0:amd64 2.0.10+dfsg1-3 amd64 Simple DirectMedia Layer ii libsdl2-2.0-0:i386 2.0.10+dfsg1-3 i386 Simple DirectMedia Layer ii libsdl2-dev:amd64 2.0.10+dfsg1-3 amd64 Simple DirectMedia Layer development files ii libsdl2-gfx-1.0-0:amd64 1.0.4+dfsg-3 amd64 drawing and graphical effects extension for SDL2 ii libsdl2-image-2.0-0:amd64 2.0.5+dfsg1-2 amd64 Image loading library for Simple DirectMedia Layer 2, libraries ii libsdl2-mixer-2.0-0:amd64 2.0.4+dfsg1-2build1 amd64 Mixer library for Simple DirectMedia Layer 2, libraries ii libsdl2-mixer-dev:amd64 2.0.4+dfsg1-2build1 amd64 Mixer library for Simple DirectMedia Layer 2, development files ii libsdl2-net-2.0-0:amd64 2.0.1+dfsg1-4 amd64 Network library for Simple DirectMedia Layer 2, libraries ii libsdl2-ttf-2.0-0:amd64 2.0.15+dfsg1-1 amd64 TrueType Font library for Simple DirectMedia Layer 2, libraries

BlackHawk185 commented 3 years ago

Old thread but I'm experiencing this issue as well.

Irrlicht Engine version 1.8.4 Linux 5.10.4-165.current #1 SMP PREEMPT Wed Dec 30 20:57:39 UTC 2020 x86_64 Using renderer: OpenGL 4.6.0 GeForce GTX 1060 6GB/PCIe/SSE2: NVIDIA Corporation OpenGL driver version is 1.2 or better. GLSL version: 4.6 Cannot initialize SDL audio system: Mixer not built with MP3 support

grep SDL yields

sdl-gfx - SDL graphics drawing primitives and other support functions sdl-gfx-32bit - 32-bit libraries for sdl-gfx sdl-ttf - library which allows you to use TrueType fonts in your SDL applications sdl-ttf-32bit - 32-bit libraries for sdl-ttf sdl-ttf-32bit-devel - Development files for 32-bit sdl-ttf sdl-ttf-devel - Development files for sdl-ttf sdl1 - Simple DirectMedia Layer 1.x sdl1-32bit - 32-bit libraries for sdl1 sdl1-32bit-devel - Development files for 32-bit sdl1 sdl1-devel - Development files for sdl1 sdl1-image - SDL_image is an image file loading library. sdl1-image-32bit - 32-bit libraries for sdl1-image sdl1-mixer - SDL Mixer sdl1-mixer-32bit - 32-bit libraries for sdl1-mixer sdl1-mixer-32bit-devel - Development files for 32-bit sdl1-mixer sdl1-mixer-devel - Development files for sdl1-mixer sdl1-net - SDL1 Networking sdl1-net-32bit - 32-bit libraries for sdl1-net sdl2 - Simple DirectMedia Layer sdl2-32bit - 32-bit libraries for sdl2 sdl2-devel - Development files for sdl2 sdl2-gfx - SDL2 graphics drawing primitives and other support functions sdl2-gfx-32bit - 32-bit libraries for sdl2-gfx sdl2-image - SDL_image is an image file loading library. sdl2-image-32bit - 32-bit libraries for sdl2-image sdl2-mixer - A simple multi-channel audio mixer sdl2-mixer-32bit - 32-bit libraries for sdl2-mixer sdl2-mixer-devel - Development files for sdl2-mixer sdl2-net - Small sample cross-platform networking library. sdl2-net-32bit - 32-bit libraries for sdl2-net sdl2-ttf - A sample library which allows you to use TrueType fonts in SDL applications. sdl2-ttf-32bit - 32-bit libraries for sdl2-ttf

avnotaklu commented 3 years ago

do not that libsdl-mixer1.2 requires libsmpeg-dev for mp3 support whereas libsdl2-mixer requires libmpeg123

Almamu commented 2 years ago

do not that libsdl-mixer1.2 requires libsmpeg-dev for mp3 support whereas libsdl2-mixer requires libmpeg123

I'm pretty sure it's about the package options you're presented with when installing ubuntu, because mp3 support itself is not GPLd, or at least it wasn't years ago. but I haven't had any time to try in ubuntu/debian yet.

Nova1545 commented 2 years ago

Im getting the same error where SDL Mixer isnt built with mp3 support, is there a fix for this or a guide to building SDL Mixer with mp3 support?

Almamu commented 2 years ago

Im getting the same error where SDL Mixer isnt built with mp3 support, is there a fix for this or a guide to building SDL Mixer with mp3 support?

I don't have any guides to build SDL_Mixer for ubuntu. SDLmixer is not a really complex library, so it should be somewhat easy to do. Check their release page and the documentation they have on the build process, that should get you started: https://www.libsdl.org/projects/SDL_mixer/release-1.2.html

Almamu commented 1 year ago

This issue is irrelevant now. SDL 1.2 is no longer in use. There's still issues with audio, but because of different reasons.