Time Frequency Spectrogram Inversion
Project description
tifresi: Time Frequency Spectrogram Inversion
'tifresi' to be pronounced 'tifreeezy' provide a simple implementation of TF and spectrogam suitable for inversion, i.e. with a high quality phase recovery. The phase recovery algorithm used is PGHI (phase gradient heap integration).
Installation
This repository use the ltfatpy packages that requires a few libraries to be installed. The package relies on some library that have to be installed beforehands.
- Install
fftw3
,lapack
andcmake
- On debian based unix system:
sudo apt-get install libfftw3-dev liblapack-dev cmake
- On MacOS X using homebrew:
brew install fftw lapack cmake
- On MacOS X using port:
sudo port install fftw-3 fftw-3-single lapack cmake
- Install cython (required for installing ltfatpy):
pip install cython
- Install the package from pypi
pip install tifresi
or from source
git clone https://github.com/andimarafioti/tifresi cd tifresi pip install .
Starting
After installation of the requirements, you can check the following notebooks:
demo.ipynb
illustrates how to construct a spectrogram and invert it.demo-mel.ipynb
illustrates how to compute a mel spectrogram with the setting used in this repository.
License & citation
The content of this repository is released under the terms of the MIT license. Please consider citing our papers if you use it.
@inproceedings{marafioti2019adversarial,
title={Adversarial Generation of Time-Frequency Features with application in audio synthesis},
author={Marafioti, Andr{\'e}s and Perraudin, Nathana{\"e}l and Holighaus, Nicki and Majdak, Piotr},
booktitle={International Conference on Machine Learning},
pages={4352--4362},
year={2019}
}
@article{pruuvsa2017noniterative,
title={A noniterative method for reconstruction of phase from STFT magnitude},
author={Pr{\uu}{\v{s}}a, Zden{\v{e}}k and Balazs, Peter and S{\o}ndergaard, Peter Lempel},
journal={IEEE/ACM Transactions on Audio, Speech, and Language Processing},
volume={25},
number={5},
pages={1154--1164},
year={2017},
publisher={IEEE}
}
Developing
As a developer, you can test the package using pytest
:
pip install pytest
Then run tests using
pytest tifresi
You can also use the source code checker flake8
:
pip install flake8
Then run tests using
flake8 .
TODO
- Improve doc
- Put the documentation on readthedoc or somthing similar
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tifresi-0.1.4.tar.gz
.
File metadata
- Download URL: tifresi-0.1.4.tar.gz
- Upload date:
- Size: 15.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c17d245dfdbe468369ada5ff3bcefcd8188dd14f4737b1918ce05f07eaf4919 |
|
MD5 | 43b3104cee33cea3696d8549435120cb |
|
BLAKE2b-256 | 4c1d6cbca135f31b9e3efb51b709afe35659a6c4e258c6e366773d33a1eac283 |
File details
Details for the file tifresi-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: tifresi-0.1.4-py3-none-any.whl
- Upload date:
- Size: 19.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 222c0ac16c2ff5212ed1cd5c7db8909a5a3d35954037cfb33de581b17e3de49d |
|
MD5 | a99ccd8afe7730061a7539e2dcaf8533 |
|
BLAKE2b-256 | 4253261bcbcb17139f8251a3cb99aa21f5e1811dc053cbeda13278afbc865033 |