irrKlang Changelog

What's new in irrKlang 1.5.0

May 8, 2014
  • Added 64 bit support. There is now a separate irrKlang SDK for 64 bit builds
  • Added support for unicode file names. irrKlang now uses UTF8 internally on all operating systems. If you are running it on Windows, and want to use wchar_t types, you can use the irrKlang provided function makeUTF8fromUTF16string() to convert your wchar_t* string to a char* string.
  • In the .NET version of irrKlang, the API hasn't changed, but irrklang now supports unicode file names there automatically as well.
  • Added support for playing back 24 bit flac files
  • Uses less resources on linux now: PCM handles are now closed as soon as possible, freeing resources much earlier.

New in irrKlang 1.4.0b (Mar 14, 2013)

  • Improved Linux compatibility: Some games using irrKlang are now released on Valves "Steam for Linux" and now also work there nicely with this update.
  • This release is fully binary compatible with irrKlang 1.4.0.

New in irrKlang 1.4.0 (Jun 2, 2012)

  • Fixed a potential crash in the windows version, when using DirectSound8
  • Improved speed of the Windows version of irrKlang by about 20%
  • irrKlang now also works with newer Linux distributions (like Ubuntu 12), which moved the ALSA lib file into a new directory.
  • Cleared up some inconsistencies in the documentation
  • Removed a very small memory leak in Linux and Mac OS X

New in irrKlang 1.3.0b (Jul 29, 2010)

  • Added support for .NET framework 4.
  • Fixed a problem with audio recording: GUIDs were not correctly decoded for some devices, causing manual device selection to fail on Windows.

New in irrKlang 1.3.0 (Feb 18, 2010)

  • There is now the possibility to capture the mixed output audio data from irrKlang, using the ISoundMixedOutputReceiver interface. Can be used to store the sound output as .wav file or for creating an Oscillograph and similar.
  • The movement speed of 3d sound listeners has been ignored in previous releases for 3d sound doppler effects, this has been corrected now.
  • irrKlang now also runs on 64 bit linux systems. It previously looked for the alsa lib in /usr/lib/libasound.so, but on 64 bit system this is located in /usr/lib32/libasound.so. This is fixed now.

New in irrKlang 1.2.0 (Nov 20, 2009)

  • Added .flac file playback support. Implemented as plugin, ikpFlac.dll.
  • Fixed a bug causing the volume of 3D sounds not to be set correctly when using DirectSound8 and playing more than one 3D sound of the same file at the same time.
  • File formats with unknown extensions are now loaded by Plugins only if they could not be loaded by the internal decoders.
  • Several API documentation updates and improvements.
  • C++ documentation now has search functionality
  • Replaced .chm documentation files now with plain .html files

New in irrKlang 1.1.3b (Jan 14, 2009)

  • [This update only changes the implementation, the interfaces all remain the same, so only the irrKlang.dll file needs to be replaced since version 1.1.3.]
  • Small bug fix for the DirectSound drivers: Looped streamed sounds sometimes restarted with a small pause (~10 ms) in between.
  • The ISound and ISoundSource classes in irrKlang.NET now implement the IDisposable interface, so it is now easily possible to free their resources manually.
  • The .NET version now uses less memory (earlier unmanaged resource disposal).

New in irrKlang 1.1.2 (Oct 14, 2008)

  • Added support to play back 24 bit wave files.
  • The DirectSound drivers now use more aggressive sound buffer sharing, causing irrKlang to use a lot less memory and also speeding it up a lot when playing a lot of big sounds.
  • There is now a way to access the internal used audio interfaces (ALSA, DirectSound, DirectSound8, WinMM, CoreAudio) using ISoundEngine::getInternalAudioInterface().
  • There are now two .NET versions of irrKlang available, one for the .NET CLR 1.1 and one for .NET CLR 2.0 (.NET Framework 2, 3 and 3.5). Of course, you can still use every version with every project, this is mainly to reduce the size of installers. See details in readme.txt
  • It is now possible in the .NET version to access the decoded sample audio data of non-streamed sounds using ISound.SampleData
  • It is now possible in the .NET version to access the recorded audio data directly using IAudioRecorder.RecordedAudioData
  • Fixed a bug in the .NET version of the method EnableCompressorSoundEffect() which totally skrewed up its parameters.
  • Fixed a bug causing the AudioRecorder only to work for one recording session in DirectSound.
  • Fixed a bug causing the irrklang DirectSound driver to start playing the sound when it changing its 'looped' flag when the sound is paused.
  • There is now a new example for C# available which shows how to use irrKlang with Windows.Forms.
  • The forced streaming treshold has been adjusted to 2MB
  • Fixed some documentation mistakes in ISoundEngine::addSoundSourceFromPCMData

New in irrKlang 1.1.0 (Jun 18, 2008)

  • Several speed optimizations and memory usage improvements.
  • It is now possible to directly access the decoded PCM sample data of every loaded sound source. Use ISoundSource::getSampleData() for this.
  • Fixed a bug causing the UserData object and other resources not to be garbage collected when using ISoundStopEventReceiver in the .NET version of irrKlang.
  • Fixed a bug causing the sudden end of sound loops under very rare circumstances.
  • The 'Could not init COM' warning was senseless and has been removed.

New in irrKlang 1.0.3 (Dec 4, 2007)

  • irrKlang now supports Power PCs (PPC). All features and file formats except Module playback (.mod, .it, .xm, .s3m) are now supported on this platform.
  • There is now a function to enumerate available audio devices. Select a device ID from this list to let irrKlang use a specific audio device.
  • The sound stop event receiver now has an additional parameter, describing the reason why the sound has been stopped.
  • irrKlang.NET is now a signed assembly to work around some security hassle Microsoft introduced on Vista.
  • On newer linux versions (such as Ubuntu 7.10), irrKlang sometimes would play sound too fast or with a lot of noise, this is repaired now.
  • The Linux version of irrKlang shared object file is now named libirrKlang.so instead of previously irrKlang.so
  • ALSA driver latency highly improved
  • IrrKlang.NET now supports retrieving the audio format of a sound, using ISoundSource::AudioFormat.
  • IrrKlang can now optionally be told which sound device to use for sound output. In addition using this feature, it is now possible to define an ALSA device name to be used for alsa output when calling createIrrKlangDevice().
  • irrKlang ignored the new flag ESEO_PRINT_DEBUG_INFO_TO_STDOUT on unix based operation systems, this is fixed now.