SFML community forums

Help => Audio => Topic started by: Resethel on November 04, 2015, 11:38:20 pm

Title: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Resethel on November 04, 2015, 11:38:20 pm
Hi there!
I just recently passed to OSX 10.11.1 and noticed a warning on exit when using the SFML audio module. It says

2015-11-04 23:17:10.816 Breakout-Clone
[8530:1171230] 23:17:10.816 WARNING:  140: This application, or a library it uses, is using the
deprecated Carbon Component Manager for hosting Audio Units. Support for this will be removed
in a future release. Also, this makes the host incompatible with version 3 audio units. Please
transition to the API's in AudioComponent.h.

And here is the minimal code that trigger it!

#include "ResourcePath.hpp"
#include <SFML/Audio.hpp>

int main(int, char const**)
{
    sf::SoundBuffer Buffer;
   
    Buffer.loadFromFile(resourcePath() + "Sound.ogg");
   
    sf::Sound newSound;
    newSound.setBuffer(Buffer);
   
    newSound.play();
   
}

The warning is triggered on exit ( since it's a deprecation issue ) and is also triggered while using sf::Music

I hardly used SFML for sounds purpose, so I didn't noticed this until now !
I'm currently using SFML 2.3.2 alongside Xcode 7.0.1 and since i found no issue request about this, I wanted to ask if the problem comes from me ( which would be quite astonishing ) or if there is a fix already planned?

Thanks you for listening
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on November 05, 2015, 08:37:13 am
Thanks for reporting it.

It might be related to OpenAl-soft in fact. See https://github.com/kcat/openal-soft/issues/20.

Could you try to replace OpenAl.framework from SFML's extlibs by OS X's version from /System/Library/Frameworks, (probably) recompile SFML and your application?
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Resethel on November 05, 2015, 10:49:24 pm
Could you try to replace OpenAl.framework from SFML's extlibs by OS X's version from /System/Library/Frameworks, (probably) recompile SFML and your application?

Sorry for the delay! I did and right now, everything works smoothly, both for test cases and my app! Thanks ^^
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on November 06, 2015, 12:51:06 pm
Okay, cool. Thanks for the info.

Just so you know, we switched from Apple's OpenAl to OpenAl-soft because of some threading issues. See here: https://github.com/SFML/SFML/issues/541.
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Resethel on November 06, 2015, 10:48:43 pm
Just so you know, we switched from Apple's OpenAl to OpenAl-soft because of some threading issues. See here: https://github.com/SFML/SFML/issues/541.

I see, and this issue still exists (just noticed it ahah) , I'll wait for a fix :) thanks for the answers and everything else!
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on November 14, 2015, 12:05:53 pm
Apparently a patch was released: https://github.com/kcat/openal-soft/issues/20#issuecomment-156602570

If you can build OpenAL and test it that would be great as I don't yet have installed 10.11  :)
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: willm127 on January 15, 2016, 07:30:39 am
Apparently a patch was released: https://github.com/kcat/openal-soft/issues/20#issuecomment-156602570

If you can build OpenAL and test it that would be great as I don't yet have installed 10.11  :)

Hello! I'm new to c++ and SFML, but I'm trying to help out with this. I've cmake > make on the OpenAL master folder, and I'm including a screenshot of the files. How do I go about turning all this stuff into a .framework file so that I can add it to /Library/Frameworks? Let me know, and I'd be happy to test it.

Secondly, I'm getting three other errors:

Is it safe to assume that these will be fixed with the Open Al patch? Thanks for you help.
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on January 15, 2016, 11:48:05 pm
Great to hear someone is interested in solving this issue! :-)

Last time it was built it was Ceylo who did it. The step should be available somewhere here: https://github.com/SFML/SFML/issues/541

Quote
Failed to open sound file "[path]/oh-yeah.aiff" (format not supported) (.aiff files used to be supported, and the current SFML documentation still lists it)

If you've found a piece of documentation that states otherwise, then there's a mistake... Do you remember where you read that? Because from http://www.sfml-dev.org/documentation/2.3.2/classsf_1_1InputSoundFile.php we get:
Quote
The supported audio formats are: WAV, OGG/Vorbis, FLAC.

Regarding the warning (WW) and the error (EE), I don't know exactly what they are about. Do you have a minimal piece of code that reproduce it with the current master version of SFML?
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on February 07, 2016, 11:30:15 pm
This should be fixed with https://github.com/SFML/SFML/pull/1057. Could you test it? Thanks!
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: willm127 on February 08, 2016, 07:54:52 am
This should be fixed with https://github.com/SFML/SFML/pull/1057. Could you test it? Thanks!

First of all, I'm so sorry I didn't get back to this. Things came up, and I didn't have a chance to look into it.

I added the new OpenAL framework, and it seems to have fixed the huge error message that was coming up. But now, when I tested it with a brand new SFML project with the default template, this is the message that comes up:

Quote
AL lib: (WW) UpdateDeviceParams: SSE performs best with multiple of 4 update sizes (1114)

Hope that helps.
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: Hiura on February 08, 2016, 06:19:17 pm
Great! Thanks for having tested it.

Regarding this warning, I can't do anything about it. I believe this is a bug in OpenAL-soft on OS X 10.11 as I don't have this issue. You might want to report it yourself (https://github.com/kcat/openal-soft/issues) since you can test it. In case you do it, I've used this script (https://gist.github.com/mantognini/05460d9b6a8a272ed188#file-build_openal) to build OpenAL-soft as a framework.
Title: Re: [Mac] SFML using deprecated Carbon Component Manager ?
Post by: willm127 on February 09, 2016, 06:57:06 am
Awesome! I posted a new issue. We'll see what comes of it. Thanks again.