Griffin-Lim for CQT
See original GitHub issueDescription
The GL implementation added in 0.7 #843 operates on linear spectrograms. At some point in the discussion, we raised the idea of having it work on CQT as well, but dropped the idea to keep things simple.
I just prototyped a CQT-based GL offline and it sounds pretty good. It seems like a useful kind of thing to have in the library. The only question for me is whether we wrap it into the existing implementation, or just have a separate function that’s nearly identical, but with different arguments and calls cqt/icqt
instead of stft/istft
. I’m leaning toward the latter, since the method is simple enough that a little duplication of code won’t be catastrophic to maintain.
What do folks think?
Issue Analytics
- State:
- Created 4 years ago
- Comments:12 (11 by maintainers)
Top Results From Across the Web
librosa.griffinlim_cqt — librosa 0.10.0.dev0 documentation
This implementation is based on the (fast) Griffin-Lim method for Short-time ... Sparsify the CQT basis by discarding up to sparsity fraction of...
Read more >nnAudio.Spectrogram.Griffin_Lim — 0.2.0 - Kin Wai Cheuk
Converting Magnitude spectrograms back to waveforms based on the “fast Griffin-Lim”[1]. This Griffin Lim is a direct clone from librosa.griffinlim.
Read more >Non-Griffin–Lim Type Signal Recovery from Magnitude ...
Abstract: Speech and audio signal processing frequently requires to recover a time-domain signal from the magnitude of a spectrogram.
Read more >librosa.griffinlim Example - Program Talk
python code examples for librosa.griffinlim. Learn how to use python api librosa.griffinlim. ... librosa.cqt · librosa.core · librosa.chirp.
Read more >TimbreTron: A WaveNet(CycleGAN(CQT(Audio))) Pipeline for ...
We propose TimbreTron, a pipeline that performs CQT-based timbre transfer with ... STFT magnitude is the Griffin-Lim algorithm (Griffin and Lim, 1984) ....
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
It’s subject to all the limitations of our icqt implementation, so yes.
A user can always
filterwarnings
to'once'
: https://docs.python.org/3/library/warnings.html#warnings.filterwarningsI don’t think we should do that from within the library though, since a warning can pop up from different sources within a session, and only showing the first one would obscure that.
I don’t think this is an issue for us, except maybe documentation. You may need to reset your warning filters before applying a new filter, but this depends on your environment (jupyter/ipython/spyder/python interpreter may all behave differently).