Metadata-Version: 1.2
Name: loristrck
Version: 1.2.3
Summary: A wrapper around the partial-tracking library Loris
Home-page: https://github.com/gesellkammer/loristrck
Author: Eduardo Moguillansky
Author-email: eduardo.moguillansky@gmail.com
License: GPL
Download-URL: https://github.com/gesellkammer/loristrck
Description: LORISTRCK
        =========
        
        `loristrck` is a wrapper for the C++ partial-tracking library Loris.
        
        It is written in cython and targets python 3 (>= 3.8 at the moment). The source of the library is included 
        as part of the project and does not need to be installed previously.
        
        
        C++ Library Dependencies:
          * fftw3_
        
        .. _fftw3: http://www.fftw.org
        
        
        Additional Python Module Dependencies:
          * Cython
          * NumPy
          * pysndfile + libsndfile
          * sounddevice to be able to play samples (see loristrck_play)
        
        
        Optional dependencies:
          * csound (in order to play ``.mtx`` files, as generated by loristrck_pack)
        
        --------------
        
        Documentation
        =============
        
        https://loristrck.readthedocs.io
        
        ---------------
        
        Installation
        ============
        
        macOS
        -----
        
        ::
        
            brew install fftw
            pip install loristrck
        
        
        Linux
        -----
        
        ::
        
            apt install libfftw3-dev libsndfile1-dev
            pip install loristrck
        
        
        Windows
        -------
        
        ::
        
            pip install loristrck
        
        
        Install from source in Windows
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        You need to have Visual Studio installed
        
        ::
        
            # From a Developer Powershell
            python scripts/prepare_windows_build.py
        
            # From a normal prompt
            pip install .
        
        
        
        Usage
        =====
        
        .. code-block:: python
        
           import loristrck as lt
        
           samples, sr = lt.sndreadmono("/path/to/sndfile.wav")
           partials = lt.analyze(samples, sr, resolution=60)
           # partials is a python list of numpy arrays
           # select a subset of most significant partials
           selected, noise = lt.select(partials, mindur=0.02, maxfreq=12000, minamp=-60, minbp=2)
           # print each partial as data
           for partial in selected:
               print(partial)
           # plot selected partials
           lt.plot_partials(selected)
           # now resynthesize both parts separately 
           lt.partials_render(selected, outfile="selected.wav")
           lt.partials_render(noise, outfile="noise.wav")
           
        
        Each partial will be a numpy array of shape = (numbreakpoints, 5)
        with the columns::
        
          time, frequency, amplitude, phase, bandwidth
        
        
        See the example scripts in `bin` for more complete examples
        
        
        See also
        ========
        
        sndtrck: https://github.com/gesellkammer/sndtrck
        
        
        Author
        ------
        
        eduardo dot moguillansky @ gmail dot com
        
        
        License
        -------
        
        GPL
        
Platform: Linux
Platform: Mac OS-X
Platform: Windows
Requires-Python: >=3.8
