semvec/pypi-packages huggingface dataset:
six-sesdxcv1 1.17.0
Python 2 and 3 compatibility utilities
License: MIT
Requires Python: !=3.0.*,!=3.1.*,!=3.2.*,>=2.7

Six is a Python 2 and 3 compatibility library.  It provides utility functions
for smoothing over the differences between the Python versions with the goal of
writing Python code that is compatible on both Python versions.  See the
documentation for more information on what is provided.

Six supports Python 2.7 and 3.3+.  It is contained in only one Python
file, so it can be easily copied into your project. (The copyright and license
notice must be retained.)

Online documentation is at https://six.readthedocs.io/.

Bugs can be reported to https://github.com/benjaminp/six.  The code can also
be found there.
REMI-z 0.5.9
Manipulate your MIDI file in bar level, and converting between MIDI and REMI-z format.
License: MIT
Requires Python: >=3.7

# *REMI-z* tokenizer and *MultiTrack* music data structure

This is the official implementation of the REMI-z tokenizer in the paper [*Unlocking Potential in Pre-Trained Music Language Models for Versatile Multi-Track Music Arrangement*](https://arxiv.org/abs/2408.15176).

[[github](https://github.com/Sonata165/REMI-z) | [PyPI](https://pypi.org/project/REMI-z/) | [author](https://www.oulongshen.xyz/)]

This tool helps to convert your music between MIDI and REMI-z representation, which is an efficient sequence representation of multitrack music, meanwhile facilitate manipulate the music at bar level.

The core of this tokenizer is the MultiTrack class as the data structure for multitrack music, which is a hierachical format. Here are the structural details:
- The music is represented by an MultiTrack object, which is list of bars.
    - Each Bar object represents all notes being played within one bar, grouped by Track object, together with time signature and tempo info of this bar.
        - Each Track object represents one instrument, contatining notes of that instrument in this bar.
            - Each Note object represent one note, including onset, offset, pitch, velocity information.

This Multitrack object can be create from various formats (e.g., MIDI or REMI-z), and convert into various formats (e.g., MIDI, and REMI-z representation).

## Install
Install from pip

    pip install REMI-z

Install from source

    git clone https://github.com/Sonata165/REMI-z.git
    cd REMI-z
    pip install -r requirements.txt
    pip install .

## Usage
Please refer to the `demo.ipynb`.