Archive: Wish: High resolution voiceprint (aka spectrogram) like in "Nullsoft Tiny Fullscreen"


9th October 2003 04:01 UTC

Wish: High resolution voiceprint (aka spectrogram) like in "Nullsoft Tiny Fullscreen"
I actually enjoy looking at a plain voiceprint (like in Nullsoft Tiny Fullscreen 2001 v2.04). This seems to me like an easy preset to write... (but I dunno..)

Any similar existing AVS presets or plug-ins to recommend?

I like Tiny's voiceprint, EXCEPT I would like:

1. option of windowed mode
2. higher resolution (v2.04 has just 5 intensity levels!)
3. more configurability in layout
4. stereo voiceprint

Here's a layout that I envision...


______________________________________________
|~~LEFT spectrograph~~|~~RIGHT spectrograph~~|
----------------------------------------------
|. . . . . . . . . . .|. . . . . . . . . . . |
| . . . . . . . . . . | . . . . . . . . . . .|
|. (LEFT voiceprint) .|. (RIGHT voiceprint). |
|. (flows downwards). | .(flows downwards) . |
|. . . . . . . . . . .|. . . . . . . . . . . |
| . . . . . . . . . . | . . . . . . . . . . .|
|<-hi freq..low freq->|<-low freq...hi freq->|
| . . . . . . . . . . | . . . . . . . . . . .|
|. . . . . . . . . . .|. . . . . . . . . . . |
| . . . . . . . . . . | . . . . . . . . . . .|
|. . . . . . . . . . .|. . . . . . . . . . . |
----------------------------------------------


9th October 2003 04:41 UTC

with that kind of compatibility you shouldn't be looking into avs...look at the ones on components.winamp.com or wherever it is, or (even better) write it yourself....


9th October 2003 07:28 UTC

Thanks Atero.
I wanted to check if what I am looking for already exists.
So, I'm guessing you don't know of such a vis.

Yeah I'm looking at:
http://www.nullsoft.com/free/vms/
http://www.winamp.com/nsdn/winamp2x/...gins/vis.jhtml
I expect it to be a tough time ahead if I try to write it myself... but it will be good for me. It is shameful being a CS undergrad who knows he hasn't done any substantial real life programming (i.e. outside of school course work).


9th October 2003 09:35 UTC

Look at this page :

http://perso.club-internet.fr/pcharpen/avs_real.html

May be the preset named Oscillo (eventually with some modifications) will satisfy you ...


10th October 2003 06:20 UTC

Those timescopes/voiceprints can be done with a simple ssc code, but avs isn't really cabable of high resolutions (unless the preset is dead simple). If one should do this in avs, the 'more configurability in layout' would be up to you eventually. Also i don't know what exactly 'stereo voiceprint' should do :hang:


10th October 2003 21:36 UTC

perhaps something like this?


11th October 2003 01:49 UTC

You mean an empty zip?


11th October 2003 08:58 UTC

Excuse me while I hang myself!:hang:


11th October 2003 12:05 UTC

:D Nice one Gaekwad!

Yeah it's pretty damn easy to do it :) Tho i would use a static dm, because you can control the sliding by pixel and use something like y=y+1/h which moves the image one pixel according to the resolution, very useful and prevents those nasty 'works up to this and that resolution' problems ;)


14th October 2003 22:49 UTC

hey gaekwad2, Tuggummi,
thank you!
that's very close to what I'm looking for.

Ideally, I'd love to see:

1. stereo spectrum analyzer (as opposed to oscilloscope) and have the voiceprint stream down, aligned with the stereo spectrum analyzer.

2. higher resolution. the duophonic has way lower res than "Nullsoft Tiny Fullscreen".

3. more running efficiency (faster).


15th October 2003 01:20 UTC

:) ?


15th October 2003 01:54 UTC

wow! yes yes!
thanks gaekwad2!

Well, not as fast as I like, but I guess that's AVS...
I could run a thin (long horizontally) slice.

How about colours for intensity?
like dark violet for LOW, to yellow-white for HIGH?
Or follow the color scheme of the default winamp analyzer.
i.e. green -> yellow -> red.

Oh hey, you can use this track (All Your Base) to check that the voiceprint is working ok...
http://ayb.hypermart.net/

BTW, I like the default winamp-built-in spectum analyzer (set to "line style", "thin bands", "peaks on", "fastest analyzer falloff", "second slowest peaks falloff")

hint hint... :)

looks like AVS is probably doing something horribly inefficient.


15th October 2003 06:38 UTC

Yeah, AVS isn't exactly for high resolutions, because it runs so slow, but what it loses in speed, it wins back times 1000 in variety, customizing & aesthethics :D That's why we like AVS, not because it can run high resolution 3D graphics at 200fps, but because we can do what ever presets we like :)

Anyway enough about "how good avs is", yes i know the dm thing doesn't exactly work, you need to do a little trick there, but DS seems to work without the whole 1/h thing :D So cheers ;)´

As for the colors, im not sure exactly how it should be done, because i made the original colors in the "Winamp Vis" preset by chance :) But they were indeed Green -> Yellow -> Red


15th October 2003 11:11 UTC

Speed or aesthetics - the choice is yours.
If it were possible to make a preset like this with MilkDrop it would be a lot faster, but I'm afraid even with their new custom waves they're still quite far from AVS's versatility.


15th October 2003 20:16 UTC

Thanks again gaekwad2 and Tuggummi.
nicemix is really really close to what I envisioned.
i guess peaks are not essential.
(i've read the comments)

1 question...
the analyzer in nicemix is clearly clipping out at the tops much more than in the previous two (crappy and hiresmx).
Is that easy to fix?

Apologies, I'm looking at the AVS editor and am *completely* lost as to what does what. :)

My PC is dated but is it underperforming?
(Athlon C 1.0G @ 1.27G, SDR sdram PC133, GF2 GTS)
AVS (nicemix) gets 5-10 fps at 1024*768 on my PC.
Milkdrop goes well enough 20-40 at my normal resolution of 1432*1032.


15th October 2003 20:25 UTC

Do not expect high framerates with AVS, as you will not get them. Even top of the line systems(I have a PIV 3.2Ghz) don't get high FPS rates at that resolution. AVS is not made for high FPS rates - it's made to put out the most stunning realtime visualizations that exist.


15th October 2003 21:12 UTC

Not only does AVS have low quality output, it also seems to receive a lower quality version (8-bit) of the sound data (to prevent ripping of copyrighted stuff? I don't know...).


15th October 2003 23:41 UTC

1 question...
the analyzer in nicemix is clearly clipping out at the tops much more than in the previous two (crappy and hiresmx).
Is that easy to fix?
My mistake!:rolleyes:
(It's only one channel, right?)
Instead of explaining I attached a fixed version.
If it's still clipping, change the last number in the first two SuperScopes.
Your fps look alright (I get about 16 with a 2.6GHZ P4).
If you want to undertand AVS the best thing to start with is Atero's AVS primer (link is in his post).

16th October 2003 03:20 UTC

Hey gaekwad2,
thanks for all the friendly and helpful responses (and the presets!).
(i was half prepared to be flamed. heh.)

In response to anubis2003 (and others who have said AVS provide the most flexibility/creativity etc along those lines...) I don't know... Have you seen things like milkdrop and tripex3?
Maybe there are nice AVS presets around... but...
tell me mr. anderson, what good is a stunning preset when you get <10fps? :)


16th October 2003 06:06 UTC

I used to do 3½ years of avs with a 266mhz Pentium MMX... the low framerate then didn't bother me at all :) You grow to it, as i have now grow to my new comp and it's new screensize&speed. And because avs 1) Looks so friggin good (imho) 2) i can add my own flavor even to someone elses preset even if i never publish it.
These make it the #1 choice for me :) And there the framerate really doesn't matter.

But of course this is only my very subjective opinion.


16th October 2003 09:24 UTC

There are a few threads about "why is avs so slow?", doen't start a new one, or you will get flamed ;)
When I first saw AVS I also thought: uh, slow, low res etc. but I came back after I'd gotten tired of all the other vises.


17th October 2003 03:19 UTC

The best thing about AVS is it's versatility, you can do amazing mathamatic things like UnConeD, and you can do amazing eye-candy like Degenic, and it all uses the same program that is user-friendly and easy to pick up and make your own AVS's with.


17th October 2003 04:29 UTC

kaon: after all this discussing I just created the following preset ;).

It does what you want, should be fast enough for high-resolution and is somewhat customizable.

It requires colormap.ape.

You can change the colors by editing the Trans / Colormap. Just change the gradient to the palette you want. Right-click the gradient for adding/editing colors.

The scale currently shows the full spectrum. If you want a different scale, edit the following line of code in the frame-box of the Render / Superscope.

u=abs(x);

You can multiply it by a value 0..1 to show only lower frequencies:

u=abs(x)*0.5; // Half the spectrum

Or if you want a logarithmic frequency scale:

u=log10(abs(x)+1);

To average the values horizontally, you can change the getspec statement's 2nd parameter to a slightly higher value (1 = average over full spectrum), e.g:

red=getspec(u,0,above(x,0)+1);
changed to:
red=getspec(u,0.01,above(x,0)+1);

If you want a different intensity scale, you can add to the end:
red=log10(red+1);

Hope this is what you want. The code is pretty simple if you know a bit or two about programming, so you can make other customizations too (e.g. horizontal instead of vertical).

The only limitation is that due to the colormap step, it is limited to 256 levels of intensity. If you need more, you'll need to remove the colormap and code your colors directly as red/green/blue expressions in the superscope.


17th October 2003 07:58 UTC

Thanks very much, UnConeD.
I've tried it out.
It is much faster yes.
But my PC is still too weak to do it at full screen, full res.
Still, it is very nice! The configurable colors!
I will tinker more this weekend. (wld like to have spectrum analyzer at the top... like nicemix posted by gaekwad2) right now i HAVE to get back to my homework. yes it happens to be C programming... dining philosophers, shared memory, semaphores, threads blah... :(


17th October 2003 10:06 UTC

To combine nicemx's analyzer with UnConeD's voiceprint:
Load nicemx, disable the last Effect list, press '+' and choose preset, Select UnConeD - Stereo Voiceprint, it will be added as another Effect List, drag it to the bottom, set output to maximum or additive (UnConeD, which one is faster?) and change y in the SuperScope to -.55 et voilhrrng :mad: slower than nicemx! :cry:


30th October 2003 00:43 UTC

an idea
Hi everyone.
Here's an idea.

We have the voiceprint streaming down like in "unconed - stereo voiceprint.zip"

But the voiceprint should be churned out with a leadtime, so that what is being played is actually the part that passes by a stationary horizonal line say midway between the top and bottom of the frame.

Is that description understandable?

I think that would be very nice, if it can be rendered at the same speed.

(especially since we can't get a spectrum analyzer AND the spectrogram goin together at any decent speed.)


30th October 2003 02:20 UTC

Well that's not really possible, there's no way to draw data that has not yet been played.

The only thing I can think of is to make it draw in the center and then move it down/up so it's mirrored vertically.

A spectrum analyser is easy, check the attachment.


30th October 2003 08:42 UTC

You'd need an output plugin that would buffer the sound data. Not entirely impossible :D


31st October 2003 08:03 UTC

Originally posted by gaekwad2
You'd need an output plugin that would buffer the sound data. Not entirely impossible :D
Yeah and I thought these things do exist... no?
c'mon guys, wldn't it be sooo cooool?

seriously though, i really appreciate all the help. thanks!

31st October 2003 12:00 UTC

Actually it wouldn't be cool at all. This is the most boring preset I've ever spent time on.


5th November 2003 20:19 UTC

boring?
As an AVS preset, I guess you could say it's "boring"... not necessarily a bad thing though, depending on what you want out of music visualization.

This preset was aimed towards visually representing the music and nothing else. It is strictly, mathematically, dependant on how the music sounds, like a plain spectrum analyzer or o'scope.

After seeing the usual presets, I find that this kind of glorified spectrum analyzer is what I really want for everyday use.
For sure, using AVS to do it is grossly suboptimal, but at least for quick prototyping...


5th November 2003 20:34 UTC

I wouldn't use AVS to make this. AVS is not meant to make simple stuff like that - it would do it terribly. It wouldn't represent the entire range of sound, it would be extremely slow in comparison, etc. There are other plugins, etc. that are meant to do this and can do it well. No real purpose for it to be done by AVS.

If you wan't your own plugin that's made specifically to do this, then make it yourself, or hope that someone else who can easily make it shares your enthusiasm and does it for you. I don't think too many AVSers want to make that.

[edit]And I don't think an APE could be made to get music data from later in the song. Don't think APEs have that access. So the whole future thing isn't going to work with AVS.[/edit]


6th November 2003 06:00 UTC

Prototyping? So you're going to make a voiceprint plugin yourself someday? ... Even so i find it a bit weird to "test" it in avs first, but i guess you have your reasons and i respect those, but as anubis said, avs is far too inferior to make simple things (even though i am sure it was originally ment for that).

go figure... :igor:


7th November 2003 02:11 UTC

I'm a lazy guy. the layout i had in mind was not creative or anything, it's just intuitive. and i was feeling so sure that a voiceprint pluggin like I want must already exist... i wldnt wanna reinvent the wheel.
anyways, I really like UnConeD's final result. Depending on the piece of music u play, u can get to see really nice formations. like some Aphex Twin, and right now I'm playing "Try" by Doof. nice diamond formations...

Noisy songs are usually too "busy" to show interesting structure. I happen to be really into psytrance nowadays, and it's really nice.

Also, after staring at the voiceprint for a while, if you look else where like stationary text, you get cool visual distortions, prolly has to do with your visual systems getting adapted to the downward stream of the avs. it's a cool effect seldom available without the use of controlled substances. ;)