Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Audio library and OpenAL on other platforms #149

Open
2 of 4 tasks
mosra opened this issue Jun 4, 2016 · 12 comments
Open
2 of 4 tasks

Audio library and OpenAL on other platforms #149

mosra opened this issue Jun 4, 2016 · 12 comments

Comments

@mosra
Copy link
Owner

mosra commented Jun 4, 2016

Currently the Audio library is known to work on Windows, Linux and OSX. It compiles for iOS so I assume it works also there. The remaining platforms that aren't tested are:

It would be great to investigate the possibilities, document them and enable the Audio library in the CI builds for those platforms.

@Squareys
Copy link
Contributor

Squareys commented Jun 4, 2016

@mosra MinGW + Windows:

from https://chocolatey.org/packages/mingw

The default package now uses SJLJ (32-bit) and SEH (64-bit) exception handling and posix threads. Other configurations can be selected using the params:
exception: sjlj, seh (64-bit only), dwarf (32-bit only)
threads: posix, win32
For example: -params "/exception:dwarf /threads:win32"

So you are building 64 bit binaries, but copying Win32/soft_al.dll instead of Win64/soft_al.dll.
Either use 32bit MinGW or copy Win64/soft_al.dll to OpenAL32.dll (yes, 32 is intentional).

@ghost
Copy link

ghost commented Aug 28, 2016

@mosra Emscripten + OpenAL is working, but the current FindOpenAL does not work.
Emscripten's has its own OpenAL that works, which I just copy into a directory and point Magnum towards on Emscripten builds

@stevetranby
Copy link

Is the Android OpenSL backend working yet?

@Squareys
Copy link
Contributor

@stevetranby Magnum::Audio uses OpenAL. https://github.com/kcat/openal-soft is an implementation of OpenAL which also supports OpenSL backend. Magnum::Audio should work perfectly fine with that.

@mosra
Copy link
Owner Author

mosra commented Sep 1, 2016

@alicemargatroid Amazing, thank you! I forked the upstream FindOpenAL.cmake and made modifications in order to make it working on both desktop/mobile systems and Emscripten and now I'm also trying to enable building of Audio library on the CI. It's the openal-emscripten branch, once it goes green, I'll merge the changes to master.

@mosra
Copy link
Owner Author

mosra commented Sep 4, 2016

The Audio library is building on Windows CIs for some time already and with 85979ad it is also fully working on the Emscripten and passing tests on the CI.

@ghost
Copy link

ghost commented Jan 3, 2017

@mosra OpenAL seems to not compile on Ubuntu 16.06 and some other implementations now; adding

#include <alext.h>

to MagnumIntegration/OpenAL/extensions.h seems to fix it; I'd submit a PR but it is a tiny tiny fix.

@mosra
Copy link
Owner Author

mosra commented Jan 3, 2017

Can you paste the exact error? I vaguely remember that alext.h was not available everywhere and by having my own OpenAL/extensions.h I aimed to fix that.

@ghost
Copy link

ghost commented Jan 3, 2017 via email

@mosra
Copy link
Owner Author

mosra commented Jan 3, 2017

Huh... but they are there, you added them in 1897e36:

#define AL_FORMAT_REAR16 0x1208

...

/* AL_EXT_MCFORMATS */
#ifndef AL_EXT_MCFORMATS
#define AL_EXT_MCFORMATS 1
#define AL_FORMAT_QUAD8                          0x1204
#define AL_FORMAT_QUAD16                         0x1205
#define AL_FORMAT_QUAD32                         0x1206
#define AL_FORMAT_REAR8                          0x1207
#define AL_FORMAT_REAR16                         0x1208
#define AL_FORMAT_REAR32                         0x1209
#define AL_FORMAT_51CHN8                         0x120A

...

Might this be because of some header conflict?

@ghost
Copy link

ghost commented Jan 3, 2017 via email

@mosra mosra mentioned this issue Jul 25, 2018
56 tasks
@mosra mosra added this to the 2018.0c milestone Jul 25, 2018
@mosra mosra modified the milestones: 2018.0c, 2018.0d Sep 9, 2018
@mosra mosra modified the milestones: 2019.01, 2019.0b Jan 29, 2019
@mosra mosra mentioned this issue Mar 9, 2019
14 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: In progress
Development

No branches or pull requests

4 participants
@stevetranby @mosra @Squareys and others