{ "info": { "author": "Daniel R. Stephan", "author_email": "danrstephan@gmail.com", "bugtrack_url": null, "classifiers": [ "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Topic :: Artistic Software", "Topic :: Multimedia :: Sound/Audio" ], "description": "# pyRealParser\nA Python package to read [songs in the iRealPro format](https://www.irealb.com/forums/forumdisplay.php?3-Songs).\n\n## Introduction & Usage\nHere's an example of how to import an iReal link and print the information it contains:\n\n```python\n>from pyRealParser import Tune\n>my_tune = Tune.parse_ireal_url('irealb://%44%65%61%72')[0]\n>print(my_tune)\n\n\nTitle: Dear Old Stockholm\nComposer: Traditional\nStyle: Medium Swing\nKey: D-\nTranspose: None\nComp style: 0\nBPM: 0\nRepeats: None\nTime signature: 4/4\n\nChord string:\n*A{T44D- |Eh7 A7b9|G-7 C7|F^7 |Eh7 A7b9|D- |Eh7 |A7b9 |D-7 |D-6 |D-7 |D-6 }*B[F^7 |G-7 C7|F^7 |Eh7 A7b9 ]*C[D- |Eh7 A7b9|G-7 C7|F^7 |Eh7 A7b9|D- |C7sus |x |C7sus |x |x |x |C7sus A7b9|D- |x\n\nFlattened measures:\n| D- | Eh7A7b9 | G-7C7 | F^7 |\n| Eh7A7b9 | D- | Eh7 | A7b9 |\n| D-7 | D-6 | D-7 | D-6 |\n| D- | Eh7A7b9 | G-7C7 | F^7 |\n| Eh7A7b9 | D- | Eh7 | A7b9 |\n| D-7 | D-6 | D-7 | D-6 |\n| F^7 | G-7C7 | F^7 | Eh7A7b9 |\n| D- | Eh7A7b9 | G-7C7 | F^7 |\n| Eh7A7b9 | D- | C7sus | C7sus |\n| C7sus | C7sus | C7sus | C7sus |\n| C7susA7b9 | D- | D- |\n```\n\n`parse_ireal_url`returns a list of `Tune` objects, each representing a song contained in the input url. They contain a number of member variables, containing the chords as well as some meta information:\n\n- `chord_string`: A single string that has all chords of the tune, with bar lines, repeat markers, endings, codas etc:\n\n```python\n>print(my_tune.chord_string)\n\n*A{T44D- |Eh7 A7b9|G-7 C7|F^7 |Eh7 A7b9|D- |Eh7 |A7b9 |D-7 |D-6 |D-7 |D-6 }*B[F^7 |G-7 C7|F^7 |Eh7 A7b9 ]*C[D- |Eh7 A7b9|G-7 C7|F^7 |Eh7 A7b9|D- |C7sus |x |C7sus |x |x |x |C7sus A7b9|D- |x\n```\n\n- `measures_as_strings`: A list, for which every element corresponds to a single bar, containing the chords in string form. Repeats, codas etc. have been flattened.\n\n```python\n>print(my_tune.measures_as_strings)\n\n*['D-', 'Eh7A7b9', 'G-7C7', 'F^7', 'Eh7A7b9', 'D-', 'Eh7', 'A7b9', 'D-7', 'D-6', 'D-7', 'D-6', 'D-', 'Eh7A7b9', 'G-7C7', 'F^7', 'Eh7A7b9', 'D-', 'Eh7', 'A7b9', 'D-7', 'D-6', 'D-7', 'D-6', 'F^7', 'G-7C7', 'F^7', 'Eh7A7b9', 'D-', 'Eh7A7b9', 'G-7C7', 'F^7', 'Eh7A7b9', 'D-', 'C7sus', 'C7sus', 'C7sus', 'C7sus', 'C7sus', 'C7sus', 'C7susA7b9', 'D-', 'D-']\n```\n\n- `title`: The title\n- `composer`: The composer\n- `style`: The style (e.g. 'Swing', 'Bossa', 'Blues' etc.)\n- `key`: The key (e.g. 'A', 'F#' etc)\n- `transpose`: How many semitones to transpose\n- `comp_style`: Accompaniment style (usually empty)\n- `bpm`: Tempo in BPM (usually empty)\n- `repeats`: How many repeats (usually empty)\n- `time_signature`: Time signature as a tuple (e.g. (3,4), (4, 4), (5, 8) etc.)\n\nNotice, that some of these meta-data fields might be empty, depending on the input url.\n\n`Tune` objects are designed to have a nice textual representation in Jupyter notebooks, but can be used outside of a notebook perfectly well.\n\nFor more documentation, please read the code.\n\nContributions are welcome, please submit a PR.\n\n## Installation\n\n```\npip install pyRealParser\n```\n\n## Acknowledgements\nKudos to [@pianosnake](https://github.com/pianosnake/ireal-reader) and [@ironss](https://github.com/ironss/accompaniser) for figuring out the iReal url format!", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/drs251/pyRealParser", "keywords": "music,chords,irealpro,jazz", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyRealParser", "package_url": "https://pypi.org/project/pyRealParser/", "platform": "Windows", "project_url": "https://pypi.org/project/pyRealParser/", "project_urls": { "Homepage": "https://github.com/drs251/pyRealParser" }, "release_url": "https://pypi.org/project/pyRealParser/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "A Python package to read songs in the iRealPro fromat.", "version": "0.1.0" }, "last_serial": 3857633, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "a4671c3dae2cb3497f6f50ce657d8eb9", "sha256": "8a532dabb21909dc82d68fa82ad9bfb95ebc3f1d6a3c8398616d87081415fca4" }, "downloads": -1, "filename": "pyRealParser-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a4671c3dae2cb3497f6f50ce657d8eb9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7534, "upload_time": "2018-05-12T23:11:36", "url": "https://files.pythonhosted.org/packages/e7/08/fadfd3ffc69624dd34a05cb33a7e067dc1dad876572375f8478b221079e2/pyRealParser-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a4671c3dae2cb3497f6f50ce657d8eb9", "sha256": "8a532dabb21909dc82d68fa82ad9bfb95ebc3f1d6a3c8398616d87081415fca4" }, "downloads": -1, "filename": "pyRealParser-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a4671c3dae2cb3497f6f50ce657d8eb9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7534, "upload_time": "2018-05-12T23:11:36", "url": "https://files.pythonhosted.org/packages/e7/08/fadfd3ffc69624dd34a05cb33a7e067dc1dad876572375f8478b221079e2/pyRealParser-0.1.0.tar.gz" } ] }