Author Topic: (Version 1.8) Spectrogram Panel Plugin  (Read 101912 times)

sveakul

  • Sr. Member
  • ****
  • Posts: 2438
Well now I'm altogether considering integrating Spek. It looks like it piggybacks off of ffmpeg.

I'll take a look at this when I get a chance to tackle the other issues.

Cool idea, and thank you for remembering my placeholder  :)

zkhcohen

  • Sr. Member
  • ****
  • Posts: 346
Cool idea, and thank you for remembering my placeholder  :)

The placeholder should be fixed now. Wrapped up the release with 1.8.

Rewriting the entire plugin and looking into integrating Spek are the next things on my list.

sveakul

  • Sr. Member
  • ****
  • Posts: 2438
Thanks for the new version!  Differences in placeholder behavior noted just FYI:

In 1.74, when MB is first launched in either Radio or Music screens, the placeholder is not loaded at all until a Radio stream is played;

In 1.8, when MB is first launched in either Radio or Music screens, the placeholder is immediately loaded in both before anything is played, being replaced by the spectrogram when a Music file begins to be played.

This is noted just in case it helps diagnose something in the future.  The new behavior is perfectly fine, as a matter of fact I prefer it.

Good luck with the future re-write and the Spek integration!  And thanks again for not giving up.

SonicRings

  • Sr. Member
  • ****
  • Posts: 277
Can you please allow it to be placed here?
I will look at adding support for plugins in the Now Playing panel for MB v3.5
Apologies for necroing your old comment, but just wondering how the progress is coming along with this?

Carfamellow

  • Newbie
  • *
  • Posts: 18
Spectrogram images generated by this plugin are 256 pixels high. But at the same time, they are placed in an area with a height of 350 pixels in the player interface. How to increase the resolution of the spectrogram images to at least 350 pixels for better image quality? But it would be even better if there was an opportunity to increase the size of the plug-in area in the MusicBee interface, as well as increase the size of the created images to any value - 500, 800, 1300 pixels (in height).

mrbenn

  • Full Member
  • ***
  • Posts: 167
increase the size of the created images to any value - 500, 800, 1300 pixels (in height).

FFMPEG, for reasons I do not understand, grinds to a halt generating a spectral that has a non-power-of-2 vertical resolution. This isn't anything this plugin would be able to address without changing to something like SOX, but that presents its own issues.


Carfamellow

  • Newbie
  • *
  • Posts: 18
Okay, if you can only use degree 2, you can still create a higher resolution, for example 512, 1024, 2048. The viewing area of the picture in the player can be increased or decreased.

Carfamellow

  • Newbie
  • *
  • Posts: 18
The plugin page states

Quote
Update 2: Added height-resizing

But I haven't figured out how to change the height. Neither in the player settings nor in the plugin settings. Tell me how can I do this (change the height)?

WildIsTheWind

  • Newbie
  • *
  • Posts: 3
Is there any way to change the presentation of the spectrogram image so that less than the full song (say, 10-30 seconds) is displayed at one time, and it scrolls horizontally as the music plays, perhaps with some sort of arrow indicator for the current location?

This is an awesome feature to have in a music player, but it would be infinitely more useful if we could watch the frequency distribution in a smaller window so that we could see the spectral information of the music as it happens rather than just a birds-eye view of the spectral information of the song. Lots of interesting details get lost at this scale.

Even if this could only be implemented as a toggle-able window overlay rather than a fixed frame in the GUI (which would make sense, given the need for an aspect ratio closer to square), that would still be a huge improvement.

sveakul

  • Sr. Member
  • ****
  • Posts: 2438
Is there any way to change the presentation of the spectrogram image so that less than the full song (say, 10-30 seconds) is displayed at one time, and it scrolls horizontally as the music plays, perhaps with some sort of arrow indicator for the current location?
Agreed this would be cool, but then it would kill the current "seek" functioning across the whole song, which I would not want to lose.  As an option?  Sure, especially as that type of presentaton may then be applicable to radio streams.

zkhcohen

  • Sr. Member
  • ****
  • Posts: 346
Is there any way to change the presentation of the spectrogram image so that less than the full song (say, 10-30 seconds) is displayed at one time, and it scrolls horizontally as the music plays, perhaps with some sort of arrow indicator for the current location?

This is an awesome feature to have in a music player, but it would be infinitely more useful if we could watch the frequency distribution in a smaller window so that we could see the spectral information of the music as it happens rather than just a birds-eye view of the spectral information of the song. Lots of interesting details get lost at this scale.

Even if this could only be implemented as a toggle-able window overlay rather than a fixed frame in the GUI (which would make sense, given the need for an aspect ratio closer to square), that would still be a huge improvement.

I don't have the time to actively develop these plugins at the moment, but I made the source code public here: https://github.com/zkhcohen/mb_Spectrogram-Display

The plugin page states

Quote
Update 2: Added height-resizing

But I haven't figured out how to change the height. Neither in the player settings nor in the plugin settings. Tell me how can I do this (change the height)?

It's automatic and rounded to the nearest power of two. If the height is closer to 128px than 256px, it will snap to 128px.

eeik

  • Newbie
  • *
  • Posts: 11
Is anyone actively developing this plugin at the moment?

I've looked through a few former pages and haven't seen a feature request that I was thinking might be awesome to implement 🤷‍♂️

I'm not sure how feasible from an API integration perspective it would be to add a "custom column" within the main navigation area of MusicBee and show mini lower fidelity but still distinguishable spectrogram images as if they were album covers along side each track that's been computed or not.

Performance issues would be a concern for initial indexing, but if thumbs were saved within each local folder, it could be a slow index over time and then fast to display from there forward.

I may look into implementing this, I know some other DAW software does some similar things in their tracklists, so maybe at some point MusicBee core could have this feature embedded? ... or for now Spectrogram Panel Plugin could be extended 🤔

zkhcohen

  • Sr. Member
  • ****
  • Posts: 346
I'm not sure I understand what this would look like.

Do you have a visual example?


zkhcohen

  • Sr. Member
  • ****
  • Posts: 346
Have a look at how rekordbox's playlist does it:
https://rekordbox.com/en/feature/cloud-music-management/




Ahh, that's a very cool idea, but the API doesn't currently support images in the tracklist like that. You could try asking Steven via a feature request.