question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Adaptive specshow

See original GitHub issue

Is your feature request related to a problem? Please describe.

#1326 introduced an accelerated display for waveforms that switches between downsampled envelope plots and sample-precise step plots depending on the range of the viewport. This makes me wonder if we could do something similar for spectrograms and other dense (meshgrid) visualizations?

The motivation here is efficiently visualizing long, dense signals. Interactive mode can be pretty sluggish when zooming or panning over quadmeshes, and much of the time we may not even need that degree of precision.

Describe the solution you’d like

We could do something like the AdaptiveWaveplot object. There could be an upper-bound N on the number of pixels on screen at any time, and the underlying image is constructed by interpolating the spectrogram at N points. Whenever the viewport changes (zoom or pan), the mesh can be re-interpolated. The bounds could also be axis-separable, which might be helpful for things like chromagrams that are low-resolution vertically but potentially high-resolution horizontally.

Describe alternatives you’ve considered Our current specshow is fine for most applications, but it doesn’t scale very well. My usual workaround is to display a slice of the spectrogram instead of zooming into the full spectrogram.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Reactions:1
  • Comments:10 (10 by maintainers)

github_iconTop GitHub Comments

1reaction
bmcfeecommented, Jul 29, 2022

scipy 1.9.0 was released, so this is no longer blocked. Once the builds hit conda-forge, I’ll see if my prototype works. At that point, we can decide whether to move forward with this feature for 0.10 or not.

0reactions
bmcfeecommented, Jul 30, 2022

I’ll see if my prototype works

Confirmed, everything seems to work.

Read more comments on GitHub >

github_iconTop Results From Across the Web

librosa.display.specshow — librosa 0.10.0.dev0 documentation
Display a spectrogram/chromagram/cqt/etc. ... Range for the x- and y-axes. Valid types are: ... Frequency types: ... All frequency types are plotted in...
Read more >
Audio manipulation with torchaudio - PyTorch
torchaudio provides powerful audio I/O functions, preprocessing transforms and dataset. In this tutorial, we will look into how to prepare audio data and ......
Read more >
PSVR 2 Specs: How it Stacks Up Against the ... - IGN SEA
The inclusion of haptic feedback and adaptive triggers in the Sense Controllers combined with support for haptics in the headset could allow the ......
Read more >
How This Cheaper Phone Compares to the Pixel 6, iPhone 13
Nothing Phone 1 Apple iPhone SE (20... Display size, resolution 6.55‑inch OLED display, 2,400x1,080 pixels 4.7‑inch LCD; 1,334x... Pixel density 402ppi 326ppi Dimensions (Millimeters) 159.2 x...
Read more >
How to ensure TensorFlow Generator upsampling process ...
I've adapted the original tutorial code to work with various sized images with good results for the seed image and the ultimate output,...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found