Main Page | File List | Globals | Related Pages

iKlax Library (iKlaxLib)

1.5.1

Summary

A. What's iKlax ?
   What's an iKmix ?

B. What does iKlax Library contain ?
   1. The iKlax Tools Library (KToolLib)
   2. The iKlax Library (iKlaxLib or iKlaxReadLib)
      Available Audio Codecs

C. iKlax Read Library Architecture (Reading & Decoding)
   1. Import / Export
   2. Interactivity
   3. Player Controller
   4. iKlax File Explorer
   5. Element Explorer
   6. iKlax & iKmix Files Manager

D. iKlax Library Architecture (Encoding & Writing)
   1. Creating structure and modifying elements
   2. Constraints
      2-1. Selection Constraints
      2-2. Mixing Constraints
   3. Mix & Presets
   4. Encoding & Export

E. Compilation
   1. Windows
   2. Mac OS
   3. iPhone OS

F. How begin with the iKlax Read Library ?
   1. Play an iKlax File.
   2. Play an iKlax File with few interaction.
   3. Print an iKlax File Structure.
   4. A small iKlax Player in command line.

G. How begin with the iKlax Library ?
   5. Create a very simple iKlax File
   6. Create an iKlax File with groups
   7. Create an iKlax File with selection constraints
   8. Create an iKlax File with mixing constraints
   9. Create an iKlax File with author mix

H. Resources
   1. iKlax Files
   2. Applications

I. Licence

J. Authors & Partners

A. What's iKlax ?

iKlax's goal is to open up new creative fields and a new kind of artist/user relationship.

Hailing from the original idea of Owen Lagadec and Ivan Duchemin, the latest digital audio technology has been developed in collaboration with the Image & Sound" department of the LaBRI (Bordeaux IT Research Laboratory) and researchers Myriam Desainte-Catherine and Sylvain Marchand.

iKlax is a multitrack audio format.

This signifies that it can contain separate sound elements (like drums, guitar, vocals, etc.). This structure opens a new creative field for artists, allowing them to include various versions of a same song inside one file. The user also reaches a new plane of music listening and thus enters a closer relationship with the artist.

iKlax is also the first digital audio format that covers all levels of interactivity. Interactivity with music can be achieved on two levels:

File size varies according to 2 elements:

More information on iklaxmedia.com

What's an iKmix ?

An iKmix is a 'mix' of an iKlax file. It contains presets on track's status and/or levels. An iKmix is associated with only one iKlax file. An iKlax file contains at least one iKmix.

An iKmix can be exported in an iKmix file. This file contains only presets but no audio data, so this file is really small and can be easyly shared with someone who owns the same iKlax file.

B. What does iKlax Library contain ?

1. The iKlax Tools Library (KToolLib)

The KToolLib is a great tools box for C development. All C standard libraries & functions had been rewritten in KToolLib, for multiplatform using. This library had been developed and tested on Windows XP & Vista, MacOS 10.4 & 10.5 (Intel & PowerPC), iPhone OS 3.x, Windows Mobile 6.5 and GNU/Linux (Ubuntu & Gentoo) for 32 & 64 bit processors. Actually the iKlax Team works on versions of KToolLib for Windows 7, MacOS 10.6, Android and Symbian.

If your prefered platform is not available, please contact us on iklaxmedia.com.

KToolLib Documentation

The KToolLib documentation is available here.

2. The iKlax Library (iKlaxLib or iKlaxReadLib)

The iKlaxLib is a tools box for interactive music and iKlax files decoding & encoding.
The iKlaxReadLib is a tools box for interactive music and iKlax files decoding only.
All the iKlax Read Library (iKlaxReadLib) is included in the iKlax Library (iKlaxLib).
Current versions of these libraries are only for Windows XP/Vista (32bit), MacOS 10.4 and later (Intel & PowerPC), and iPhone OS 3.x.

Other versions for iKlax files decoding/encoding and for other platforms will be available later, or can be provided on demand.

Available Audio Codecs

This table resumes which audio codecs are available by platforms.
Audio Format Windows XP/Vista, Mac OS 10.4+ iPhone 3.x
Wave PCM U8, PCM 16, PCM 24, PCM 32, PCM 64, float-32bit, double-64bit, A-law, U-law PCM U8, PCM 16, PCM 32, A-law
Aiff PCM S8, PCM 16, PCM 24, PCM 32, PCM 64, float-32bit, double-64bit, A-law, U-law PCM S8, PCM 16, PCM 32, A-law
Au PCM S8, PCM 16, PCM 24, PCM 32, PCM 64, float-32bit, double-64bit, A-law, U-law PCM S8, PCM 16, PCM 32, A-law
Vorbis Quality -1 to 10 (45 to 400 kbps) Not available

C. iKlax Read Library Architecture (Reading & Decoding)

Some modules are available in this library :

1. Import / Export

With this module you can import iKlax or iKmix files and export iKmix files from an iKlax file. You can also export an iKmix from an iKlax file to an audio file. See the Import / Export API.

Some functionnalities:

2. Interactivity

All functions for interactive music. With these functions you can change the played tracks or its levels. See the Interactivity API.

Some functionnalities:

3. Player Controller

All very usefull & easy functions to play and listen iKlax file. See the Player Controller API.

Some functionnalities:

4. iKlax File Explorer

Functions to manage iKlax File. See the iKlax File Explorer API.

Some functionnalities:

5. Element Explorer

Functions to manage elements from iKlax File. See the Element Explorer API.

Some functionnalities:

6. iKlax & iKmix Files Manager

Functions to manage iKlax & iKmix files.
The specifity of this object is an automatic loading of iKmix files. If you set a directory to this object, it will be able to:

See the iKlax & iKmix Files Manager API.

Some functionnalities:

D. iKlax Library Architecture (Encoding & Writing)

The iKlaxLib permits to create iKlax files with groups, constraints and predefined mix. With this library you can access and configure all the interactivity in a multitrack file.

1. Creating structure and modifying elements

1-1. Creating structure

Some functionnalities:

1-2. Modifying elements

Some functionnalities:

2. Constraints

The iKlax specificity is constraint. Constraints permits to reduce the level of interactivity in a multitrack files, and then gives a better exploration of a music to a listener.
iKlax proposes two types of contraints: selection constraints (on on/off status of tracks) and mixing constraints (on tracks levels).

2-1. Selection Constraints

Four selection constraints are available. A code example is available here.

2-2. Mixing Constraints

Two mixing constraints are available. A code example is available here.

3. Mix & Presets

This module regroups all functionnalities to create predefined mix in an iKlax file. (All the API)

4. Encoding & Export

It's very easy to export an iKlax file: There is only one function!
In this version of the library (1.5), the only available audio format on export is Vorbis (See more information about Vorbis).
On next versions, others audio formats will be available.

E. Compilation

1. Windows

The only available binary for Windows OS is a dynamic library (a dll file).

2. Mac OS

The only available binary for Mac OS is a dynamic library (a dylib file).

3. iPhone OS

The only available binary for iPhone OS is a static library (a .a file).

F. How begin with the iKlax Read Library ?

1. Play an iKlax File.

You would like read and play an iKlax file ? See the source code example.

2. Play an iKlax File with few interaction.

You would like read and play an iKlax file with few interactions ? See the source code example.

3. Print an iKlax File Structure.

You would like print an iKlax file structure ? See the source code example.

4. A small iKlax Player in command line.

A complete example with a small player in command line. The user can choice status and levels tracks, save a mix or choice a existed mix. See the source code example.

G. How begin with the iKlax Library ?

This section contains examples only for writing & encoding iKlax file. To see example about reading & decoding iKlax file, go to the section F. How begin with the iKlax Read Library ?.

5. Create a very simple iKlax File

This is a very simple example to create and export an iKlax file: go to the source code example.

6. Create an iKlax File with groups

In this source code example you can learn how create groups in an iKlax file.

7. Create an iKlax File with selection constraints

You would like add selection constraints in your iKlax file? See the source code example.

8. Create an iKlax File with mixing constraints

If you want add mixing constraints in your iKlax file, go to the source code example.

9. Create an iKlax File with author mix

This source code example shows you how create predefined mix in an iKlax file.

H. Resources

1. iKlax Files

This is a little selection of free music in iKlax: see the music.
And if your prefered artist hasn't got any music in iKlax, you can suggest him to create his next tube in iKlax!

2. Applications

These applications use iKlax Libraries:

I. Licence

IKLAX LIBRARIES LICENSE AGREEMENT

The following licence can be revised at anytime by IKLAX MEDIA SAS, THE AUTHORS AND DISTRIBUTORS without any restriction and applies to all the users of the software.

By downloading the software, the user accepts with no restrictions the following terms of use and licence.

This software is proprietary to iKlax Media SAS, is protected under french Software Protection Agency (APP) and is copyrighted (C) by iKlax Media SAS. Its use and disclosure is limited by the terms and conditions of this license agreement. The following terms apply to all files associated with the software.

iKlax Media SAS hereby grant permission to use, copy and distribute this software and its documentation for any non-commercial purpose, provided that existing copyright notices are retained in all copies and that this notice is included verbatim in non-commercial distributions. No written agreement, license, or royalty fee is required for non-commercial uses.

For commercial uses, distribution of this software or for modification on this this software, please contact iKlax Media SAS. (http://www.iklaxmedia.com)

IN NO EVENT SHALL IKLAX MEDIA SAS, THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

IKLAX MEDIA SAS, THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE AND ITS DOCUMENTATION ARE PROVIDED ON AN "AS IS" BASIS, AND IKLAX MEDIA SAS, THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

J. Authors & Partners

Authors

The following authors have contributed to iKlax Libraries and its documentations. All authors are or were employee by iKlax Media SAS. (In alphabetical order of firstname):

Partners


Generated on Tue Mar 9 11:45:47 2010 for iKlax Library (iKlaxLib) by doxygen 1.3.8