Skip to main content

python-based implementation of Analysis-Synthesis-Transformation (ATS) spectral music system

Project description

ABOUT pyatsyn

pyatsyn is a python implementation of the Analysis-Transformation-Synthesis (ATS) spectral modeling system.

Analysis, Transformation and Synthesis (ATS) is a spectral modeling system based on a sinusoidal plus critical-band noise decomposition. The system can be used to analyze recorded sounds, transform their spectrum using a wide variety of algorithms and resynthesize them both out of time and in real time.

pyatsyn Documentation at readthedocs.io


pyatsyn Copyright (c) <2023>, Johnathan G Lyon All rights reserved.

Except where otherwise noted, ATSA and ATSH is Copyright (c) <2002-2004> Oscar Pablo Di Liscia, Pete Moss, and Juan Pampin

This source code is licensed under the BSD-style license found in the LICENSE.rst file in the root directory of this source tree.


INSTALLATION

requires python 3.6+ developed/tested on python 3.9.15 using M1 Mac running macOS 13.0.1

requires LIBSNDFILE

for Mac (assuming Homebrew is installed): $ brew install libsndfile for Debian: $ apt-get install libsndfile-dev

install via the PyPi repository

$ pip install pyatsyn

included command line utilities

$ pyatsyn-atsa --help
$ pyatsyn-info --help
$ pyatsyn-synth --help

Example command line usage to generate an ats file with residual:

$ pyatsyn-atsa example.wav example.ats -v -r example-residual.wav

Example to print information about a .ats file to stdout:

$ pyatsyn-info example.ats

Example to synthesize the result using a sine-generator bank:

$ pyatsyn-synth example.ats synthesized.wav

Example to synthesize the result a sine-generator bank and w/ band-limited noise synthesis for the residual:

$ pyatsyn-synth example.ats synthesized_w_noise.wav --noise 1.0

for Developers, if using from source

$ git clone https://github.com/boxofbox/pyatsyn

i recommend running in a virtual environment from within the project base directory

$ cd pyatsyn
$ python -m venv .venv
$ source .venv/bin/activate

python libraries required:

$ pip install numpy
$ pip install soundfile

optional documentation generation requires:

$pip install sphinx
$pip install sphinx_rtd_theme

may need to be run as a package in development mode (from within the outermost pyatsyn directory containing the pyproject.toml file)

$ pip install -e .

If you are a newcomer to ATS, we recommend you start by looking at pyatsn/atsa/tracker.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyatsyn-1.0.0.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

pyatsyn-1.0.0-py3-none-any.whl (39.7 kB view details)

Uploaded Python 3

File details

Details for the file pyatsyn-1.0.0.tar.gz.

File metadata

  • Download URL: pyatsyn-1.0.0.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for pyatsyn-1.0.0.tar.gz
Algorithm Hash digest
SHA256 088191b2d8b20425926249ff548c1200e2ca324dced4d159cba6cc4a54478a5f
MD5 d44c96ebbf702b0b5311cb45d2a5a56c
BLAKE2b-256 9c4faf3830f6433b3ca904fe591424a9703c8ef2e8120e4bd468f41aa0cfb434

See more details on using hashes here.

File details

Details for the file pyatsyn-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyatsyn-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 39.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for pyatsyn-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1dd03785a3177312a768ce64a346a88b319aeba0cd01a96c037d5bd359688bf1
MD5 0eb7b6c7aff1b21bcd874ad13b26ce4a
BLAKE2b-256 a0b54810975fecc287ef89ddfb42a846daac336d06c1bbbe0de488775d026c44

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page