Comments (2)
Hi tasercake, thanks for pointing out this problem and providing a possible fix.
The reason for having the self.output_format
in STFT.forward()
is that Griffin-Lim (another inverse function inside STFT) requires the complex output.
But you are right, we should figure out a way to avoid this bug while allowing Griffin-Lim to work.
Since this fix will also affect Griffin-Lim, I think I need more time later to investigate.
Alternatively, would you like to make a pull request? So that I can just check your fix to see if it works for Griffin-Lim too.
I will post the instruction on how to do unit test if you are interested in doing a pull request.
from nnaudio.
I've created a PR with the changes I made on my end (though I haven't changed/added any tests yet) - #53
At least in my specific use case of inverting a magnitude spectrogram via Griffin-Lim, these changes didn't seem to cause any issues
from nnaudio.
Related Issues (20)
- Spectrogram.DFT() raise ValueError: too many values to unpack (expected 3) HOT 2
- CQT HOT 2
- General improvements HOT 9
- Learnable Window HOT 3
- CQT doesn't work on waveforms on short chunks like 0.5s HOT 2
- [Feature Request] Allow STFT kernels to be normalized HOT 3
- [Feature request] Log2 (octave) normalization in STFT HOT 1
- Mel_Basis kernel HOT 1
- Spectrograms not updating well at low frequency bins HOT 3
- Apply for multi-channel signal HOT 2
- Difficulty in using VQT feature with GPU support HOT 1
- test_stft fails with librosa 0.9.2 (python 3.9.13, numpy 1.22.2). HOT 1
- nnAudio-CPU memory growth HOT 2
- `conv1d` padding needs to be a tuple in `utils.downsampling_by_2`
- [Help wanted] Some tests are failing HOT 6
- Looking for a simple example of STFT/ iSTFT HOT 3
- [Feature Request/Inquiry] CQT inversion HOT 1
- Gammatone Filterbank waveform outputs HOT 4
- cannot re-initialize CUDA in forked subproess HOT 1
- torchscript support HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nnaudio.