{ "info": { "author": "Andy Craze", "author_email": "accraze@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Utilities" ], "description": "========\nOverview\n========\n\n\n\nTwelve-tone matrix to generate dodecaphonic melodies.\n\n\n.. image:: https://upload.wikimedia.org/wikipedia/commons/thumb/7/77/Schoenberg_-_Piano_Piece_op.33a_tone_row.png/640px-Schoenberg_-_Piano_Piece_op.33a_tone_row.png\n\nFollowing a process created by the composer Arnold Schoenberg, this library\ncomputes a matrix to create twelve-tone serialism melodies which compose each\nof the 12 semitones of the chromatic scale with equal importance.\n\n* Save your compositions to MIDI\n* Free software: BSD license\n\nInstallation\n============\n\n::\n\n pip install twelve-tone\n\nQuick Start\n===========\n\nYou can quickly generate a random twelve-tone melody with the CLI\n\n::\n\n $ twelve-tone\n ['C# / Db', 'A# / Bb', 'F', 'D', 'G# / Ab', 'D# / Eb', 'F# / Gb',\n 'A', 'C', 'G', 'B', 'E']\n\nOr you can use the following methods in a script:\n\n::\n\n >>> from twelve_tone.composer import Composer\n >>> c = Composer()\n >>> c.compose()\n >>> c.get_melody()\n ['C# / Db', 'A# / Bb', 'F', 'D', 'G# / Ab', 'D# / Eb', 'F# / Gb',\n 'A', 'C', 'G', 'B', 'E']\n\nAfter you have composed a matrix of tone rows, you can save the composition to\nMIDI:\n\n::\n\n >>> c.compose()\n >>> c.save_to_midi(filename='TWELVE_TONE.mid')\n\nThe new MIDI file will be created in your current working directory. If you do\nnot specify a `filename` for your file, it will default to `example.mid`.\n\nDocumentation\n=============\n\nhttps://python-twelve-tone.readthedocs.io/\n\nDevelopment\n===========\n\nTo run the all tests run::\n\n tox\n\nNote, to combine the coverage data from all the tox environments run:\n\n.. list-table::\n :widths: 10 90\n :stub-columns: 1\n\n - - Windows\n - ::\n\n set PYTEST_ADDOPTS=--cov-append\n tox\n\n - - Other\n - ::\n\n PYTEST_ADDOPTS=--cov-append tox\n\n\nChangelog\n=========\n\n0.4.0 (2018-7-08)\n-----------------------------------------\n\n* composer: added/fixed column tonerow support\n\n0.3.0 (2018-7-04)\n-----------------------------------------\n\n* cli: added random melody generator command\n\n0.2.1 (2016-8-27)\n-----------------------------------------\n\n* build: added `miditime` to setup install requirements\n\n0.2.0 (2016-8-27)\n-----------------------------------------\n\n* composer: Added save to MIDI capability\n\n0.1.0 (2016-8-20)\n-----------------------------------------\n\n* First release on PyPI.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/accraze/python-twelve-tone", "keywords": "music,composition,matrix,atonal,midi", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "twelve-tone", "package_url": "https://pypi.org/project/twelve-tone/", "platform": "", "project_url": "https://pypi.org/project/twelve-tone/", "project_urls": { "Homepage": "https://github.com/accraze/python-twelve-tone" }, "release_url": "https://pypi.org/project/twelve-tone/0.4.0/", "requires_dist": [ "numpy", "click", "miditime" ], "requires_python": "", "summary": "Twelve-tone matrix to generate dodecaphonic melodies", "version": "0.4.0" }, "last_serial": 4041043, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "d344ac9f2097a441a1cb496cd6f3d089", "sha256": "c78816f7984374f9e5e8cf3a02da4c5ff35b8ef014f845d06330ede49b14c6c0" }, "downloads": -1, "filename": "twelve_tone-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d344ac9f2097a441a1cb496cd6f3d089", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8279, "upload_time": "2016-08-20T20:35:37", "url": "https://files.pythonhosted.org/packages/d5/b3/d87121c154f817d065dddb3f08f092c9c8ea6e9bced043d36a661e499eab/twelve_tone-0.1.0-py2.py3-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "72627b7d30d076e321e308f43d3e07d4", "sha256": "1f5e31db53ae734695de151c375968db1ec7122409cde99a40d5407f8ff74261" }, "downloads": -1, "filename": "twelve_tone-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "72627b7d30d076e321e308f43d3e07d4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11701, "upload_time": "2016-08-27T19:10:14", "url": "https://files.pythonhosted.org/packages/89/18/585f0b6dc2706464d1d52aa4253f406e6eefa4e3aaeb63d455404ea09cad/twelve_tone-0.2.0-py2.py3-none-any.whl" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ceee6e93775dc6da4450cc2fb5c3772c", "sha256": "1db567b639fcca1d9045a1e9eb67f70316c96260fd84552b63eb2ddfd239ec3a" }, "downloads": -1, "filename": "twelve_tone-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ceee6e93775dc6da4450cc2fb5c3772c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11723, "upload_time": "2016-08-27T19:17:14", "url": "https://files.pythonhosted.org/packages/f2/3c/6cbbe58253c5b72a58ca30f635c68bb0f4d17348ed55886ba420436c309e/twelve_tone-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd9e09cacd2c7bcc2596ead3bb03f22b", "sha256": "8e730b91ebfa5e8af50c06f221781713cb35a453de03d4088c52a24de4d0183c" }, "downloads": -1, "filename": "twelve-tone-0.2.1.tar.gz", "has_sig": false, "md5_digest": "bd9e09cacd2c7bcc2596ead3bb03f22b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21653, "upload_time": "2016-08-27T19:21:10", "url": "https://files.pythonhosted.org/packages/ee/98/48d2056ac1fe707c44b0ab5626a573bcbb08860259e29b920a8b28994130/twelve-tone-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "f45f20ba98c4716d85040a50c522718b", "sha256": "8f035c5c619ab55cdee113bfd6d9e5f55db0428a06e7caaf76c66b6f02cdb7f4" }, "downloads": -1, "filename": "twelve_tone-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f45f20ba98c4716d85040a50c522718b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7255, "upload_time": "2018-07-04T19:15:52", "url": "https://files.pythonhosted.org/packages/a3/05/e5494d4cd4a39fc4c7ce85e1ad649f14603b63b106ce80e63d0c4cca057b/twelve_tone-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ebfb92f9a511a0844d094e919e8e3190", "sha256": "27753d0dcb300be8babf02b1226dda2eb466bd8ac7f3b5cf71665b5c7703d8ae" }, "downloads": -1, "filename": "twelve-tone-0.3.0.tar.gz", "has_sig": false, "md5_digest": "ebfb92f9a511a0844d094e919e8e3190", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18390, "upload_time": "2018-07-04T19:15:54", "url": "https://files.pythonhosted.org/packages/e7/fa/3666d86cc231b436bcc541c184f9bc1237c0aab6d09fddbe09e0312d15b7/twelve-tone-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "e8c26127440269692a0b4f9f9b2c8c83", "sha256": "71f01745046548bb71337f065e710bfa83d21a99aebd573f4ae9d17559fc9e8e" }, "downloads": -1, "filename": "twelve_tone-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e8c26127440269692a0b4f9f9b2c8c83", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9707, "upload_time": "2018-07-08T16:34:31", "url": "https://files.pythonhosted.org/packages/8b/b8/c563fab3d67efa2b945373260ebbe9db3c9329dbd10f4a8a20c1bea861df/twelve_tone-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1470c65b8ba9c2e30771024ad82ff420", "sha256": "cd804e34f1fb5837fb7b4499f2a980850c493a9b97c3bd6d7aa0a164d53e21fa" }, "downloads": -1, "filename": "twelve-tone-0.4.0.tar.gz", "has_sig": false, "md5_digest": "1470c65b8ba9c2e30771024ad82ff420", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20635, "upload_time": "2018-07-08T16:34:33", "url": "https://files.pythonhosted.org/packages/d2/00/112c32337122e0b69539bcb1df376589221e14bf37bdb12fe7b72415ad63/twelve-tone-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e8c26127440269692a0b4f9f9b2c8c83", "sha256": "71f01745046548bb71337f065e710bfa83d21a99aebd573f4ae9d17559fc9e8e" }, "downloads": -1, "filename": "twelve_tone-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e8c26127440269692a0b4f9f9b2c8c83", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9707, "upload_time": "2018-07-08T16:34:31", "url": "https://files.pythonhosted.org/packages/8b/b8/c563fab3d67efa2b945373260ebbe9db3c9329dbd10f4a8a20c1bea861df/twelve_tone-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1470c65b8ba9c2e30771024ad82ff420", "sha256": "cd804e34f1fb5837fb7b4499f2a980850c493a9b97c3bd6d7aa0a164d53e21fa" }, "downloads": -1, "filename": "twelve-tone-0.4.0.tar.gz", "has_sig": false, "md5_digest": "1470c65b8ba9c2e30771024ad82ff420", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20635, "upload_time": "2018-07-08T16:34:33", "url": "https://files.pythonhosted.org/packages/d2/00/112c32337122e0b69539bcb1df376589221e14bf37bdb12fe7b72415ad63/twelve-tone-0.4.0.tar.gz" } ] }