Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_vis_spectrum_analyzer (Read 87788 times) previous topic - next topic
0 Members and 6 Guests are viewing this topic.

Re: foo_vis_spectrum_analyzer

Reply #525
I just did an update to 0730 over my existing 0720, and without changing anything I noticed right away that the spectrum bars now show a larger "gap" about every 8 bars that was not there in 0720;  the latter shows an even, "normally thin" space between all the bars down the spectrum (prism1, black background).

I have no idea where to begin changing settings to affect this, so thought I'd submit it as-is to see if it immediately "strikes a bell" with you as to the cause.  Thanks for any insight.

Re: foo_vis_spectrum_analyzer

Reply #526
Sorry, a couple of screenshots would have been a good idea:


Re: foo_vis_spectrum_analyzer

Reply #527
Sorry, a couple of screenshots would have been a good idea:
Rounding errors. I think I'm going to switch to integer numbers for the x-axis because whatever I do there's always something off.

Re: foo_vis_spectrum_analyzer

Reply #528
Thank you for all these corrections and enhancements, the LED style is better :)


Re: foo_vis_spectrum_analyzer

Reply #530
Hi,
I encounter a strange bahaviour of this component.
I use this component as a pop-up (I start it for a while just to see what is happening in the file and close it).
1. If I play a file and then start the component, the artwork does not show as a background. It only shows if I leave it working till the end of the file and the begining of the next (the artwork shows when the next file starts). But if I close the component and then start it again, the artwork usually is not there again till the start of the next file.
2. If I play an audio file with higher frequency than 44,1 and then start the component the red vertical line showing Nyquist is always at 22,05 (no matter if the file is 44,1, 48, 88,2, 96 or 192). But if I leave  it till the begining of the next file the red line becomes proper (in proper position).
3. If I see the artwork in the background and proper Nyquist line and change the dimensions of the window (ex. make it full-screen) - the artwork vanishes and the Nyquist line returns to 22,05 (regardless of the file resolution). In order to make it proper I have to wait till the next file or restart the file.
Those cases show that those features only work properly if the component is started before the actual file starts. It would be nice to be able to make it work properly all the time.
4. Sometimes - very randomly, so I can't think of any reason - the artwork just does not want to be shown no matter what I do or don't do. And sometimes the same artwork with the same file just shows properly. And it is not the same problem as in point 1.

Re: foo_vis_spectrum_analyzer

Reply #531
1. If I play a file and then start the component, the artwork does not show as a background. It only shows if I leave it working till the end of the file and the begining of the next (the artwork shows when the next file starts). But if I close the component and then start it again, the artwork usually is not there again till the start of the next file.
That's because I use a fb2k service that notifies all subscribers when new artwork is available to prevent all components from hitting the playing track at the same time. You loose the artwork because when you re-open the window it is a new instance that has not gotten the notification yet.
2. If I play an audio file with higher frequency than 44,1 and then start the component the red vertical line showing Nyquist is always at 22,05 (no matter if the file is 44,1, 48, 88,2, 96 or 192). But if I leave  it till the begining of the next file the red line becomes proper (in proper position).
A caching and optimization issue. I'll look into it.
3. If I see the artwork in the background and proper Nyquist line and change the dimensions of the window (ex. make it full-screen) - the artwork vanishes and the Nyquist line returns to 22,05 (regardless of the file resolution). In order to make it proper I have to wait till the next file or restart the file.
Those cases show that those features only work properly if the component is started before the actual file starts. It would be nice to be able to make it work properly all the time.
In DUI fullscreen mode is a new instance of the component. That's how fb2k has implemented it. In CUI the window of the existing instance gets resized.
4. Sometimes - very randomly, so I can't think of any reason - the artwork just does not want to be shown no matter what I do or don't do. And sometimes the same artwork with the same file just shows properly. And it is not the same problem as in point 1.
See higher explanation. There is a service to request the artwork at anytime. I'll see if I can detect the conditions to use it without impacting overall performance too much.

Re: foo_vis_spectrum_analyzer

Reply #532
The easiest way to get it on demand is with this..

Code: [Select]
album_art_data_ptr data = now_playing_album_art_notify_manager::get()->current();
if (data.is_valid())
{
// make a WICBitmap or something
}

To solve the problem reported, I think doing it inside your WM_CREATE handler would be fine. I hammer zillions of different SDK apis from there in my horrible javascript-y component. Retrieving images is cheap, it's what you do with it that can matter.

Re: foo_vis_spectrum_analyzer

Reply #533
Hi and thanks for an excellent tool. is it possible to use this extension just like you would use a spectral analyzer software such as spek (https://www.spek.cc/)

for example, when i analyze this flac track using spek the visuals look like this: https://i.postimg.cc/c1ggnBSz/spekvisual.png

and this is how the same track looks like using your extension: https://i.postimg.cc/cJL64QhX/foobarextension.png

what i want is for the extension to look like the app spek.exe. is this possible?

thhanks in advance

PS. so my use function for this extension will be to spot lossy/lossless files.



Re: foo_vis_spectrum_analyzer

Reply #536
v0.7.4.0, 2024-03-13

* New: Amplitude-based color selection.
  * The colors of the spectrum bars can be set based on the amplitude of the frequency when using a horizontal gradient.
  * The colors of the current gradient are used to create a color list. Works with fixed, custom and artwork-based gradients.
  * Only the Bar Area and Bar Peak Area styles support this feature.
* Improved: Gradient editing
  * Adding a color to a gradient will no longer recalculate the position of all colors. The added color will get a position between its predecessor and successor.
  * Removing a color from a gradient will leave all remaining positions untouched.
* Fixed: The user interface colors and Windows colors were not consistently used and updated after the introduction of styles.
* Fixed: Several minor fixes and tweaks to clean up inconsistencies and rough edges.

You can download it from Components repository or upgrade from within foobar2000.

Re: foo_vis_spectrum_analyzer

Reply #537
Just let Foobar update 0720 to 0740 on 1.6.17 and x64 v2.2--spectrum bars are now totally evenly spaced, thanks!  The save presets ability is also a real relief.

Re: foo_vis_spectrum_analyzer

Reply #538
Hi,

I have recently had a few (about 5) crashes of foobar when listening to SACDiso and using this component. Crash reports sent to foobar. WIN10, FB2.1.2/64, always latest official version of component (it happened only recently so it must have been last 2 or 3 versions of the component).

Re: foo_vis_spectrum_analyzer

Reply #539
After updating from v0.7.4.0-alpha-2 to v0.7.4.0 foobar crashes and is no longer executable.
Had to use the "foo_vis_spectrum_analyzer.dll" from my last system backup to get foobar running again.
(foobar2000 v2.2 preview 2024-03-08 and CUI)

Re: foo_vis_spectrum_analyzer

Reply #540
Hi and thanks for an excellent tool. is it possible to use this extension just like you would use a spectral analyzer software such as spek (https://www.spek.cc/)

for example, when i analyze this flac track using spek the visuals look like this: https://i.postimg.cc/c1ggnBSz/spekvisual.png

and this is how the same track looks like using your extension: https://i.postimg.cc/cJL64QhX/foobarextension.png

what i want is for the extension to look like the app spek.exe. is this possible?

thhanks in advance

PS. so my use function for this extension will be to spot lossy/lossless files.
That utility is pure low quality, why bother using at all?
Please remove my account from this forum.

Re: foo_vis_spectrum_analyzer

Reply #541
After updating from v0.7.4.0-alpha-2 to v0.7.4.0 foobar crashes and is no longer executable.
Had to use the "foo_vis_spectrum_analyzer.dll" from my last system backup to get foobar running again.
(foobar2000 v2.2 preview 2024-03-08 and CUI)
You can get all the previous versions of the component from the repository and from GitHub.

Do you have information on what you we're doing? Maybe a preset you can share that I can examine?

Re: foo_vis_spectrum_analyzer

Reply #542
I pulled the 0.7.4.0 release from the component repository until I can find out what's happening.

Famous last words: I runs stable on my machine...

Re: foo_vis_spectrum_analyzer

Reply #543
The crash came immediately after the restart following the update to 0.7.40. I have set up three instances. Attach the crash report and the settings.

Re: foo_vis_spectrum_analyzer

Reply #544
The crash came immediately after the restart following the update to 0.7.40. I have set up three instances. Attach the crash report and the settings.
Thx. I got a couple crash dumps from Peter.

Do you use Columns UI, by any chance?

Re: foo_vis_spectrum_analyzer

Reply #545
The crash came immediately after the restart following the update to 0.7.40. I have set up three instances. Attach the crash report and the settings.
Thx. I got a couple crash dumps from Peter.

Do you use Columns UI, by any chance?
@MaFred ,

Fixed. I'll release a hot fix ASAP. Your preset files were a big help.

Re: foo_vis_spectrum_analyzer

Reply #546
v0.7.4.1, 2024-03-14

* Fixed: CUI configurations with styles that use color source "User Interface" caused a hard crash.

Before I release it to the components repository, I'd appreciate some feedback from 1 or 2 CUI users that the bug is indeed fixed.

You can download it from GitHub.

If you're interested in the cause of the crash:

This release is able to respond to changes to the user interface colors in CUI. I tested a lot of scenarios except the one where styles were using CUI interface colors at startup. The style requested a user interface color that was not known yet at that point during startup.

Re: foo_vis_spectrum_analyzer

Reply #547
Thanks for the quick update - v0.7.4.1 with CUI works here!

Re: foo_vis_spectrum_analyzer

Reply #548
@metal_termite,

the next version will have a few extra styles that will make it more easier to emulate that effect.

Thank you sir. Much appreciated.

Also, thanks for improving performance when the component is in an inactive tab/minimized state. It matches the behavior of the stock visualizers in that regard. I've tested it by putting the component in three inactive tabs and it has no affect on performance (GPU usage) whatsoever. Freezing is no longer required, at least for me. Well done.

My last feature request, if you think it's worthwhile, would be adding a "Presets" submenu item to the context menu for quick access to loading saved presets: Context menu > Presets > {list of presets}

Re: foo_vis_spectrum_analyzer

Reply #549
Hi, I am new to the forum and I apologize if this is not the right place for this message.
Thanks pqyt for your work, I find it a very powerful and perfect component for our Foobar and it works great.
In my old 32Bit version I used the Peakmeter Spectrum Visualisation component (foo_uie_vis_peakmeter_spectrum) to know the DB signal of the left and right channel (I attach photo). Which has no updates.
I would like to ask you, if it would be possible in the future to implement this new component horizontally for 64Bit.
Thank you very much.