Page 2 of 2

Posted: Sun Mar 07, 2010 8:03 am
by GameDude
Thanks, I'll try that.

Posted: Mon Mar 08, 2010 3:40 am
by GameDude
The error seems to be coming from cAudioPlatform.h

Posted: Mon Mar 08, 2010 4:19 pm
by Arcoroc
GameDude wrote:The error seems to be coming from cAudioPlatform.h
Have you tried on the latest SVN?

Posted: Tue Mar 09, 2010 8:23 pm
by wildrj
Also i cant help fix the problem if you dont post the error that its giving

Posted: Wed Mar 10, 2010 9:12 am
by Nox
Hi, are you going to add x64 support as well? At least adding the source instate of the libs would be nice :) . Furthermore is there a specific reason why you use a define for activating/deactivating threading? I just wondered about that.
But anyway this library is very useful and has a nice interface :!:

Posted: Wed Mar 10, 2010 6:05 pm
by Dark_Kilauea
We do have a separate source package for 2.0.0 on our sourceforge page. I do know that there were some bugs in 2.0.0 with 64 bit support that have been fixed in the SVN trunk. We will probably release packages for 64 bit platforms in our next release (which is coming up shortly and will contain a bunch of bug fixes, especially related to memory management).

As for the define, when it is deactivated, it should completely remove all thread code from the library, mainly used for those that don't want any threading to be compiled in. We decided to make this a compile time decision, since activating and deactivating (which changes how you need to use certain functions of the lib, like calling update() on the manager every frame) didn't seem all too useful to change while the application was running. If you can think of a reason that toggling threading during runtime would be useful, we may put it in ;)

Posted: Wed Mar 10, 2010 8:33 pm
by Nox
Well okay. It is just strange that such a behaviour is fixed in a dll/so but of course this is just my "feeling" and your reason is even weighty.
What is the reason that you add the deps as binaries and not as subprojects (source)?

Posted: Wed Mar 10, 2010 8:37 pm
by Dorth
Hmm, wait, what?
Am I right in thinking you release a single compiled lib/dll with an external define to choose a code path? If so, how do you suppose the compiler can retrofit the define option code you had not selected on compile time if people choose that define? (for example, if you did not define thread, how exactly is that code going to appear in the library once defined externally)

Of course, if you release twice the lib, once for each possible define then that's fine, though strange.

Re: cAudio 2.0.0 Release!

Posted: Fri Sep 23, 2011 3:17 am
by kevinsbro
Can someone please shoe me how to load multiple sound effects from a single buffer in cAudio

Re: cAudio 2.0.0 Release!

Posted: Wed Nov 16, 2011 7:52 am
by Rocko Bonaparte
How do I get the 2.1.0 release to build on a 64-bit windows with Visual Studio 2010? I updated the project automatically for 2010 and that looks okay--I think. I am getting horrendous linker errors. I wonder if the dependency DLLs are compatible with 64-bit:

Code: Select all

 
1>------ Build started: Project: cAudio, Configuration: Debug x64 ------
2>------ Build started: Project: EAXLegacyPreset, Configuration: Debug x64 ------
2>Build started 11/16/2011 1:46:54 AM.
1>Build started 11/16/2011 1:46:54 AM.
1>InitializeBuildStatus:
1>  Touching "obj/Debug\cAudio.unsuccessfulbuild".
1>ClCompile:
1>  All outputs are up-to-date.
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(E:\coding\cAudio2.1.0-Win32-Msvc_64\lib/win32-visual\cAudio.dll) does not match the Linker's OutputFile property value (E:\coding\cAudio2.1.0-Win32-Msvc_64\lib\win32-visual\cAudio_d.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(cAudio) does not match the Linker's OutputFile property value (cAudio_d). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
2>InitializeBuildStatus:
2>  Touching "Debug\EAXLegacyPreset.unsuccessfulbuild".
2>ClCompile:
2>  All outputs are up-to-date.
1>Link:
1>     Creating library lib/win32-visual\cAudio.lib and object lib/win32-visual\cAudio.exp
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcIsExtensionPresent referenced in function "public: bool __cdecl cAudio::cAudioCapture::checkCaptureExtension(void)" (?checkCaptureExtension@cAudioCapture@cAudio@@QEAA_NXZ)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alcIsExtensionPresent
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcGetString referenced in function "protected: bool __cdecl cAudio::cAudioCapture::initOpenALDevice(void)" (?initOpenALDevice@cAudioCapture@cAudio@@IEAA_NXZ)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alcGetString
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcCaptureOpenDevice referenced in function "protected: bool __cdecl cAudio::cAudioCapture::initOpenALDevice(void)" (?initOpenALDevice@cAudioCapture@cAudio@@IEAA_NXZ)
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcCaptureCloseDevice referenced in function "protected: void __cdecl cAudio::cAudioCapture::shutdownOpenALDevice(void)" (?shutdownOpenALDevice@cAudioCapture@cAudio@@IEAAXXZ)
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcCaptureSamples referenced in function "public: virtual void __cdecl cAudio::cAudioCapture::updateCaptureBuffer(bool)" (?updateCaptureBuffer@cAudioCapture@cAudio@@UEAAX_N@Z)
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcGetIntegerv referenced in function "public: virtual void __cdecl cAudio::cAudioCapture::updateCaptureBuffer(bool)" (?updateCaptureBuffer@cAudioCapture@cAudio@@UEAAX_N@Z)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alcGetIntegerv
1>cAudioSource.obj : error LNK2001: unresolved external symbol __imp_alcGetIntegerv
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcCaptureStart referenced in function "public: virtual bool __cdecl cAudio::cAudioCapture::beginCapture(void)" (?beginCapture@cAudioCapture@cAudio@@UEAA_NXZ)
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcCaptureStop referenced in function "public: virtual void __cdecl cAudio::cAudioCapture::stopCapture(void)" (?stopCapture@cAudioCapture@cAudio@@UEAAXXZ)
1>cFilter.obj : error LNK2001: unresolved external symbol __imp_alGetString
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alGetString referenced in function "protected: bool __cdecl cAudio::cAudioCapture::checkError(void)" (?checkError@cAudioCapture@cAudio@@IEAA_NXZ)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alGetString
1>cAudioSource.obj : error LNK2001: unresolved external symbol __imp_alGetString
1>cEffect.obj : error LNK2001: unresolved external symbol __imp_alGetString
1>cAudioCapture.obj : error LNK2019: unresolved external symbol __imp_alcGetError referenced in function "protected: bool __cdecl cAudio::cAudioCapture::checkError(void)" (?checkError@cAudioCapture@cAudio@@IEAA_NXZ)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alcGetError
1>cFilter.obj : error LNK2001: unresolved external symbol __imp_alGetError
1>cAudioEffects.obj : error LNK2019: unresolved external symbol __imp_alGetError referenced in function "public: void __cdecl cAudio::cAudioEffects::checkEFXSupportDetails(void)" (?checkEFXSupportDetails@cAudioEffects@cAudio@@QEAAXXZ)
1>cAudioManager.obj : error LNK2001: unresolved external symbol __imp_alGetError
1>cAudioSource.obj : error LNK2001: unresolved external symbol __imp_alGetError
1>cEffect.obj : error LNK2001: unresolved external symbol __imp_alGetError
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alcDestroyContext referenced in function "public: virtual bool __cdecl cAudio::cAudioManager::initialize(char const *,int,int)" (?initialize@cAudioManager@cAudio@@UEAA_NPEBDHH@Z)
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alcMakeContextCurrent referenced in function "public: virtual bool __cdecl cAudio::cAudioManager::initialize(char const *,int,int)" (?initialize@cAudioManager@cAudio@@UEAA_NPEBDHH@Z)
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alcCloseDevice referenced in function "public: virtual bool __cdecl cAudio::cAudioManager::initialize(char const *,int,int)" (?initialize@cAudioManager@cAudio@@UEAA_NPEBDHH@Z)
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alcCreateContext referenced in function "public: virtual bool __cdecl cAudio::cAudioManager::initialize(char const *,int,int)" (?initialize@cAudioManager@cAudio@@UEAA_NPEBDHH@Z)
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alcOpenDevice referenced in function "public: virtual bool __cdecl cAudio::cAudioManager::initialize(char const *,int,int)" (?initialize@cAudioManager@cAudio@@UEAA_NPEBDHH@Z)
1>cAudioManager.obj : error LNK2019: unresolved external symbol __imp_alGetProcAddress referenced in function "public: bool __cdecl cAudio::cEFXFunctions::CheckEFXSupport(struct ALCdevice_struct *)" (?CheckEFXSupport@cEFXFunctions@cAudio@@QEAA_NPEAUALCdevice_struct@@@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alcGetContextsDevice referenced in function "public: __cdecl cAudio::cAudioSource::cAudioSource(class cAudio::IAudioDecoder *,struct ALCcontext_struct *,struct cAudio::cEFXFunctions *)" (??0cAudioSource@cAudio@@QEAA@PEAVIAudioDecoder@1@PEAUALCcontext_struct@@PEAUcEFXFunctions@1@@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alGenSources referenced in function "public: __cdecl cAudio::cAudioSource::cAudioSource(class cAudio::IAudioDecoder *,struct ALCcontext_struct *,struct cAudio::cEFXFunctions *)" (??0cAudioSource@cAudio@@QEAA@PEAVIAudioDecoder@1@PEAUALCcontext_struct@@PEAUcEFXFunctions@1@@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alGenBuffers referenced in function "public: __cdecl cAudio::cAudioSource::cAudioSource(class cAudio::IAudioDecoder *,struct ALCcontext_struct *,struct cAudio::cEFXFunctions *)" (??0cAudioSource@cAudio@@QEAA@PEAVIAudioDecoder@1@PEAUALCcontext_struct@@PEAUcEFXFunctions@1@@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourcePlay referenced in function "public: virtual bool __cdecl cAudio::cAudioSource::play(void)" (?play@cAudioSource@cAudio@@UEAA_NXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourceQueueBuffers referenced in function "public: virtual bool __cdecl cAudio::cAudioSource::play(void)" (?play@cAudioSource@cAudio@@UEAA_NXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourcei referenced in function "public: virtual bool __cdecl cAudio::cAudioSource::play(void)" (?play@cAudioSource@cAudio@@UEAA_NXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourcePause referenced in function "public: virtual void __cdecl cAudio::cAudioSource::pause(void)" (?pause@cAudioSource@cAudio@@UEAAXXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourceStop referenced in function "public: virtual void __cdecl cAudio::cAudioSource::stop(void)" (?stop@cAudioSource@cAudio@@UEAAXXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourceUnqueueBuffers referenced in function "public: virtual bool __cdecl cAudio::cAudioSource::update(void)" (?update@cAudioSource@cAudio@@UEAA_NXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alGetSourcei referenced in function "public: virtual bool __cdecl cAudio::cAudioSource::update(void)" (?update@cAudioSource@cAudio@@UEAA_NXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alDeleteBuffers referenced in function "public: virtual void __cdecl cAudio::cAudioSource::release(void)" (?release@cAudioSource@cAudio@@UEAAXXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alDeleteSources referenced in function "public: virtual void __cdecl cAudio::cAudioSource::release(void)" (?release@cAudioSource@cAudio@@UEAAXXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSource3f referenced in function "public: virtual void __cdecl cAudio::cAudioSource::setPosition(class cAudio::cVector3 const &)" (?setPosition@cAudioSource@cAudio@@UEAAXAEBVcVector3@2@@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSourcef referenced in function "public: virtual void __cdecl cAudio::cAudioSource::setRolloffFactor(float const &)" (?setRolloffFactor@cAudioSource@cAudio@@UEAAXAEBM@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alGetSourcefv referenced in function "public: virtual class cAudio::cVector3 const __cdecl cAudio::cAudioSource::getPosition(void)const " (?getPosition@cAudioSource@cAudio@@UEBA?BVcVector3@2@XZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alGetSourcef referenced in function "public: virtual float const __cdecl cAudio::cAudioSource::getRolloffFactor(void)const " (?getRolloffFactor@cAudioSource@cAudio@@UEBA?BMXZ)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alBufferData referenced in function "private: bool __cdecl cAudio::cAudioSource::stream(unsigned int)" (?stream@cAudioSource@cAudio@@AEAA_NI@Z)
1>cAudioSource.obj : error LNK2019: unresolved external symbol __imp_alSource3i referenced in function "private: void __cdecl cAudio::cAudioSource::updateEffect(unsigned int,bool)" (?updateEffect@cAudioSource@cAudio@@AEAAXI_N@Z)
1>cListener.obj : error LNK2019: unresolved external symbol __imp_alListener3f referenced in function "public: virtual void __cdecl cAudio::cListener::setPosition(class cAudio::cVector3 const &)" (?setPosition@cListener@cAudio@@UEAAXAEBVcVector3@2@@Z)
1>cListener.obj : error LNK2019: unresolved external symbol __imp_alListenerfv referenced in function "public: virtual void __cdecl cAudio::cListener::setDirection(class cAudio::cVector3 const &)" (?setDirection@cListener@cAudio@@UEAAXAEBVcVector3@2@@Z)
1>cListener.obj : error LNK2019: unresolved external symbol __imp_alListenerf referenced in function "public: virtual void __cdecl cAudio::cListener::setMasterVolume(float const &)" (?setMasterVolume@cListener@cAudio@@UEAAXAEBM@Z)
1>cListener.obj : error LNK2019: unresolved external symbol __imp_alGetListenerf referenced in function "public: virtual float __cdecl cAudio::cListener::getMetersPerUnit(void)const " (?getMetersPerUnit@cListener@cAudio@@UEBAMXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_comment referenced in function "public: __cdecl cAudio::cOggDecoder::cOggDecoder(class cAudio::IDataSource *)" (??0cOggDecoder@cAudio@@QEAA@PEAVIDataSource@1@@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_info referenced in function "public: __cdecl cAudio::cOggDecoder::cOggDecoder(class cAudio::IDataSource *)" (??0cOggDecoder@cAudio@@QEAA@PEAVIDataSource@1@@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_open_callbacks referenced in function "public: __cdecl cAudio::cOggDecoder::cOggDecoder(class cAudio::IDataSource *)" (??0cOggDecoder@cAudio@@QEAA@PEAVIDataSource@1@@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_clear referenced in function "public: virtual __cdecl cAudio::cOggDecoder::~cOggDecoder(void)" (??1cOggDecoder@cAudio@@UEAA@XZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_seekable referenced in function "public: virtual bool __cdecl cAudio::cOggDecoder::isSeekingSupported(void)" (?isSeekingSupported@cOggDecoder@cAudio@@UEAA_NXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_read referenced in function "public: virtual int __cdecl cAudio::cOggDecoder::readAudioData(void *,int)" (?readAudioData@cOggDecoder@cAudio@@UEAAHPEAXH@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_raw_seek referenced in function "public: virtual bool __cdecl cAudio::cOggDecoder::setPosition(int,bool)" (?setPosition@cOggDecoder@cAudio@@UEAA_NH_N@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_time_seek referenced in function "public: virtual bool __cdecl cAudio::cOggDecoder::seek(float,bool)" (?seek@cOggDecoder@cAudio@@UEAA_NM_N@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_time_tell referenced in function "public: virtual bool __cdecl cAudio::cOggDecoder::seek(float,bool)" (?seek@cOggDecoder@cAudio@@UEAA_NM_N@Z)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_time_total referenced in function "public: virtual float __cdecl cAudio::cOggDecoder::getTotalTime(void)" (?getTotalTime@cOggDecoder@cAudio@@UEAAMXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_pcm_total referenced in function "public: virtual int __cdecl cAudio::cOggDecoder::getTotalSize(void)" (?getTotalSize@cOggDecoder@cAudio@@UEAAHXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_raw_total referenced in function "public: virtual int __cdecl cAudio::cOggDecoder::getCompressedSize(void)" (?getCompressedSize@cOggDecoder@cAudio@@UEAAHXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_pcm_tell referenced in function "public: virtual int __cdecl cAudio::cOggDecoder::getCurrentPosition(void)" (?getCurrentPosition@cOggDecoder@cAudio@@UEAAHXZ)
1>cOggDecoder.obj : error LNK2019: unresolved external symbol ov_raw_tell referenced in function "public: virtual int __cdecl cAudio::cOggDecoder::getCurrentCompressedPosition(void)" (?getCurrentCompressedPosition@cOggDecoder@cAudio@@UEAAHXZ)
1>lib/win32-visual\cAudio_d.dll : fatal error LNK1120: 53 unresolved externals
2>  main.cpp
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:02.64
 

Re: cAudio 2.0.0 Release!

Posted: Wed Nov 16, 2011 10:58 am
by serengeor
1) use code tags
2) linker errors are solved the same way with every lib afaik, so why not just research how to solve them instead of asking it every time? Just try searching for "unresolved external symbol" in irr forums. I'm sure you'll see many results and solutions to them should be almost the same. (Correct me if I'm wrong about this)

Maybe someone should create wiki page or forum thread on how to solve linker errors?

Re: cAudio 2.0.0 Release!

Posted: Wed Nov 16, 2011 2:57 pm
by Rocko Bonaparte
serengeor wrote:1) use code tags
2) linker errors are solved the same way with every lib afaik, so why not just research how to solve them instead of asking it every time? Just try searching for "unresolved external symbol" in irr forums. I'm sure you'll see many results and solutions to them should be almost the same. (Correct me if I'm wrong about this)

Maybe someone should create wiki page or forum thread on how to solve linker errors?
1) Fine, sure
2) When it's my own project and that stuff is spewed out, I can solve it fine and dandy. When I'm trying to build somebody else's project I usually try to go and ask them what is up. I guess I've already technically done something non-kosher by importing this to 2010, and I suppose anything from that is my own fault. But those symbols are particular to this project and I wouldn't know what is not configured correctly. It's supposed to be "open solution and build project."

Update: I did a dumpbin on openal32.dll and I see it is 64-bit. So that isn't going to be a valid DLL for my 64-bit project. I don't really get it; Creative Labs' site has the installer, it says it's compatible with 32-bit or 64-bit, but really it looks like it's just a 32-bit application. I see mention of openal64.dll online but I haven't found a source for it yet.

Update 2: The one Creative installed was indeed 64-bit. Who names a 64-bit dll "openal32.dll?" I guess that's cool on Windows since 64-bit DLLs get put in system32 :roll:. I just looks like the 64-bit project isn't really for 64-bit stuff.

Re: cAudio 2.0.0 Release!

Posted: Thu Nov 24, 2011 8:31 pm
by Nalin
If you are compiling from the cAudio source, it only includes 32-bit .lib files for its dependencies.
\cAudio\dependencies\Libs\windows

If you want a 64-bit cAudio .dll file, you need to make 64-bit versions of all those dependencies first. I have a 64-bit version of cAudio working just fine, except I statically compile it with my application, along with libvorbisidec, so unfortunately I can't give you any .dll/.lib files.