Overview
irrKlang is a high level 2D and 3D cross platform (Windows, Mac OS X, Linux) sound engine and audio library which
plays WAV, MP3, OGG, FLAC, MOD, XM, IT, S3M and more file formats, and is
usable in
C++ and all .NET languages (C#, VisualBasic.NET, etc). It has all the features known
from low level audio libraries as well as lots of useful features like a sophisticated
streaming engine, extendable audio reading,
single and multithreading modes, 3d audio emulation for low end hardware, a plugin
system, multiple rolloff models and more. All this can be accessed via an extremely simple API.
Read more
Latest News
irrKlang 1.4.0b released.
Improved Linux compatibility: Some games using irrKlang are now released on
Valves "Steam for Linux" and now also work there nicely with this update.
irrKlang 1.4.0 released.
This fixes a few bugs and adds performance improvements.
See changelog for details.
irrKlang 1.3.0b released.
This adds support for .NET version 4.
See changelog for details.
irrKlang 1.3.0 released.
Adds the possibility to capture the mixed output audio data.
See changelog for details.
irrKlang 1.2.0 released.
Includes support for playing back .FLAC files
See changelog for details.
irrKlang 1.1.3c released.
Bug fix: Fixed a potential crash when using looped, streamed sounds in 3d.
See changelog for details.
irrKlang 1.1.3b released.
Small update release: Fixed a small bug with looping streamed sounds in DirectSound, added
.NET IDisposble interface implementations. See changelog for details.
irrKlang 1.1.3 released.
Improved performance and compatibility of Mac OS X version, reduced latency of Linux version,
added multi channel audio recording, added several small improvements to the .NET version
including examples for VisualBasic.NET.
irrKlang 1.1.2b released.
Added support for (external) multichannel sound cards on Mac OS X.
irrKlang 1.1.2 released. New:
Support for 24 bit wave files, versions for the .NET runtimes 1.1 and 2.0, added access to the internal audio
interfaces, several other small new features, new examples and several bug fixes.
irrKlang 1.1.0 released. New:
Direct access to decoded PCM sample data, bug fixes, speed optimizations and memory usage improvments.
See change log for details, or download irrKlang 1.1.0 now.
irrKlang 1.0.4 released. New:
Audio recording for Windows, PCM sound sources, minor bug fixes. See change log for details, or download irrKlang 1.0.4 now.
irrKlang 1.0.3 released.
irrKlang now runs also on Power PCs (Mac OS) and includes other new features such as: Sound device enumeration and
selection, sound stop event reciever reasons, reduced ALSA driver latency, audio format retrieval for .NET,
and various bug fixes.
See change log for details, or download irrKlang 1.0.3 now.
irrKlang 1.0.2 released. Changes:
Major feature enhancements such as setPlayPosition(), ALSA, WinMM and CoreAudio devices now
support setPlaybackSpeed(), rolloff factor for 3D sounds, audio file format information
retrieval, improved C++ interface
(namespace handling etc), new examples, bug fixes and a lot of minor new features.
irrKlang 1.0.1 released. Changes:
Minor bug fixes and documentation updates.
irrKlang 1.0 released. Changes:
Added sound preloading, possibility to change loop mode during playback, optional manual plugin loading from other
directories, Linux driver fixes, C++ name clashes resolved if not using namespaces, VisualStudio 6 support,
documentation improvements and more.
For older news entries, please take a look at the News archive.
Example using irrKlang in C++
This C++ example code shows how to play an mp3 file:
#include <iostream> #include <irrKlang.h> using namespace irrklang;
int main(int argc, const char** argv)
{
// start the sound engine with default parameters
ISoundEngine* engine = createIrrKlangDevice();
if (!engine) return 0; // error starting up the engine
// play some sound stream, looped
engine->play2D("somefile.mp3", true);
char i = 0;
std::cin >> i; // wait for user to press some key
engine->drop(); // delete engine
return 0;
}
This code works on all supported platforms (currently Windows, Linux and MacOSX).
For more examples and information about using irrKlang in C++, take a look at the
irrKlang C++ API documentation.
Example using irrKlang in C#
The following example was written in C# and shows how to play an mp3 file:
using IrrKlang;
namespace HelloWorld
{
class Example
{
[STAThread]
static void Main(string[] args)
{
// start up the engine
ISoundEngine engine = new ISoundEngine();
// play a sound file
engine.play2D("somefile.mp3");
// wait until user presses ok to end application
System.Windows.Forms.MessageBox.Show(
"Playing, press ok to end.");
} // end main()
} // end class
} // end namespace
For more examples and information about using irrKlang in .NET languages like C#, VisualBasic, Delphi.NET
and similar take a look at the
irrKlang .NET API documentation.
|
Products using irrKlang

2DBoy's World of Goo

Positech's Gratuitous Tank Battles

Novacore's Legends of Pegasus

Boxed Dreams' Ceville

Galcon's Galcon Fusion

Hammerware's Family Farm

Ageod's World War One

Orchid Game's Heartwild Solitaire

Kritzelkratz 3000's Sarah 2

Sechsta Sinn's Die verbotene Welt

Wintervalley Software's Maximum-Football

Elecorn's Caster

Digini's Blade3d

1morebee's Fiona Finch

Ntronium Games' Armada 2526
|