Skip to content

Latest commit

 

History

History
 
 

windows

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Audio libraries for Windows

The G3N engine audio support currently depends on the following external libraries:

  • OpenAL - for spatial audio
  • libogg - for Ogg container format
  • libvorbis - for vorbis decoder support
  • libvorbisfile - for reading/decoding ogg vorbis files

These libraries are easily installed in Linux systems using the distribution package manager.

For Windows, the directory <GOPATH>/src/github.com/hecate-tech/engine/audio/windows contains the sources of these libraries, and the subdirectory bin contains the compiled DLLs, used during the link process. To run a G3N application in Windows you will need to copy these DLLs to the directory from which you will run your application. It is recommended to avoid copying them to the Windows system directory.

Building the DLLs from source

The library sources were obtained from:

The original file libvorbis-1.3.5/win32/VS2010/libogg.props was changed to setup libogg version and location.

If you want to build the DLLs from source instead of using the supplied DLLs you can use the following procedure:

  1. Download and install Microsoft Studio Community from https://www.visualstudio.com/downloads/. Under the Workloads tab, select Desktop development with C++. We are assuming here that Microsoft Studio 2017 will be used. If you are using the previous version of Microsoft Studio replace Microsoft Studio 15 2017 by Microsoft Studio 14 2015 in the CMake command line in item 4.

  2. Download and install CMake from https://cmake.org/download/.

  3. Execute the Developer Command Prompt for VS 2017 (or the equivalent for the 2015 version) installed by Microsoft Visual Studio. It is a command prompt window with environment variables correctly initialized to use the MS compiler and tools.

  4. In the command prompt navigate to the build directory inside the openal-soft-1.18.2 directory, and then execute:

    >mkdir build
    >cd build
    >cmake -G "Visual Studio 15 2017 Win64" ..
    

    It is important to check in the messages generated by CMake that OpenAL will be built with support for DirectSound. If everything is OK, a file named OpenAL.sln should have been generated in this directory (along with many others).

  5. Execute Visual Studio and from its menu select Open -> Project/Solution.... Select the file OpenAL.sln generated previously by CMake. In the Visual Studio toolbar, below the menu, select the build mode Release and x64 architecture. Then select Build -> Build Solution in the menu to start the build. Once the build is complete the file OpenAL.dll should have been generated in the directory build/Release.

  6. Execute Visual Studio and from its menu select Open -> Project/Solution.... Select the file libogg-1.3.3\win32\VS2015\libogg_dynamic.sln. In the Visual Studio toolbar, below the menu, select the build mode Release and x64 architecture. Then select the menu Build -> Build Solution to start the build. If during the build Visual Studio indicates an error related to the installed platform toolset you may need to retarget the solution, selecting the menu Project -> Retarget solution" and then try to build again. If everything goes OK then libogg.dll should be in the directory: libogg-1.3.3\win32\VS2015\x64\Release.

  7. Execute Visual Studio and from its menu select Open -> Project/Solution.... Select the file libvorbis-1.3.5\win32\VS2010\vorbis_dynamic.sln. In the Visual Studio toolbar, below the menu, select the build mode Release and x64 architecture. Then select the menu Build -> Build Solution to start the build. If during the build Visual Studio indicates an error related to the installed platform toolset you may need to retarget the solution, selecting the menu Project -> Retarget solution" and then try the build again. If everything goes OK, then libvorbis.dll and libvorbisfile.dll should be in the directory: libvorbis-1.3.5\win32\VS2010\x64\Release.

  8. Copy the dlls: OpenAL32.dll, libogg.dll, libvorbis.dll and libvorbisfile.dll to the directory from which you will execute a G3N application.