MARLib - Music and Audio Research Library
  Under development by the Music and Audio Research Lab (MARL) @ NYU
  http://marl.smusic.nyu.edu
  
This code is distributed under the GNU LESSER PUBLIC LICENSE (LGPL, see www.gnu.org).


What is MARLib?
--------------

MARLib (pronounced marl-libb) is, in the most literal sense, a music and audio research
library; more practically, it is a digital audio processing package designed
for, primarily, music informatics research. As a result, this library includes
modules for common signal processing routines, time-frequency representations, 
and no-hassle, object-oriented audio file I/O.

MARLib depends on NumPy and, to a lesser extent, SoX, which provide - among other
functionality - efficient array manipulation and arbitrary audio file handling,
respectively.


Documentation
-------------

Currently, all documention is maintained inline, within the code base.
It is our intention to soon migrate this reference material to an online,
Sphynx-like interface.


Installation
------------
1. Clone this repo
2. Run $ python setup.py install
	
Notes: 1) NumPy, one of marlib's dependencies - requires additional steps
before the python module can be installed (including the need for GNU's 
Fortran compiler). See NumPy's installation guide on its website for details.
2) marlib relies on a program called SoX, so that must be installed as well 
before use. There are packages for almost all major OSs, which you can find on
SoXs website. Be sure to verify that the SoX binary is on a directory in your 
$PATH.

If you intend to use the SoX functionality, you will need to define a local 
directory on your machine where temporary files can be created and destroyed.
In lieu of writing pure Python audio codec routines, a wrapper was developed
to leverage years of high quality audio routines to make file handling that
much simpler. The default is Mac-oriented, and defined in marlib.__init__.py.
 

Contribution
------------
1. Clone repo
2. Run $ python setup.py develop

Note: It's best to do this in a virtualenvironment, since numpy - a dependency
of marlib - is a very huge library.

Web sites
---------

This library is available at the following URL (for the time being)
    http://bitbucket.org/ejh333/marlib


Bug reports
-----------

We acknowledge the early development stage of this package, and encourage
the reporting of any and all bugs you may find.

Reporting and searching of bugs can be done at
	https://bitbucket.org/ejh333/marlib/issues


License information
-------------------

Copyright (c) 2010-2012 MARL@NYU.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

  a. Redistributions of source code must retain the above copyright notice,
     this list of conditions and the following disclaimer.
  b. Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions and the following disclaimer in the
     documentation and/or other materials provided with the distribution.
  c. Neither the name of MARL, NYU nor the names of its contributors
     may be used to endorse or promote products derived from this software
     without specific prior written permission.


THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

