{ "info": { "author": "Jatin Chowdhury", "author_email": "jatin@ccrma.stanford.edu", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Audio DSPy\n\n[![CircleCI](https://circleci.com/gh/jatinchowdhury18/audio_dspy.svg?style=svg)](https://circleci.com/gh/jatinchowdhury18/audio_dspy)\n[![codecov](https://codecov.io/gh/jatinchowdhury18/audio_dspy/branch/master/graph/badge.svg)](https://codecov.io/gh/jatinchowdhury18/audio_dspy)\n[![CodeFactor](https://www.codefactor.io/repository/github/jatinchowdhury18/audio_dspy/badge)](https://www.codefactor.io/repository/github/jatinchowdhury18/audio_dspy)\n[![Documentation Status](https://readthedocs.org/projects/audio-dspy/badge/?version=latest)](https://audio-dspy.readthedocs.io/en/latest/?badge=latest)\n\n\naudio_dspy is a Python package for audio signal processing tools.\n\nCurrent tools include:\n- EQ filter design\n- Nonlinear Processors\n- Sine Sweep Tools\n- Plotting Frequency Responses and Static Curves\n- Converting transfer functions to minimum or linear phase\n- Prony's method, and Prony's method with frequency warping\n- Modal modelling tools\n\nInstall using `pip`:\n```bash\npip install audio-dspy\n```\n\n## Examples\n\n```python\nimport audio_dspy as adsp\nimport matplotlib.pyplot as plt\n\n# Plot nonlinear static curves\nadsp.plot_static_curve (lambda x : adsp.hard_clipper (x), range=2.5)\nadsp.plot_static_curve (lambda x : adsp.soft_clipper (x), range=2.5)\nplt.title ('Comparing Nonlinearities')\nplt.legend (['Hard Clipper', 'Soft Clipper'])\n```\n\n![Pic](docs/examples/nonlins.png)\n\n```python\n# Design and plot EQ filters\nfs = 44100\nb, a = adsp.design_lowshelf (800, 2.0, 2, fs)\nadsp.plot_magnitude_response (b, a, fs=fs)\nplt.title ('Low Shelf Filter')\n```\n![Pic](docs/examples/lowshelf.png)\n\n```python\n# Perform level detection\nfrom scipy.io import wavfile\n\nfs, x = wavfile.read('drums.wav')\nx = adsp.normalize(x[:,0]) # only take left channel, normalize\nplt.plot(x, label='input')\n\nfor mode in ['peak', 'rms', 'analog']:\n y = adsp.level_detect(x, fs, mode=mode)\n plt.plot(y, label=mode)\n\nplt.title('Level Detection Example')\nplt.xlabel('Time [samples]')\nplt.legend()\n```\n\n![Pic](docs/examples/level_detect.png)\n\n\n", "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/jatinchowdhury18/audio_dspy", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "audio-dspy", "package_url": "https://pypi.org/project/audio-dspy/", "platform": "", "project_url": "https://pypi.org/project/audio-dspy/", "project_urls": { "Homepage": "https://github.com/jatinchowdhury18/audio_dspy" }, "release_url": "https://pypi.org/project/audio-dspy/0.0.4/", "requires_dist": null, "requires_python": ">=3.6", "summary": "A package for audio DSP tools", "version": "0.0.4", "yanked": false, "yanked_reason": null }, "last_serial": 6958865, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "3fafafb387880df521aaf418032061fd", "sha256": "f0f226cff29f546a6b9ffeadb3c8a286fb5c07f74122ef9ecbf62b7ce6c206e8" }, "downloads": -1, "filename": "audio_dspy-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3fafafb387880df521aaf418032061fd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4014, "upload_time": "2019-10-11T23:13:42", "upload_time_iso_8601": "2019-10-11T23:13:42.056497Z", "url": "https://files.pythonhosted.org/packages/fe/08/6d55784c4e90636601ef0ab04b56e38f877a763b75e03690e4db73fbeae0/audio_dspy-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "be150a61aeaf1ff14bfd31076d565d8e", "sha256": "d46c5df92bfc16b5308d9b807f57ddfde5e31c73d35f9705c0f24f12b394252a" }, "downloads": -1, "filename": "audio_dspy-0.0.2.tar.gz", "has_sig": false, "md5_digest": "be150a61aeaf1ff14bfd31076d565d8e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 7085, "upload_time": "2019-10-16T04:33:10", "upload_time_iso_8601": "2019-10-16T04:33:10.461190Z", "url": "https://files.pythonhosted.org/packages/86/ba/19088d35b6522e1d27b11a26a17dd44f0d69f3cf867c39c277d2f572a7a2/audio_dspy-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "51397dacacff135bccc5e8eec0af3fe4", "sha256": "8b708ce084e66a1b15f16e90cf3cf81768e3034b95b35cf0f4fe60894634af26" }, "downloads": -1, "filename": "audio_dspy-0.0.3.tar.gz", "has_sig": false, "md5_digest": "51397dacacff135bccc5e8eec0af3fe4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 14734, "upload_time": "2019-10-28T18:09:56", "upload_time_iso_8601": "2019-10-28T18:09:56.350868Z", "url": "https://files.pythonhosted.org/packages/87/08/293a532ef51254188f92097ffcba1e8b3ba7505582269ed3e0f4a65a3639/audio_dspy-0.0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "ce193a64b3ef86d673ea11a80e4c58a6", "sha256": "73f7a0ab35e5e3ab2d325446affe781d5a96ec03c7615ecbd97f044e31a1e504" }, "downloads": -1, "filename": "audio_dspy-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ce193a64b3ef86d673ea11a80e4c58a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 30587, "upload_time": "2020-04-06T02:56:38", "upload_time_iso_8601": "2020-04-06T02:56:38.944511Z", "url": "https://files.pythonhosted.org/packages/dd/60/3c56d72f570878f8206990a4f16cb8e1ff2100b29887946a77d882700308/audio_dspy-0.0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8d4db552c18582abf3fbfcd581b948e5", "sha256": "ebfe50a534ab99ea96f7552280076000cce2e56c0d891500efc8e6e820545a43" }, "downloads": -1, "filename": "audio_dspy-0.0.4.tar.gz", "has_sig": false, "md5_digest": "8d4db552c18582abf3fbfcd581b948e5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 20590, "upload_time": "2020-04-06T02:56:40", "upload_time_iso_8601": "2020-04-06T02:56:40.811152Z", "url": "https://files.pythonhosted.org/packages/48/52/0eac7456cecb1b31a447ade1ab132e91bfe75bbd679d10ff276ed4456c13/audio_dspy-0.0.4.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ce193a64b3ef86d673ea11a80e4c58a6", "sha256": "73f7a0ab35e5e3ab2d325446affe781d5a96ec03c7615ecbd97f044e31a1e504" }, "downloads": -1, "filename": "audio_dspy-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ce193a64b3ef86d673ea11a80e4c58a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 30587, "upload_time": "2020-04-06T02:56:38", "upload_time_iso_8601": "2020-04-06T02:56:38.944511Z", "url": "https://files.pythonhosted.org/packages/dd/60/3c56d72f570878f8206990a4f16cb8e1ff2100b29887946a77d882700308/audio_dspy-0.0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8d4db552c18582abf3fbfcd581b948e5", "sha256": "ebfe50a534ab99ea96f7552280076000cce2e56c0d891500efc8e6e820545a43" }, "downloads": -1, "filename": "audio_dspy-0.0.4.tar.gz", "has_sig": false, "md5_digest": "8d4db552c18582abf3fbfcd581b948e5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 20590, "upload_time": "2020-04-06T02:56:40", "upload_time_iso_8601": "2020-04-06T02:56:40.811152Z", "url": "https://files.pythonhosted.org/packages/48/52/0eac7456cecb1b31a447ade1ab132e91bfe75bbd679d10ff276ed4456c13/audio_dspy-0.0.4.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }