Metadata-Version: 2.1
Name: response
Version: 0.1.1
Summary: Your handy frequency and impulse response processing object
Home-page: https://github.com/fhchl/Response
Author: Franz M. Heuchel
Author-email: franz.heuchel@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Utilities
Requires-Python: >=3.6.0
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: matplotlib (>=2.2.0)


Response
========

[![](https://img.shields.io/pypi/l/response.svg?style=flat)](https://pypi.org/project/response/)
[![](https://img.shields.io/pypi/v/response.svg?style=flat)](https://pypi.org/project/response/)
[![travis-ci](https://travis-ci.org/fhchl/Response.svg?branch=master)](https://travis-ci.org/fhchl/Response)
[![codecov](https://codecov.io/gh/fhchl/Response/branch/master/graph/badge.svg)](https://codecov.io/gh/fhchl/Response)

The response module defines the `Response` class as an abstraction of frequency and impulse responses.

```python
from response import Response
fs = 16
x = [1]
# Create impulsive response and do chain of processing
r = Response.from_time(fs, x) \
            .zeropad(0, 15) \
            .delay(0.5) \
            .resample(10 * fs, window=('kaiser', 0.5)) \
            .timecrop(0, 0.6) \
            .time_window((0, 0.2), (0.5, 0.6))
# plot result
r.plot(show=True)
# real impulse response
r.in_time
# complex frequency response
r.in_freq
```
## Testing

Run tests in base directory with

	pytest

Always run tests before pushing code.

## Developing

Install for development with `pip install -e .` .

Comments should comply with the [Numpy/Scipy documentation style][1]. An
example can also be found [here][2]. Code should comply to the [pep8 coding style][3]. You can check if the code complies by executing

    pycodestyle
    pydocstyle

Git commit messages follow [Angular style][4]. Use [python-semantic-release][5] for versioning.

    semantic-release version
    # to tag and upload to github and pypi

And

    python setup.py upload

for pushing to GitHub and PyPi.

Sadly, `semantic-release publish` wants pypi pw and username + github tokens set as env variables, rather than just using local settings.

[1]: https://github.com/numpy/numpy/blob/master/doc/HOWTO_DOCUMENT.rst.txt
[2]: http://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_numpy.html
[3]: https://www.python.org/dev/peps/pep-0008/
[4]: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines
[5]: https://github.com/relekang/python-semantic-release


