Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge branch 'OpenAL'
* OpenAL:
  Changed SoundTouch to use float samples, allowing SSE to be used. Made the DPL2 decoder disabled by default. Re-added the audio hack used by the Accurate VBeam emulation option.
  Added a latency setting to the audio settings. Removed the Sample Rate setting.  It is now hardcoded to 48000hz (accurate audio timing).
  Skipped timestretching if the emulator is running below 10% speed to prevent buffer overflows.
  Removed the synchronisation between the CPU thread and the audio thread. Added code to detect and resume from buffer underruns. Disabled the ability to change the DPL2 option after the game has started. Fixed a memory leak that occurred in the DPL2 decoder. Fixed the OSX build.
  Build fix
  Added a Dolby Pro Logic II (DPL2) decoder in the OpenAL backend.  DPL2 audio is decoded to 5.1.  Code adapted from ffdshow. Added an option in the DSP settings to disable the DPL2 decoder in case Dolphin incorrectly detects a 5.1 audio system. Updated the OpenAL files to OpenAL Soft 1.15.1 in the Windows build.
  Removed the system timing hack which was activated when the Accurate VBeam option was enabled.
  Fixed the include directories in Audio Common for the Windows 32bit build.
  Fixed the include directories in Audio Common for the Windows build.
  Messed up the static include line
  Fix include paths and compiling in Linux. Externals soundtouch is 1.7.1, while Ubuntu 12.10 is 1.6.x. Externals soundtouch is compiled with integer samples, while ubuntu is compiled with float samples. Float samples is probably the more common route. If you're going to use soundtouch, you should probably use SAMPLETYPE instead of explicitly choosing short. This probably breaks the windows build since its includes aren't setup.
  OSX: typedef signed char BOOL
  OSX build fix
  Build fix
  Added audio time stretching by using the SoundTouch library.
  Implemented correct audio timing.
  OpenAL for Windows initial commit
  • Loading branch information
skidau committed Jan 15, 2013
2 parents 86ee560 + 6d4a566 commit 0a4272c
Show file tree
Hide file tree
Showing 64 changed files with 10,096 additions and 95 deletions.
13 changes: 13 additions & 0 deletions CMakeLists.txt
Expand Up @@ -405,6 +405,19 @@ else()
set(LZO lzo2)
endif()

if(OPENAL_FOUND)
if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
check_lib(SOUNDTOUCH SoundTouch soundtouch/soundtouch.h QUIET)
endif()
if (SOUNDTOUCH_FOUND)
message("Using shared soundtouch")
else()
message("Using static soundtouch from Externals")
add_subdirectory(Externals/soundtouch)
include_directories(Externals)
endif()
endif()

if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
include(FindSDL2 OPTIONAL)
endif()
Expand Down
Binary file added Externals/OpenAL/Win32/EFX-Util.lib
Binary file not shown.
Binary file added Externals/OpenAL/Win32/OpenAL32.dll
Binary file not shown.
Binary file added Externals/OpenAL/Win32/OpenAL32.lib
Binary file not shown.
Binary file added Externals/OpenAL/Win32/soft_oal.dll
Binary file not shown.
Binary file added Externals/OpenAL/Win32/wrap_oal.dll
Binary file not shown.
Binary file added Externals/OpenAL/Win64/EFX-Util.lib
Binary file not shown.
Binary file added Externals/OpenAL/Win64/OpenAL32.dll
Binary file not shown.
Binary file added Externals/OpenAL/Win64/OpenAL32.lib
Binary file not shown.
Binary file added Externals/OpenAL/Win64/soft_oal.dll
Binary file not shown.
Binary file added Externals/OpenAL/Win64/wrap_oal.dll
Binary file not shown.
422 changes: 422 additions & 0 deletions Externals/OpenAL/include/EFX-Util.h

Large diffs are not rendered by default.

0 comments on commit 0a4272c

Please sign in to comment.