IPB

Welcome Guest ( Log In | Register )

> foobar2000 General Forum Rules

This is NOT a tech support forum.
Tech support questions go to foobar2000 Tech Support forum instead.

See also: Hydrogenaudio Terms of Service.

2 Pages V   1 2 >  
Reply to this topicStart new topic
Spectrum Visualization feature requests (0.9.5)
yodalige
post Oct 25 2007, 19:06
Post #1





Group: Members
Posts: 13
Joined: 29-May 06
Member No.: 31294



I know that the spectrum visualization is probably the last of most people's concerns regarding the new default UI, but it is actually one of the main reasons I switched to it. I loved the simple spectrum plug-in for columsUI with Foobar .8.x, but when foobar .9.x came along this component was not updated for .9 sad.gif . So when I saw that the new default UI had a similar visualization I had to switch.

Anyway, after looking at the feature requests page, I don't see anything for the spectrum visualization, so I thought I'd start one.

First of all, it is quite good already. I think it's awesome being able to change the color scheme of the amplitude scale, and the different channel options. Now for my requests.

First, it looks like the the frequency axis is linear, and I always thought a log scale works better since most of the action is in the lower 5 kHz. So, perhaps an option to switch to a log scale that allows us to see what's going on down there more clearly? I don't really know how hard it is to do, but it's just a single mathematical conversion, so I wouldn't think it would be that difficult (could be way wrong though). As for what particular log base you should use...I don't really know....perhaps you could have a slider bar that allows us to change the base of the log scale to adjust how much the lower frequencies are spread out, and the upper frequencies are squished...If this is too complicated, then you could just pick a good log scale and allow it as an alternative to the linear scale (or maybe a couple choices).

Second, It would be nice to have a way to customize the scrolling speed to personal preference. For instance, I was thinking I would speed it up some to get more spacial separation on the temporal axis smile.gif. Again, this doesn't seem like it would be too difficult, since it was probably arbitrarily set by some parameter. Maybe we could have something like a few different options for the speed, or even a slider bar.

Someone else mentioned elsewhere that they wanted to be able to see the future spectrum as well as the past. I don't really care about that too much, but I was thinking that it could probably be done by having a vertical line in the in the center of the spectrum display that marks the current playback time...then you would be able to see what's coming on one side, and what has already played on the other, and what's currently playing would be on the line. Could be a cool option.

Now, being able to see the spectrum that is coming before it plays sounds like it could possibly be a difficult thing to achieve, since you probably only have it compute the spectrum for the current playback time and then just shift it over to display the next time interval. Making it look ahead into the file to compute the spectrum before it is playing sounds like it could be difficult, but maybe not...maybe the whole spectrum is computed when the song begins playing and then it just displays a portion of it on the screen, then it would be easy to do.

OK....I think thats it for my requests and comments. smile.gif

Thanks!

This post has been edited by yodalige: Oct 25 2007, 19:10
Go to the top of the page
+Quote Post
radio_cascara
post Oct 25 2007, 20:40
Post #2





Group: Members
Posts: 37
Joined: 22-July 07
Member No.: 45540



what i really miss are grid lines at 16k and 22k or something like that.
Go to the top of the page
+Quote Post
Raclo
post Oct 25 2007, 20:48
Post #3





Group: Members
Posts: 34
Joined: 8-October 06
Member No.: 36112



Hi,
QUOTE (yodalige @ Oct 25 2007, 19:06) *
First, it looks like the the frequency axis is linear, and I always thought a log scale works better since most of the action is in the lower 5 kHz. So, perhaps an option to switch to a log scale that allows us to see what's going on down there more clearly?
I would like to have a logarithmic scale for the spectrograph too, because linear scale doesn't display correctly the images encoded in music by the process of steganography.
Examples and illustration of what I'm talking about can be found at this page :
http://www.bastwood.com/aphex.php
Go to the top of the page
+Quote Post
user
post Oct 27 2007, 08:38
Post #4





Group: Members
Posts: 873
Joined: 12-October 01
From: the great wide open
Member No.: 277



yes, the spectrum feature of foobar is important, I think for many 0.8.3 users the reason so far not to update until the great 0.9.5 !

(besides the os issue, that on older PCs with win95/98 you need older foobar, but well, indeed, I have had win2000sp3 even running some years ago on an 486with 75 MHz/4 for some word.doc and excel work!, so win2000 should be possible with older Pentiums to have a "music machine", oh, just found out, that win2000 is also only possible with foobar versions prior 0.9.5, but now back to topic)

I know the spectrum viewers of an old winamp (spectrum analyzer was plugin, which you needed to pay for), and the spectrum viewer of 0.8.3.

The 0.8.3 spectrum was more or less sufficient after all, it had some grid lines, markers to estimate the frequency values, like counting ...10, 11, 12, .. 15, 16,..., 20, 21 .. kHz

This feature I request kindly for future spectrum viewers.

The 0.8.3 had other nice options, you could select between
1. both channels,
2. mono=the combined signal of the stereo,
3. and the difference signal between left & right channel.

Feature 3. is nice to have also smile.gif


The features requested above like switching between linear and logarithmic scale make sense, iirc, the winamp spectrum had this feature.

This post has been edited by user: Oct 27 2007, 08:43


--------------------
www.High-Quality.ch.vu -- High Quality Audio Archiving Tutorials
Go to the top of the page
+Quote Post
yodalige
post Oct 28 2007, 18:35
Post #5





Group: Members
Posts: 13
Joined: 29-May 06
Member No.: 31294



When I started this topic, I should have included the [0.9.5] in the topic heading, since that is what other posts are doing to signify that the post pertains to the new version of foobar...And I can't find a way to modify the topic heading, so would it be possible for a Mod to add it in?

Thanks!
Go to the top of the page
+Quote Post
yodalige
post Oct 30 2007, 23:37
Post #6





Group: Members
Posts: 13
Joined: 29-May 06
Member No.: 31294



Just wanted to bump this topic back to the top, in the hopes that some of the requests might end up on the official request list (or at least acknowledged and explained why they may or may not be considered for implementation in the future). I know that the spectrum is probably the least of the dev's worries, what with more important bugs and usability issues to take care of, but I have been waiting since foobar 0.9 came out for a spectrum analyzer like this, and it is the reason I switched to the DUI, so it is important to me. smile.gif

Thanks!
Go to the top of the page
+Quote Post
user
post Oct 31 2007, 10:19
Post #7





Group: Members
Posts: 873
Joined: 12-October 01
From: the great wide open
Member No.: 277



btw., if somebody of the devs finds time to update the spectrum viewer,
maybe think also about an expanding (a switch to select) the frequency range.

CD has max. 22 kHz, but today you could play many other music containing theoretically up to 48 kHz (96 kHz sampling, or even 192 k sampling with 96 kHz frequencies.

So, if somebody should have eg. recorded his vinyl by high sampling rates, it is interesting to watch for higher frequency content, or think of DVD-A etc.

let's gather some features necessary:

1. a ruler/scale to determine special frequencies more exact

2. difference spectrum between left & right channels

3. switch to select between linear & logarithmic scale

edit: removed request for spectrum expander to 24, 28, 96 kHz, as it exists already automatically smile.gif
but it shows, that a ruler is necessary smile.gif

This post has been edited by user: Nov 6 2007, 09:33


--------------------
www.High-Quality.ch.vu -- High Quality Audio Archiving Tutorials
Go to the top of the page
+Quote Post
radio_cascara
post Oct 31 2007, 12:16
Post #8





Group: Members
Posts: 37
Joined: 22-July 07
Member No.: 45540



and here's a little glitch with default background, just cosmetic thing really smile.gif

normal playing, background is green (custom color1)


and this happens on startup or resize from smaller to bigger window (basically spectrum forces background color to black instead of chosen custom color1)


This post has been edited by radio_cascara: Oct 31 2007, 12:17
Go to the top of the page
+Quote Post
BGonz808
post Nov 3 2007, 05:26
Post #9





Group: Members
Posts: 20
Joined: 29-January 07
Member No.: 40110



For the VIS is there any way that an option be added so that we can choose what is being plotted on what axes. For instance, the current setup is x-axis is time, y-axis is frequency and color depicts intensity. Can there be a way in a future release of foobar 0.9.5 that we could set for instance the frequency to the x-axis and intensity to the y-axis? Also, could there be an option to choose between logarithmic or linear scales for ANY of the axes?

Thanks,
808
Go to the top of the page
+Quote Post
yandexx
post Nov 3 2007, 20:08
Post #10





Group: Members
Posts: 117
Joined: 11-March 04
From: Russia
Member No.: 12658



QUOTE (user @ Oct 31 2007, 13:19) *
btw., if somebody of the devs finds time to update the spectrum viewer,
maybe think also about an expanding (a switch to select) the frequency range.

CD has max. 22 kHz, but today you could play many other music containing theoretically up to 48 kHz (96 kHz sampling, or even 192 k sampling with 96 kHz frequencies.

So, if somebody should have eg. recorded his vinyl by high sampling rates, it is interesting to watch for higher frequency content, or think of DVD-A etc.

It already works this way, just try to resample or change # of channels through a DSP, and you'll see that Spectrum changes correspondingly.

My small feature request: allow me to drag Spectrum window by the client area, not only by the window title. Thank you!


--------------------
stimulating the audio nerve directly
Go to the top of the page
+Quote Post
yandexx
post Nov 5 2007, 20:16
Post #11





Group: Members
Posts: 117
Joined: 11-March 04
From: Russia
Member No.: 12658



Oh, and please create a mode where spectrum does not move, but is drawn from left to right, like the original mode of foo_vis_spectrum (where scrolling mode was adder later). I want this mode for the speed reasons.


--------------------
stimulating the audio nerve directly
Go to the top of the page
+Quote Post
eCat
post Nov 30 2007, 12:15
Post #12





Group: Members
Posts: 5
Joined: 22-November 07
Member No.: 48953



Unfortunaly, I'm not familiar enough with VS to create spectrum DLL. I use my own spectrum analyser, that based not on FFT. So, should we expect some with similar algorithm?
Go to the top of the page
+Quote Post
nightgaunt
post Jan 8 2008, 02:43
Post #13





Group: Members
Posts: 17
Joined: 20-June 05
Member No.: 22867



Thanks, you guys, for all the wonderful work you've put into this software. It's worked very well for me. I'm excited about the prospect of a log-freq visualization program, since it maps so neatly onto musical notation. I'm thinking that two things might be useful to help interpret the results, but haven't played around nearly enough to know what to expect.

First, it seems like the z-scale might be tricky -- we want to clearly see peaks across a wide range of loudness levels. Perhaps we should have a couple different scaling options? At the very least, it might be useful to have both monochrome and full-color intensity maps.

Second, in monochrome mode, I wonder if some sort of cyclical coloring scheme might be useful? That is, map luminance to loudness, but tint with a different color depending on position within the octave. If I'm thinking this through correctly, the overall color balance would reflect the key the song is written in.

Thanks again. We sure do appreciate all the effort you folks put in, and thanks for entertaining my naive suggestions.
Go to the top of the page
+Quote Post
foosion
post Jan 8 2008, 14:07
Post #14





Group: FB2K Moderator (Donating)
Posts: 4421
Joined: 24-February 03
Member No.: 5153



QUOTE (eCat @ Nov 30 2007, 12:15) *
Unfortunaly, I'm not familiar enough with VS to create spectrum DLL. I use my own spectrum analyser, that based not on FFT. So, should we expect some with similar algorithm?

Your code uses a regular DFT, whereas an FFT is just an algorithm to compute a DFT in O(n log n) instead of O(n^2), so I don't see your point.


--------------------
http://foosion.foobar2000.org/ - my components for foobar2000
Go to the top of the page
+Quote Post
eCat
post Jan 19 2008, 05:44
Post #15





Group: Members
Posts: 5
Joined: 22-November 07
Member No.: 48953



QUOTE (foosion @ Jan 8 2008, 16:07) *
QUOTE (eCat @ Nov 30 2007, 12:15) *
Unfortunaly, I'm not familiar enough with VS to create spectrum DLL. I use my own spectrum analyser, that based not on FFT. So, should we expect some with similar algorithm?

Your code uses a regular DFT, whereas an FFT is just an algorithm to compute a DFT in O(n log n) instead of O(n^2), so I don't see your point.

No, FFT is not JUST it, because it has poor quality. New multi-core CPUs allow quality DFT's. Because of it, it seems to be reasonable to include quality alternative.
Go to the top of the page
+Quote Post
Purple Monkey
post Jan 20 2008, 14:39
Post #16





Group: Members
Posts: 473
Joined: 25-June 05
Member No.: 22962



If you want to improve the quality of a fourier transform increase it's size, I assume by "quality" you mean how well the artefacts of a finite fourier transform are reduced. Why use a slower algorithm if you can do the same thing with a faster one?
Go to the top of the page
+Quote Post
eCat
post Jan 24 2008, 21:25
Post #17





Group: Members
Posts: 5
Joined: 22-November 07
Member No.: 48953



QUOTE (Purple Monkey @ Jan 20 2008, 16:39) *
If you want to improve the quality of a fourier transform increase it's size, I assume by "quality" you mean how well the artefacts of a finite fourier transform are reduced. Why use a slower algorithm if you can do the same thing with a faster one?

Assumptions is inappropriate, because that I wrote is unambiguous. FFT size of full audio dynamic range with acceptable resolution on low frequencies is astronomic. So, "doing the same thing faster" is impossible.

This post has been edited by eCat: Jan 24 2008, 21:26
Go to the top of the page
+Quote Post
nightgaunt
post Jan 24 2008, 23:28
Post #18





Group: Members
Posts: 17
Joined: 20-June 05
Member No.: 22867



QUOTE (eCat @ Jan 24 2008, 15:25) *
FFT size of full audio dynamic range with acceptable resolution on low frequencies is astronomic.


I'm in over my head, here, but it seems like this complaint is more easily addressed by something like a constant-Q transform?

This post has been edited by nightgaunt: Jan 24 2008, 23:29
Go to the top of the page
+Quote Post
eCat
post Jan 25 2008, 01:33
Post #19





Group: Members
Posts: 5
Joined: 22-November 07
Member No.: 48953



QUOTE (nightgaunt @ Jan 25 2008, 01:28) *
QUOTE (eCat @ Jan 24 2008, 15:25) *

FFT size of full audio dynamic range with acceptable resolution on low frequencies is astronomic.


I'm in over my head, here, but it seems like this complaint is more easily addressed by something like a constant-Q transform?

Well, will wait for it's implementation in foobar2000...
Go to the top of the page
+Quote Post
dhromed
post Feb 16 2008, 12:36
Post #20





Group: Members
Posts: 1304
Joined: 16-February 08
From: NL
Member No.: 51347



I've noticed some things in the spectrum vis. I come from Winamp, so all my comparisons are with the Tiny plugin that it has by default. I'm running 0.9.5, by the way. Some tweaks may have been done already.

* Bright pixels cause strange gradient streaks to the top and bottom of the display. It's especially noticable when there's little more than a beat in the picture: huge gradients shoot towards the top of the window. It's hard to see how this is an intended effect, because all it does is muddy up the display. Rock guitars do a good job of hiding it, but with not-full-spectrum music it gets a little annoying. It's like the visual equivalent of resonation due to high volume.

* Foobar's vis is generally a lot brighter than Winamp's. I suspect the volume-to-gradient mapping is done differently, or that it uses a slightly different analysis method. Not really a bug or issue smile.gif, but I see it, and I don't quite know how I feel about it until point 1 is resolved/fixed -- those gradients really get in the way.

Features I'd humbly like:
* a few more configurable colours than just foreground/background.
* fullscreen option
* left-to-right sweep rendering, as alternative to the scrolling mode. It's not quite as comfortable to look at continuously moving stuff.
* grid lines etc are fine, but I personally don't like numbers and lines distracting from the Pretty Picture, so I'd rather have it optional. I'm looking at music, not doing research on it.
* optinal linear frequency scaling as well. Though I'm not sure how much more detail one'd actually get.

A spectrograph is just about the only visualisation that's "accurate" from a human perspective, so I place some value on crisp, plain audio display (none of that milkdrop and geiss stuff for me, thanks).

Some screenshots (because what good is talking about a vis plugin without some visual support?):

Winamp 5.05 versus 5.5/Bento (something fishy in 5.5 when feeding data to the vis plugin, I think):
http://www.pliv.com/show/winamp_nsfs_voiceprint.png

Foobar, playing Underworld - Confusion The Waitress, showing excessive streaking -- I assure you that's not percussion. smile.gif
http://www.pliv.com/show/fb2k_spectrum_streaks.png

This post has been edited by dhromed: Feb 16 2008, 12:37
Go to the top of the page
+Quote Post
JoyO
post Feb 16 2008, 14:53
Post #21





Group: Members
Posts: 137
Joined: 20-March 06
Member No.: 28634



QUOTE (dhromed @ Feb 16 2008, 12:36) *
* a few more configurable colours than just foreground/background.
Its already done - double-click on white space below colors.

QUOTE (dhromed @ Feb 16 2008, 12:36) *
* grid lines etc are fine, but I personally don't like numbers and lines distracting from the Pretty Picture, so I'd rather have it optional. I'm looking at music, not doing research on it.
They are useful to check for transcodes, you can compare declared lowpass filter from headers to actual one.
Go to the top of the page
+Quote Post
dhromed
post Feb 16 2008, 15:15
Post #22





Group: Members
Posts: 1304
Joined: 16-February 08
From: NL
Member No.: 51347



QUOTE
Its already done - double-click on white space below colors.


Good stuff. Thanks.

QUOTE
They are useful to check for transcodes, you can compare declared lowpass filter from headers to actual one.


True, it's very useful at times. But not constantly, is my point. smile.gif
Go to the top of the page
+Quote Post
Walterrrr
post Apr 8 2008, 00:27
Post #23





Group: Members
Posts: 94
Joined: 30-November 05
Member No.: 26111



QUOTE (radio_cascara @ Oct 31 2007, 04:16) *
and here's a little glitch with default background, just cosmetic thing really smile.gif

normal playing, background is green (custom color1)


and this happens on startup or resize from smaller to bigger window (basically spectrum forces background color to black instead of chosen custom color1)

+1 for requesting this fixed.
I use a color for my background so that the different windows mesh with the color of foobar's buttons, menus, etc. and it's really noticeable everytime
Go to the top of the page
+Quote Post
HugoRune
post Jun 8 2008, 17:01
Post #24





Group: Members
Posts: 2
Joined: 8-June 08
Member No.: 54130



Displaying the difference between left and right channel has already been requested.

In the same vein I would like to make another request:

something I would really like to see would be the ability to display the spectrogram as a single mono channel, but use different colors depending on the difference between left and right stereo channel.

That way it would be easy to visually distinguish instruments or voices that are spatialy separated in the recording.


Is there any tool that already does something like this so I could see how it works out in practise?


A possible way how this could be implemented:

Extend the spectrogram color selector so that it allows three lists of colors instead of one:
One list of colors for values that are identical on the left and on the right channel
One list for values that are strongly predominant on the left channel
One list for values that are strongly predominant on the right channel.

And Example:
sounds coming from the center would be equally represented on both channels and could be displayed in black-blue-yellow
Sound from the right could be displayed in black-darkGreen-lightGreen
Sound from the right could be displayed in black-darkRed-lightRed

Everything inbetween these values would be drawn as a proportional mixture of the respective colors.

One problem is that stereo separation will vary greatly between recordings. While one soundtrack could have very strong stereo separation, with some sounds only on the left or the right channel, another soundtrack could have only at most small differences between channels.

To dynamically adjust to this, the difference between left and right should be stretched.
a variable could measure the bigest discrepancy between left and right for the last 10 seconds of output, and sounds that have this much discrepancy are considered "entirely right", or "entirely left".
Go to the top of the page
+Quote Post
mzso
post Jul 30 2008, 15:56
Post #25





Group: Members
Posts: 177
Joined: 2-May 07
Member No.: 43131



I'd like to propose a disable screensaver feature for the built in visualistions. I imagine it would be the most useful if it only disabled the screensaver if a song was playing.


If I change to logarithmic scaling in the spektrogram most of it becomes blurred. I'm guessing it's because samplingstays linear. If this is the case i would like to propose logarithmic sampling for that view. (Correct me if I'm writing nonsense)
Go to the top of the page
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
2 User(s) are reading this topic (2 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 29th August 2014 - 09:47