GithubHelp home page GithubHelp logo

spruce-tone / pyguitarpro Goto Github PK

View Code? Open in Web Editor NEW

This project forked from perlence/pyguitarpro

0.0 0.0 0.0 3.76 MB

Read, write and manipulate GP3, GP4 and GP5 files

Home Page: https://pyguitarpro.readthedocs.io

License: GNU Lesser General Public License v3.0

Python 100.00%

pyguitarpro's Introduction

PyGuitarPro

PyPI Package latest release

Introduction

PyGuitarPro is a package to read, write and manipulate GP3, GP4 and GP5 files. Initially PyGuitarPro is a Python port of AlphaTab which is a Haxe port of TuxGuitar.

This package helps you achieve several goals you might find yourself yearning to do in a day-to-day tabber life:

  • transpose a track without messing the fingering.
  • add first string to the track without messing the fingering.
  • map percussion notes to different values.

Reading .gp* files is as easy as:

import guitarpro
curl = guitarpro.parse('Mastodon - Curl of the Burl.gp5')

Writing .gp* files isn't that hard as well:

guitarpro.write(curl, 'Mastodon - Curl of the Burl 2.gp5')

All objects representing GP entities are hashable and comparable. This gives the great opportunity to apply diff algorithm to tabs, or even diff3 algorithm to merge tablatures.

To anyone wanting to create their the best guitar tablature editor in Python this package will be the good thing to start with.

Examples

Several usage examples are included in the /examples folder. Please feel free to add your own examples, or improve on some of the existing ones, and then submit them via pull request.

To run one of the examples in your local environment, simply:

cd pyguitarpro
python examples/transpose.py --help

Installation

Install PyGuitarPro from PyPI:

pip install PyGuitarPro

To install development version of PyGuitarPro:

git clone https://github.com/Perlence/PyGuitarPro.git
cd pyguitarpro
pip install -e .

Documentation

Package documentation is located at Read the Docs.

Licensing

Please see the file called LICENSE.

pyguitarpro's People

Contributors

perlence avatar seaniezhao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.