MPEG-4 Audio Scalable Lossless Coding (SLS)

File structure
.\readme.txt                 This file
.\usage.txt                  Command line option usage of MPEG SLS encoder and decoder
.\enc\*.*                    Source codes for SLS encoder 	
.\dec\*.*                    Source codes for SLS decoder
.\BstTruncation\*.*	     Source codes for SLS bit-stream truncator
.\tables_enc\rm5hufbook      Huffman code table for MPEG AAC encoder. Necessary for running the SLS encoder
.\msvc\sls_rm0.dsw           Microsoft Visuall C++ workspace file for the SLS encoder and decoder
.\msvc\dec\dec.dsp           Microsoft Visuall C++ project file for the SLS decoder
.\msvc\enc\enc.dsp           Microsoft Visuall C++ project file for the SLS encoder
.\msvc\enc\output            Win32 binary executable
./make/dec/makefile	     Linux makefile for SLS decoder (usage: 'make' or 'make OPTIM_LEV=3') 
./make/enc/makefile	     Linux makefile for SLS encoder (usage: 'make' or 'make OPTIM_LEV=3') 

The following additional software packages are required for compiling this RM:

- AFsp package, e.g. available at:
  http://www-mmsp.ece.mcgill.ca/Documents/Software/Packages/AFsp/AFsp.html

- The most recent version of the MP4 file format reference software. Unfortunately the version available
  at http://standards.iso.org/ittf/PubliclyAvailableStandards/c045527_ISO_IEC_14496-5_2001_Amd_12_2007_Reference_Software.zip
  does not run cleanly with the SLS encoder. Furthermore it does not have the ability to read/write the
  SLS enhancement streams with the atom type 'm4ae' (it still uses 'mp4a').
  In order to compile the SLS RM you need to:
  * retrieve the latest official version of the MP4FF reference software (Jan 2008 or later) from 'mp4reg@group.apple.com'.
    Use the word 'mp4reg' in the subject, you will reach Dave Singer, the maintainer of the MP4FF reference software.
  * create a subfolder libisomedia in the mpeg4sls folder and unpack the MP4 File format reference software package to this folder (if you do so,
    the paths of the makefiles/Visual Studio project files for the MPEG-4 SLS encoder/decoder software are already adapted properly). 
  * apply the m4ae patch to this MP4FF software, e.g. in a bash shell:
    cd libisomedia/libisomediafile; patch -p2 < libisomedia_2008jan.patch


For the *nix build you have to set the following environment variables before running make:

AFSP_INCLUDE_PATH       # path to AFsp include files
AFSP_LIBRARY_PATH       # path to AFsp libraries
REFSOFT_INCLUDE_PATH    # path to libisomedia include files (note: the MP4 file format reference software has its include files in several directories)
REFSOFT_LIBRARY_PATH    # path to libisomedia library

e.g. in a bash shell:

export AFSP_INCLUDE_PATH=/usr/include; export AFSP_LIBRARY_PATH=/usr/lib; export REFSOFT_INCLUDE_PATH=/usr/include; export REFSOFT_LIBRARY_PATH=/usr/lib
