Audio engine for Win & iPhone...

A place for Ogre users to discuss non-Ogre subjects with friends from the community.
User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Audio engine for Win & iPhone...

Post by Zeal » Fri Feb 19, 2010 4:20 pm

Just a stab in the dark here - Can anyone recommend any good opensource audio engines that would work with Windows and iPhone? I suppose I could just write a simple OpenAL wrapper, but I figured I would look for a more robust engine first...

*btw I have ZERO experience with audio programming on the iphone, but I am 99% sure it uses plain old OpenAL, so in theory any 'Windows' based OpenAL engine should work on iPhone as well, right?
0 x

warmi
Gnoll
Posts: 674
Joined: Sun May 27, 2007 3:56 am
Location: USA

Re: Audio engine for Win & iPhone...

Post by warmi » Fri Feb 19, 2010 4:53 pm

Zeal wrote:Just a stab in the dark here - Can anyone recommend any good opensource audio engines that would work with Windows and iPhone? I suppose I could just write a simple OpenAL wrapper, but I figured I would look for a more robust engine first...

*btw I have ZERO experience with audio programming on the iphone, but I am 99% sure it uses plain old OpenAL, so in theory any 'Windows' based OpenAL engine should work on iPhone as well, right?
That's what I do ... use Open AL for both.

There aren't a lot of choices when it comes to iPhone sound engines... I know some people who wrote their own mixers hooking up directly to low level iPhone OS audio APIs but mostly people just use Open AL.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Fri Feb 19, 2010 4:58 pm

I know OpenAL isnt super in depth, but I would still like to have some kind of wrapper for it. And I just dont have time to write my own. I was looking at...

http://deathtouchstudios.com/xoops/modu ... p?itemid=3

Assuming its plain old C and plain old openAL, that should work for both platforms right?
0 x

warmi
Gnoll
Posts: 674
Joined: Sun May 27, 2007 3:56 am
Location: USA

Re: Audio engine for Win & iPhone...

Post by warmi » Fri Feb 19, 2010 8:05 pm

Zeal wrote:I know OpenAL isnt super in depth, but I would still like to have some kind of wrapper for it. And I just dont have time to write my own. I was looking at...

http://deathtouchstudios.com/xoops/modu ... p?itemid=3

Assuming its plain old C and plain old openAL, that should work for both platforms right?
Yeah, I am pretty sure it will ... I wrote my own wrapper and it works out of the box on both Windows and the iPhone.
The only thing you would need to do is to handle application interruption ...

http://benbritten.com/2009/02/02/restar ... he-iphone/
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Fri Feb 19, 2010 11:11 pm

Can anyone recommend any other free openAL based engines/wrappers? I have been looking around all day and everything I have found is either 3+ years old, or looks solid but costs money (Bass, FMOD, ect...).

cAudio still looks like the best choice, but the forum is a ghost town...
0 x

Vectrex
Ogre Magi
Posts: 1266
Joined: Tue Aug 12, 2003 1:53 am
Location: Melbourne, Australia
Contact:

Re: Audio engine for Win & iPhone...

Post by Vectrex » Sat Feb 20, 2010 2:07 am

ogreoggsound is maintained in addons forum
ogreal gets some attention too but not as much
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sat Feb 20, 2010 2:54 am

I'm also about to look into audio for my iPhone game.

I use OgreOggSound in Project Utopia, and it's the best OpenAL wrapper for Ogre IMO. Though, perhaps it's too complex for the iPhone. So I'm going to use this as a starting point I think:

http://www.ogre3d.org/wiki/index.php/Op ... ll_version
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sat Feb 20, 2010 7:54 pm

Wow that "OpenAl SoundManager" link you posted looks like a great place to start. Im gonna play around with it... let me know if you get it working on iPhone!
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sat Feb 20, 2010 8:10 pm

The only problem is that it uses alut, which is now deprecated. Apple also removed it from their OpenAL framework (but left the symbols in, so even if you tried compiling alut separately, you need to rename all the functions etc).

It shouldn't be too difficult to swap it out with a custom wav loader (which is all it's used for). Check out the OpenAL iPhone sample found in the Dev Center, that has some nice sample code of how to use the AudioToolbox framework with OpenAL, which when hooked up, can load a whole host of iPhone compatible formats.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sat Feb 20, 2010 8:29 pm

It shouldn't be too difficult to swap it out with a custom wav loader (which is all it's used for).
Hmm I am looking through the SoundManager source now.. are you saying we should be able to break this dependency on alut if we just remove some 'wav loader' functions? I dont care about wav (thats what ogg is for).

*btw are we 100% sure ogg will work on iphone (would be really nice not to have to convert formats between platforms).
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sat Feb 20, 2010 8:50 pm

Zeal wrote:Hmm I am looking through the SoundManager source now.. are you saying we should be able to break this dependency on alut if we just remove some 'wav loader' functions? I dont care about wav (thats what ogg is for).
Ah right, well if you don't need wav then just remove all the wav/alut stuff. The other end of the stick is that the wiki SoundManager looks like it hasn't fully implemented ogg playback, but it should be simple enough to get it working.
*btw are we 100% sure ogg will work on iphone (would be really nice not to have to convert formats between platforms).
Yeah, it should work.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sat Feb 20, 2010 10:34 pm

Hmm have you ever built oggvorbis before? I downloaded both libogg and libvorbis from

http://xiph.org/downloads/

Ogg built just fine, but I had some trouble with libvorbis. It was bitching about some linker error with "_analysis_output_always". After some searching I found a guy saying to comment out this "_analysis_output_always" line in the vorbis.def file. Ok, whatever you say random guy on the internet. Anyway, it WORKED! So now libvorbis builds just fine (2 down 2 to go). However, every time I try and build libvorbisfile I get the following linker errors...

Code: Select all

1>Linking...
1>   Creating library C:\SDKs\OggVorbis\libvorbis\win32\VS2008\libvorbisfile\Win32\Debug/libvorbisfile.lib and object C:\SDKs\OggVorbis\libvorbis\win32\VS2008\libvorbisfile\Win32\Debug/libvorbisfile.exp
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_comment_clear referenced in function _ov_clear
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_info_clear referenced in function _ov_clear
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_dsp_clear referenced in function _ov_clear
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_block_clear referenced in function _ov_clear
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_headerin referenced in function __fetch_headers
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_idheader referenced in function __fetch_headers
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_comment_init referenced in function __fetch_headers
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_info_init referenced in function __fetch_headers
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_packet_blocksize referenced in function __initial_pcmoffset
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_halfrate referenced in function _ov_halfrate
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_halfrate_p referenced in function _ov_halfrate_p
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_restart referenced in function _ov_raw_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_read referenced in function _ov_pcm_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_pcmout referenced in function _ov_pcm_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_blockin referenced in function _ov_pcm_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_trackonly referenced in function _ov_pcm_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_info_blocksize referenced in function _ov_pcm_seek
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_block_init referenced in function __make_decode_ready
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_init referenced in function __make_decode_ready
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis referenced in function __fetch_and_process_packet
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_synthesis_lapout referenced in function _ov_crosslap
1>vorbisfile.obj : error LNK2019: unresolved external symbol _vorbis_window referenced in function _ov_crosslap
1>C:\SDKs\OggVorbis\libvorbis\win32\VS2008\libvorbisfile\Win32\Debug/libvorbisfile.dll : fatal error LNK1120: 22 unresolved externals
1>Build log was saved at "file://c:\SDKs\OggVorbis\libvorbis\win32\VS2008\libvorbisfile\Win32\Debug\BuildLog.htm"
1>libvorbisfile - 23 error(s), 17 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Gah why cant this ever be easy...
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sat Feb 20, 2010 10:41 pm

Ok nm it was depending on libvorbis, so I had to build them in order. Now that libvorbisfile uses libcorbis.lib, it links fine. So one last one to go (libvorbisenc), and of course this project builds a exe not a dll.. what the hell...

According to the SoundManager build instructions we need FOUR oggvorbis dlls, one is the "vorbisenc.dll"...
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sat Feb 20, 2010 11:03 pm

Zeal wrote:According to the SoundManager build instructions we need FOUR oggvorbis dlls, one is the "vorbisenc.dll"...
Don't bother with that, just stick with libvorbis and libvorbisfile. That's all I've ever had to use for OgreOggSound, OgreAL etc... And I would statically link it all.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sun Feb 21, 2010 12:36 am

Ah ok cool, I will try with just these.

An yeah I know i will have to build static libs for iphone, but i want to get this working on my windows box first.

BTW, will i get sound on the simulator? Dont have access to my test ipod touch atm...
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sun Feb 21, 2010 1:08 am

Zeal wrote:BTW, will i get sound on the simulator? Dont have access to my test ipod touch atm...
Yeah, when I tried the OpenAL sample it played in the simulator and on the device.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sun Feb 21, 2010 5:14 am

Well I tried to clear out all the 'wav' functions and references to alut, but I am getting some linker errors. I have the following libs...

OpenAL32.lib
libvorbisfile_static.lib
libvorbis_static.lib
libogg_static.lib

but get the following errors..

Code: Select all

1>Linking...
1>   Creating library C:\SDKs\SimEngine\Debug\SimEngine.lib and object C:\SDKs\SimEngine\Debug\SimEngine.exp
1>LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library
1>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcCloseDevice referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcDestroyContext referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcMakeContextCurrent referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcGetContextsDevice referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcGetCurrentContext referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alDeleteBuffers referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alDeleteSources referenced in function "public: virtual __thiscall SoundManager::~SoundManager(void)" (??1SoundManager@@UAE@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alDopplerVelocity referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alDopplerFactor referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alListenerf referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alListenerfv referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alGenSources referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alGenBuffers referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alIsExtensionPresent referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcCreateContext referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcOpenDevice referenced in function "public: bool __thiscall SoundManager::init(void)" (?init@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alGetString referenced in function "public: bool __thiscall SoundManager::checkALError(void)" (?checkALError@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alGetError referenced in function "public: bool __thiscall SoundManager::checkALError(void)" (?checkALError@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcGetString referenced in function "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall SoundManager::listAvailableDevices(void)" (?listAvailableDevices@SoundManager@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alcIsExtensionPresent referenced in function "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall SoundManager::listAvailableDevices(void)" (?listAvailableDevices@SoundManager@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcePlay referenced in function "public: void __thiscall SoundManager::testSound(char const *)" (?testSound@SoundManager@@QAEXPBD@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcef referenced in function "public: void __thiscall SoundManager::testSound(char const *)" (?testSound@SoundManager@@QAEXPBD@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcei referenced in function "public: void __thiscall SoundManager::testSound(char const *)" (?testSound@SoundManager@@QAEXPBD@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alBufferData referenced in function "public: void __thiscall SoundManager::testSound(char const *)" (?testSound@SoundManager@@QAEXPBD@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alGetSourcei referenced in function "public: bool __thiscall SoundManager::playAudio(unsigned int,bool)" (?playAudio@SoundManager@@QAE_NI_N@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcePause referenced in function "public: bool __thiscall SoundManager::pauseAudio(unsigned int)" (?pauseAudio@SoundManager@@QAE_NI@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcePausev referenced in function "public: bool __thiscall SoundManager::pauseAllAudio(void)" (?pauseAllAudio@SoundManager@@QAE_NXZ)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourceStop referenced in function "public: bool __thiscall SoundManager::stopAudio(unsigned int)" (?stopAudio@SoundManager@@QAE_NI@Z)
1>libOpenAl.obj : error LNK2019: unresolved external symbol __imp__alSourcefv referenced in function "public: bool __thiscall SoundManager::setSound(unsigned int,class Ogre::Vector3,class Ogre::Vector3,class Ogre::Vector3,float,bool,bool,float)" (?setSound@SoundManager@@QAE_NIVVector3@Ogre@@00M_N1M@Z)
1>C:\SDKs\SimEngine\Debug\SimEngine.exe : fatal error LNK1120: 29 unresolved externals
Maybe this is because I am not linking Alut or perhaps that 'libvorbisenc.lib' (whatever it is for)... Have you had any luck building this thing?
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Sun Feb 21, 2010 11:04 pm

Spent the whole day getting this audio crap working, but finally did it. Ogg files now play on the device. :) (Not without problems though)

This helped, for when you get round to building it for the iPhone: (the 2nd option)

http://projectsymphony.blogspot.com/200 ... phone.html

I got it working with the beast that is OgreOggSound in the end, because that's the library I'm most familiar with. But I'm sure OgreAL and the wiki SoundManager will work as well.

Btw, those errors look like you're not actually linking OpenAL, so double check that.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Sun Feb 21, 2010 11:23 pm

Btw, those errors look like you're not actually linking OpenAL
Hah of course thats the first thing I thought! But OpenAL32.lib was there.. but why oh why didnt it work... turns out I was trying to link to the 64 bit version :) (which of course is STILL called OpenAL32.lib just to screw with you). When I switched to 32 bit everything linked up just fine.

Grats on getting it working! So youre using OgreOgg eh? Did you strip out the Alut dependencies? Was it hard? I THINK I got rid of all the alut dependencies in the SoundManager (the thing is linking ok without the alut.libs, so thats gotta be a good sign...).

*maybe I should take a second look at OgreOgg.. I dismissed it because it looked like (at a glance at least) that it had some tight couplings with Ogre. I dont want my audio engine to depend on scene nodes, ect...
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Mon Feb 22, 2010 12:10 am

Zeal wrote:Did you strip out the Alut dependencies?
OgreOgg doesn't use alut, has it's own wav stuff.
I dismissed it because it looked like (at a glance at least) that it had some tight couplings with Ogre. I dont want my audio engine to depend on scene nodes, ect...
Your prayer has been answered just now: http://www.ogre3d.org/forums/viewtopic.php?f=1&t=55767 :D
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Tue Feb 23, 2010 7:42 pm

Ok I got cAudio working fine on my windows box, now I am ready to get this bad boy going on my mac/iphone. However, I took a look at that SDL_Mixer link you posted.... I am confused - what the hell is SDL_Mixer and why do I need it? I thought all I would need to do is build OpenAL32, and the ogg/vorbis libs...

Can you provide me with the exact steps you had to take to get oggs playing on your iphone (I assume it should be the same steps for me, I will just be replacing your OgreOgg with cAudio).
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Tue Feb 23, 2010 8:19 pm

At the bottom of that post, you should follow the second option. All you have to do is download Cocos2d, compile their libvorbis target (Tremor) and you're away. :)
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Tue Feb 23, 2010 8:59 pm

Ah ok so the only part you wanted me to see was that 'cocos2d' part. The top half of that link can be ignored? Ok I built a "libvorbis.a" thanks to cocos2d (do we know what the licence is on this thing?).

But I still need to download and build OpenAL32 right? Did you use the "OpenAL 1.1 Core SDK" from...

http://connect.creativelabs.com/openal/ ... Items.aspx
0 x

User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
Contact:

Re: Audio engine for Win & iPhone...

Post by DanielSefton » Tue Feb 23, 2010 9:11 pm

For OpenAL, just add the OpenAL.framework which is included in the iPhone SDK. It's all prebuilt and ready to use. :)

When including, use e.g. #include <OpenAL/al.h>

The license is in the COPYING file in the Tremor source folder. Looks like a BSD-style license.
0 x

User avatar
Zeal
Ogre Magi
Posts: 1260
Joined: Mon Aug 07, 2006 6:16 am
Location: Colorado Springs, CO USA

Re: Audio engine for Win & iPhone...

Post by Zeal » Tue Feb 23, 2010 9:32 pm

Ok this isnt looking good (building cAudio), I am getting hundreds of build errors (and I dont just mean 'cant find header x' errors). This thing clearly wasnt designed with mac/iphone in mind.

Soooo... you say you had good luck with OgreOgg? I guess I can deal with the whole 'tight ogre coupling', I just need to get this thing working.

Can you describe how you built OgreOgg? Is there a xcode project for it or did you make your own?
0 x

Post Reply