Archive: AVS Primer


19th May 2002 01:28 UTC

AVS Primer
IT'S HERE!!!

Be sure to read the readme, I couldn't PiMP it out.

This is by no means complete. If you know something I don't know, tell me (therealatero@hotmail.com)


19th May 2002 06:37 UTC

wow
All I have to say is, how much time did you spend making this!?!

I mean, seeing this almost made me stop writing my book! I'm in high school, and I don't have much free time to work on my book. Your method is a little different than mine, but yours probably is more effective. It's is almost depressing. :D

Good job! I'll check them out.


19th May 2002 11:55 UTC

Some additions/corrections:

- Trans/Movement: Source map.
Normally you specify a source set of coordinates that a certain pixel will use for its colour (and thus creating a shift or movement).
When Source Map is active, AVS will try to reverse the movement, by using the source as destination and vice-versa. However, because there is usually no 1-to-1 relationship the other way around, there will usually be gaps in the image.
This checkbox also has a third state: when active, AVS will switch between 'normal' and 'source map' every beat.

- Bilinear filtering: the AVS display is an image, and so it's composed of a grid of pixels. So when you wish to do a rotation or distortion, you can't do it perfectly, because the new grid doesn't match the original one perfectly. To get around this, AVS supports Bilinear Filtering.
I'll explain through an example: suppose a movement specifies that a certain pixel needs to have the value at coordinates (10.4 , 15.8). Without Bilinear Filtering, we would have to settle for (10, 16), the closest alternative. But this would cancel out subtle movements and introduce obvious artifacts. With Bilinear Filtering, AVS will take the 4 surrounding pixels (10, 15), (11, 15), (10, 16) and (11, 16), and blend them together using weights calculated off the fractional part of the coordinates (0.4, 0.8). Of course this is a little bit slower, but you get a much cleaner picture. Note that, because of the blending and rounding errors, Bilinear Filtering tends to fade out your image a tiny little bit.

- Trans / Unique Tone: your description is a bit weird IMO, because it's not really a fade-out. How about this:
The Unique Tone-filter internally reduces your image to a gray-scale first, and then gives it the colour you specified.

- The comment for Render / Starfield is the one for Render / Simple


Great work!


19th May 2002 22:16 UTC

Thanx, UnConeD. I'll update it right away!


20th May 2002 03:09 UTC

Well you left out one little thing in the readme so i figured i'd clarify it: arc functions, an arc-function can be thought of as the un-function of whatever function you’re working with. For example, the sine of 55 is about .8192, and the arcsine of .8192 is about 55. A problem people probably encounter a lot with these is that there is no arc sine/cosine/secant/cosecant for any number above 1 (I’m not sure what Winamp returns for this value.. it isn’t defined you get some number / 0, despite this Winamp usually still makes a line.) This doesn’t hold true for the tangent or cotangent, I think they become undefined at infinity, and of course 90. So mathematically, asin(x) = sin^-1(x) the thing you have to notice here is that it is the function itself that is to the -1, not the result. sin(x)^-1, is the cosecant which is the opposite of the sine. Which is one other thing you may want to include, secants (sec), cosecants (csc), and cotangents (cot) even though they aren’t actual functions in AVS they still can be useful and/or helpful for understanding the other functions.

sec=cos(x)^-1 or sec=1/cos(x)
csc=sin(x)^-1 or csc=1/sin(x)
cot=tan(x)^-1 or cot=1/tan(x) or cot=cos(x)/sin(x)

and this can be helpful because you can make things like big teeth :rolleyes: :
x=i*2-1;
y=1/sin(x*10)/20+getosc(0,1,0)

although one thing, for a lot of these you should only use dots instead of lines, because if you use lines winamp graphs it all wonrg. This happens because the functions are at sometimes undefined, for example: tan(90) = sin(90)/cos(90) = 1/0, hence division by 0.. this doesn’t work in conventional mathematics. So, the tangent line in this should be drawn out to infinity.. but that doesn’t really work for Winamp so it makes the connecting lines.


Oh and great work! never knew what interleave and timescope did ;)


(edit)

okay i got determined to find an actual use for these, the big teeth didn't really cut it hence i present you this thing that really isn't much better.. but hey, i tried :p

init:n=w+h;t=3.1415
frame:u=u+0.05
point:x=(sin(i*t*2));y=(cos(i*t*2)*1/asin(x)*0.1)+1/atan(x*sin(u+x))/6

(it's suspossed to look like smiles.. sort of)


20th May 2002 14:39 UTC

good job atero, (/me tries to find the add to favourite button, oh wait, this isn't deviantart.com), why don't you do a guide, like you got almost all the info, do a basic guide/faq and build it up


21st May 2002 00:33 UTC

I did. Language and Applications.


21st May 2002 16:34 UTC

do it on the web


21st May 2002 19:11 UTC

...wdym, 'do it on the web?'


21st May 2002 20:03 UTC

do a avs tutorial website


24th May 2002 09:45 UTC

Great work, really !!! Is there another place to get the last updated version ?


24th May 2002 20:12 UTC

This is great I learned a lot from the primer.
What is the purpose of effects lists? Is it just to organize your effects?


25th May 2002 07:44 UTC

Like Unconed in fond of saying "It's like a preset inside a preset".

You can give it a background image to work with. (whatever's showing before the effect list), and decide how it gets added to what is already there.


30th May 2002 02:49 UTC

Thanx, I forgot about the effect lists! I'll make a file on those right away!

And the final version will be posted here at some point - the only revisions thus far are minor (except for the starfield and effect list)