Archive: Upgraded AVS Editor


4th December 2006 21:57 UTC

Upgraded AVS Editor
I am really new to AVS. I think if it is possible then the AVS Editor should have some programming-editor-like features (except for writing codes of course) for new-comer and stupid like myself :D. Like---

1) A little bit more space for writing codes. It is really becomes difficult sometimes when handling huge chunks of codes. BTW an APE by TomyLobo is available for resizing the Editor window. So, as an option this APE could be included by Default in the installer or an option to Enlarge the window normally (Maximize button or something like that).

2) Syntax-wise-color (I don't know what else to say this, I am not a programmer.) What I am trying to say here is when you open-up some programing interface like MSVS and type, the code changes color according to the syntax (The most important:::- checks the Error in RED color).

3) A horizontal scroll bar would be a nice addition.

4) I don't know it is my fault somehow or not, but sometimes it is almost impossible to clear the AVS-cache (what I meant is the current values of the used variables) without switching to another preset and back. So, a Refresh/Recompile option should be there.

5) There are some popular APEs like Global Variable Manager, Triangle, AVS Trans ect. These APEs could be included.

6) In an empty Effect list we cannot drag any Effect or Render elements until there is already an element in the Effect list. Could this behavior of Effect list be changed?

Respected developers, geeks and AVS Gods, I said this before and now again that I am not a programmer at all. So, I don't have a slightest clue whether it is possible what I am suggesting. I just had these thoughts in mind and shared them with you. Almost every component of Winamp is being upgraded, even AVS(slowly). So, why not the AVS Editor???!!! Now it is up to you fine people to decide whether my note is a gibberish or I could point out something important.


5th December 2006 04:28 UTC

Re: Upgraded AVS Editor

Originally posted by Tooblai
2) Syntax-wise-color (I don't know what else to say this, I am not a programmer.) What I am trying to say here is when you open-up some programing interface like MSVS and type, the code changes color according to the syntax (The most important:::- checks the Error in RED color).
This is what I wanna see in new upgraded AVS editor! :D

5th December 2006 09:59 UTC

Re: Upgraded AVS Editor

Originally posted by Tooblai
1) A little bit more space for writing codes.
You can resource hack the vis_avs.dll to increase the size of the text boxes. There are various resource hacking tools or you can use visual studio.

Originally posted by Tooblai
2) Syntax-wise-color
(syntax highlighting) This is pretty complicated, you would have to recompile the AVS source replacing all the text boxes with rich text boxes and code in the support for highlighting. Its possible but I wouldnt expect it to ever happen.

Originally posted by Tooblai
3) A horizontal scroll bar would be a nice addition.
Resource hacking again

Originally posted by Tooblai
4) I don't know it is my fault somehow or not, but sometimes it is almost impossible to clear the AVS-cache
There are some hacks you could do to add a button which would save and reload the vis_avs.dat temporary preset file, but again requires some recoding so dont expect it to happen.

Originally posted by Tooblai
5) There are some popular APEs like Global Variable Manager, Triangle, AVS Trans ect. These APEs could be included.
Fair enough, but its not really a big deal to do it manually.

Originally posted by Tooblai
6) In an empty Effect list we cannot drag any Effect...
You need to drag effects into the left of the Effect list text to add them into it. Its not that obvious but if you experiment you will see there is a point when you are dragging it at which the effect appears to become nested under the effect list.

Your suggestions are all valid, but despite what you may think AVS really isnt being updated even at a slow pace. So any changes that you want made you will have to make yourself (or find someone to make them for you) using the AVS source.

AVS coding can be pretty frustrating, the interface is indeed horribly creaky, and there are numerous small/large bugs present in AVS; and generally the more complicated presets you make the more problems you will encounter. But for now at least, thats the price you pay for using AVS.

5th December 2006 13:16 UTC

increasing the size of the preferences isn't an issue. it depends on how much more you want it increased by since for compatability it's best to go for a dialog that will still display completely on 640x480 (as attached and you can see how much extra space would become available). i'm happy to look at some of the ui issues with the plugin, anything to do with the core part is beyond me really and on a plus side any changes made would be then officially bundled (hopefully). i know there's a few things in the wishlist that i can do, is just getting the time to do it but since i just play presets and not code them some feedback on the changes, etc will be helpful (like if the dialog increase in the attachment will be enough - have to use the ol' imagination of how things will be expanded out and all that)

-daz


5th December 2006 13:16 UTC

attachment here (forgot it due to a bloody call at work, meh)

-daz


5th December 2006 16:29 UTC

Re: Re: Upgraded AVS Editor

Originally posted by PAK-9
Your suggestions are all valid, but despite what you may think AVS really isnt being updated even at a slow pace. So any changes that you want made you will have to make yourself (or find someone to make them for you) using the AVS source.
Thanks very much Pak for the detailed reply. It's all clear now, and it seems that all my efforts writing the REQUEST is in vain :( .

BTW Pak you suggested to use some kind of resource hacking tool (I have no idea about them. Please give a Link if possible), as far I know isn't it illegal to use any kind of hacking tools? Visual Studio is out of the question as I am not a programmer.

I really didn't know the info you gave me about the Effect list, thanks again.

Now I remember something as you were talking about bugs in AVS. I found one also and I don't know if anyone has complained about this:::---
Suppose you are editing/creating an AVS Prest (Winamp Modern Skin is Turned ON, not the Classic Skin). You decide not to Save the preset and switch to another preset. Then the confirmation dialog comes up by default saying if you wish to save the preset first before switching to another preset. At this point if you happen to click on the Next or Previous button on the AVS window(actually any part of that window), Winamp Crashes.

And DrO, please try to do your best to make things change. Otherwise a few years later people will say, "Once upon a time there was a visualization plugin called AVS and some great AVSers like Pak-9, Tuggummi, UnconeD......" .............. Just Kidding :D .

6th December 2006 00:45 UTC

the classic ResourceHacker or the more up-to-date XN Resource Editor.

i will consider updating vis_avsmod.dll with your recommendations.


6th December 2006 07:08 UTC

Thanks for the Links Yathosho. The two softwares work just fine. Couldnot download the Vis_avsmod.dll though.
I am still curious if it is illegal using these tools over Vis_AVS.dll.
What I wished for was a general solution (not optional to anyone). I still wish to see some of the upgrades in near future (But not going to happen I guess).


6th December 2006 09:54 UTC

DrO: I dont really see the need to keep the editor within 640x480 since noone uses a resolution that low, 800x600 seems more reasonable. Proportionally the width does not really need to be increased, its the height of the edit boxes that is the problem since you can hardly see any code in them at all. Personally I would say the boxes need to be ordered as such in terms of size:

* Frame <-Biggest
* Pixel/Point
* Init
* Beat <-Smallest

The ratio's are probably about 0.5:0.3:0.1:0.1. If it were resizable keeping the ratio's that would be even better (and not especially difficult to implement).

For reference my AVS dialog looks roughly like this:

http://img246.imageshack.us/img246/4200/avsdlgoe1.png


6th December 2006 10:08 UTC

Originally posted by DrO
increasing the size of the preferences isn't an issue. it depends on how much more you want it increased by since for compatability it's best to go for a dialog that will still display completely on 640x480
This is a non-issue, its why we have resizing windows. The only problem with that is that some APEs (i.e. globmgr.ape) don't resize their config panels. However others do to work with TomyLobo's resize APE.

BTW, don't bother looking for that APE, it only resizes the code part of the window in the useless direction... I keep asking myself why he even bothered to make it, all it is is a big fat disappointment for anyone who downloads it.

As for fixing these things in source, it would not be easy to make a nice looking solution because of the APE issues anyway... although i think Texer II and Triangle resize fine I lost the code to globmgr.ape a while ago, ironically it was just before Tomy first suggested that I add resizing to it. :mad:

Originally posted by PAK-9
0.5:0.3:0.1:0.1.
Don't you mean 5:3:1:1? Isn't that the whole point of ratios after all? :rolleyes:

6th December 2006 20:38 UTC

Soooooooo AVS people out there....... Is it going to happen? :confused:

If I were a programmer, you guys could expect a lot from me in the upgrade-process of AVS. A pretty lame excuse Eh!!! :D


6th December 2006 21:29 UTC

the 640x480 thing is just an old habit of mine so we'll ignore that from now on.

well i did look for aperesize (despite the comment not to.. was just asking me to look into it) and i see what you mean, it just resizes the dialogs in the ratio that they already are (which makes sense based on other things i've seen with dialog resizing) but i guess more editor space is a better thing to have.

from looking at PAK's screenshot and comparing with the resizer ape, i can definitely see a more proportional scaling is needed to get this done (haven't properly looked at how the pages are handled in the avs dll so not sure at the moment how best to do something with it that'd be general enough to cover most cases).

also had a quick check for the horizontal scrollbars and yup, they're just a quick resource change to have the WS_HSCROLL style (though i noticed a few edit controls don't even show their vertical scrollbars so that'll need to be checked out).

so all i'll say for the moment is that i'll have a look at things (currently in a bug scrub on the jtfe plugin so i'll properly look into things after that's been dealt with (which considering how long since any real updates to the dll have been, another few weeks ain't going to matter too much, heh)

-daz


7th December 2006 18:41 UTC

Originally posted by DrO
it just resizes the dialogs in the ratio that they already are (which makes sense based on other things i've seen with dialog resizing) but i guess more editor space is a better thing to have.
It actually just uses the resizing that comes with the "APE". i.e. if the dialog deosnt already have resizing code then it doesn't work.

The APE resizes the preset tree to fill the horizontal space which bugs me. i.e. It resizes the bit nobody wants any bigger..

The extra height for the code boxes is pretty useless...

7th December 2006 19:35 UTC

Originally posted by DrO
so all i'll say for the moment is that i'll have a look at things (currently in a bug scrub on the jtfe plugin so i'll properly look into things after that's been dealt with (which considering how long since any real updates to the dll have been, another few weeks ain't going to matter too much, heh)
You tease. ;)

Thanks for looking at it.

16th December 2006 21:12 UTC

As Pak-9 suggested, I tried to Resource-Hack the vis_avs.dll and succeeded up to a point. I guess anyone can do that because no programming is involved.
So, would anyone tell me if it's illegal or not to resource-hack the vis_avs.dll file???!!! If not then I would like to show you what I did with the file, or else I will surely delete the modified file right now. After all I don't want to be called a criminal. :D


16th December 2006 21:31 UTC

Originally posted by Tooblai
As Pak-9 suggested, I tried to Resource-Hack the vis_avs.dll and succeeded up to a point. I guess anyone can do that because no programming is involved.
So, would anyone tell me if it's illegal or not to resource-hack the vis_avs.dll file???!!! If not then I would like to show you what I did with the file, or else I will surely delete the modified file right now. After all I don't want to be called a criminal. :D

vis_avs is open source, which means it's not illegals to post what you did.

22nd December 2006 15:33 UTC

If AVS is open source then will anyone please tell me where to get the source code from??? I tried SourceForge but couldn't find the code. A proper link to the source code would be very helpful. Though I don't think I can do much with the code :D but I still wish to try. Here is the Vis_Avs.dll I was messing around with (With the Resource hacker).


22nd December 2006 15:53 UTC

Silly me... forgot to attach the file :p
Oh no... I can't attach the file. Size of the Zip(maximum comp): 170,611 bytes. LZMA doesn't compress much either. What should I do??? :confused:


22nd December 2006 17:46 UTC

http://forums.winamp.com/showthread....hreadid=216394


22nd December 2006 21:40 UTC

though the project files were setup in the wrong place i thought (into the ml_ipod tree). also not to forget the code bundle update from here to have a 2.81d compatible build

-daz


5th January 2007 11:43 UTC

AVS......DEAD
I can see everyone has forgotten this thread. I thought AVS was dying, but looks like it is almost dead already. If anyone doesn't keep upgrading AVS, it will fade away sooner than we thought. And I'll be one of the saddest cause I just started.
The condition of AVS is worse on DA. I think none even browses the DA AVS forum page now. I posted a topic on December 27th, 2006 but none replied.

I can't help with the development thing but what I can help with is the ideas on how to improve and spread AVS. I just can't watch this art die in front of me. And if nothing is going to happen, THERE IS NO POINT HAVING THIS AVS WISHLIST FORUM FOR GOOD.


5th January 2007 12:39 UTC

Re: AVS......DEAD
Quote:


5th January 2007 13:12 UTC

a week with no reply doesn't mean something is dead (and the forums in general have been quiet what with the holiday period) and as stated i'd start looking into some ui things as soon as time allowed me to do so (which is sooner since i'm going to use avs as a test app for a new feature). things with anything move relatively slowly around here (and with the rest of winamp things) just due to low level of resources/people who can/are able to work on things. you just have to give things a bit of patience to get things done :)

-daz


5th January 2007 13:12 UTC

This subforum has been pretty meaningless for some time tbh

I really wouldnt get your hopes up too much about AVS updates, because you will probably be dissapointed (I'm sure I have mentioned that before). AVS is not dying because of a lack of interest or shrinking community it is because it is not updated effectively... and it really isnt anyones 'fault' that updates dont happen.

People need to appreciate that AVS was designed by people like Justin for fun, the code is extremely hacky and messy because it was made fairly quickly and purely with fast execution in mind. As a result it really does not lend itself well to architectural changes, and architectural changes are what is required. At the time of creation AVS was a very effective software rendering system, and the extensibility through APE's was well implemented for integration into that software rendering system. However you can only utilise that extension system so far before fundement updates need to be made.

The most dramatic change in recent years for graphics processing has been the enormous increase in the sophistication of graphics cards; modern graphics intensive applications which are not hardware accelerated are unheard of. This is the single largest restriction facing AVS, however given that the architecture is so heavily based around software rendering, the effort required to convert to a hardware accelerated renderer is huge (relative to the size of the project). Basically none of the existing renderer can be ported, since modern graphics libraries simply do not follow the paradigm of "here is a huge array of pixels for you to write into".

Some parts of AVS arguably could be improved more easily (the interface being one of them, since it is basically a series of widgets that are not deeply rooted in the code) however it smacks of polishing a turd when you know that the most significant and important changes (i.e. to the renderer) probably wont be made. Plus when (given what I have said) most parts of AVS would need to be re-written almost from scratch.. you have to question wether the effort would not be better spent just writing an entirely new visualisation program...

apologies for length :P


5th January 2007 13:34 UTC

Originally posted by PAK-9
People need to appreciate that AVS was designed by people like Justin for fun, the code is extremely hacky and messy because it was made fairly quickly and purely with fast execution in mind. As a result it really does not lend itself well to architectural changes, and architectural changes are what is required.
Just to back this up, last night I was going to change DM (I eventually realised that my change was stupid with some help from UnConeD :p you can remove the ugly edge effect at the expense of breaking the tiling when there are multiple texture tiles per dm grid square), the code in that area is so heavily optimised and wrapped in macros that you would pretty much have to write a new one from scratch to make any functional changes. Its all done with look up tables and some quite clever, but ultimately frustrating to read, macros. Its also got some bugs, which even Justin couldn't work out when he was working on it himself... Many of the other AVS components are the same.

However, the UI changes mentioned are not difficult to implement, changing the resources is very easy (I am struggling not to say trivial here), altering the UI code is also not very hard, but its also not needed for most of what has been described above. But as PAK said... its like polishing a turd.

Originally posted by PAK-9
Basically none of the existing renderer can be ported, since modern graphics libraries simply do not follow the paradigm of "here is a huge array of pixels for you to write into".
Although its not an encouraged way to do things, all of the major graphics libraries can be integrated with AVS in theory. GDI, GDI+, DirectX and OpenGL can all read and write to a grid of pixels in memory. It is just more of a chore than it could be... AVS infact uses DirectDraw, which has been abandoned by Microsoft.

5th January 2007 14:06 UTC

Some parts of AVS arguably could be improved more easily (the interface being one of them, since it is basically a series of widgets that are not deeply rooted in the code) however it smacks of polishing a turd
aye that is sadly quite true and from my side of things, polishing is about my limit of what i can do since my own attempt to do some improvements of the multi-monitor support never worked out as well as i'd have liked it to do. it's a hard one to make a call on since the few things i've tinkered with so far with it have just been little things to bring to an extent the plugin upto the current plugin specs for newer winamp builds (like the multi-user settings fix for the previous avs used). any major changes are pretty pointless to do since it is true that a lot of the plugin would need to be re-written.

i'm just going to do what i think is needed for some polish but anything else will have to be done by someone else if they do want to even do it.

-daz

5th January 2007 15:41 UTC

Re: Re: AVS......DEAD

Originally posted by jheriko
If you want to do something then do something.
With all due respect J, I think you are missing my point ;).
This is the Wishlist forum. If I were able to write some useful code for Winamp/AVS, would have done already and submitted them on the Development forum. Then I wouldn't have begged for the development from you geniuses :(.

As for DA, you wouldn't believe it--- only 9 posts in entire 2006!!! And 7 of them by Yathosho. If you don't believe me, check out for yourself.

DrO, thanks for your efforts. It's nice to know that work is in progress slowly. I had no idea that things are real slow here :D. Yesterday I read this entire forum http://forums.winamp.com/showthread....readid=210240. Got really sad and frustrated. Forgive me I had been rude somehow.

Pak-9, would you suggest anything on how to keep AVS up to the modern Graphics technology?

It is sad that I came at the end of AVS era.

5th January 2007 22:54 UTC

Hint: Bug Pak about Fridge.


6th January 2007 01:19 UTC

COMMENCE PROGRAM:
BUG PAK ABOUT FRDIGE


6th January 2007 02:08 UTC

Originally posted by jheriko
Although its not an encouraged way to do things, all of the major graphics libraries can be integrated with AVS in theory. GDI, GDI+, DirectX and OpenGL can all read and write to a grid of pixels in memory. It is just more of a chore than it could be... AVS infact uses DirectDraw, which has been abandoned by Microsoft.
I think you are missing my point slightly.. yes the libraries can write to an array of pixels, however that doesnt really help. If you were to take the result of AVS's processing and pass it to a gfx lib for dumping to the screen you really wouldnt gain anything. To improve the performance you would need to replace the software line renderer with a call to OGL to render lines, replace the texer with some sort of accelerated bit blitting, replace the convolution effects with some sort of extension based convo etc.. etc.. none of it really ports, each component has to be replaced by a hardware accelerated parallel.

Originally posted by Tooblai
Pak-9, would you suggest anything on how to keep AVS up to the modern Graphics technology?
I think I have pretty much answered that question... the only realistic solution is re-writing the renderer which is a thankless task noone is going to undertake.

15th January 2007 10:25 UTC

please add more fridge coolant!!!


20th January 2007 21:59 UTC

wee!!
I decided to have some fun and well heres my attempt at a better avs. pak-9 i borred your suggestions on the text box sizes. for compatibility reasons i decided not to change texer2 and GVM to match the sizes of my modded version.

this will be a 2 part installation.
unzip part1 and then unzip vis_avsBettered.zip in the same folder where you put the .z01 file.


20th January 2007 22:06 UTC

part 2
heres the other part.


25th January 2007 16:36 UTC

Changed size and added scroll bars of almost all code-boxes (didn't change any APEs included with Winamp).
Configured for resolution >>> 1024 X 768
Extract the tow Zip files in a folder and run the vis_Merge.bat to get the dll file.


25th January 2007 16:42 UTC

Contains the other half of the dll and the vis_Merge.bat file.


27th January 2007 23:59 UTC

why in the world would you use a batch file. when in my method all you need is the one file and use winzips built in ability to split and recombine?


28th January 2007 11:42 UTC

That's just a matter of taste and nothing else. :)
BTW, I forgot to mention on my previous post... take a look at your Dynamic Movement's Init code-box. The horizontal Scroll bar is messed up. :D


28th January 2007 19:46 UTC

http://sendspace.com
http://yousendit.com
etc.


26th February 2007 23:21 UTC

Tooblai i recently downloaded the souce for avs and i noticed while skimming the code i discovered the words
"Syntax Highlighting" i believe someone is trying to make your idea a reality.


2nd March 2007 07:43 UTC

Yay!!! :D
It's finally happening. :up:


2nd March 2007 13:13 UTC

not sure how since no one's released any newer code that i've even been aware of (especially from nullsoft). wouldn't be surprised if that's been in there as comments for a few years of stuff to possibly do, heh

-daz


3rd March 2007 23:14 UTC

actualy it a part of the code.
I was interested and looked for the comment slashs but found none. i think there is a possibility.
i'll show the text when i return next week.


9th March 2007 22:12 UTC

Found it.
Heres what i believe to be the code for it.
=============================================

#if 0//syntax highlighting
HINSTANCE hRich;
#endif

static int init(struct winampVisModule *this_mod)
{
DWORD id;
FILETIME ft;
#if 0//syntax highlighting
if (!hRich) hRich=LoadLibrary("RICHED32.dll");
#endif
GetSystemTimeAsFileTime(&ft);
srand(ft.dwLowDateTime|ft.dwHighDateTime^GetCurrentThreadId());
g_hInstance=this_mod->hDllInstance;
#ifdef WA3_COMPONENT
GetModuleFileName(GetModuleHandle(NULL),g_path,MAX_PATH);
#else
GetModuleFileName(g_hInstance,g_path,MAX_PATH);
#endif
char *p=g_path+strlen(g_path);
while (p > g_path && *p != '\\') p--;
*p = 0;

#ifdef WA2_EMBED
if (SendMessage(this_mod->hwndParent,WM_USER,0,0) < 0x2900)
{
MessageBox(this_mod->hwndParent,"This version of AVS requires Winamp 2.9+","AVS ERROR",MB_OK|MB_ICONSTOP);
return 1;
}
#endif


10th March 2007 00:18 UTC

As I mentioned before you would need to replace text boxes with rich text controls for syntax highlighting and that is exactly what that code stub is for (great minds eh :p).

However linking the rich edit dll and actually integrating syntax highlighting are very different things; you would need to see if there is any other relevant code or if (as I suspect) this is just the preliminary framework for later features.


12th March 2007 15:41 UTC

btw you can use [c0de][/code]


16th March 2007 00:45 UTC

scanned the main.cpp from the latest avs src download and there is nothing else except a piece of code after the big one i submitted.

//syntax highlighting
hRich=0
;

thats all that was left.



Originally posted by Tooblai
I can't help with the development thing but what I can help with is the ideas on how to improve and spread AVS. Join the queue. Having ideas of this quality means basically nothing. Implementing them is everything. None of your ideas are new, clever or special. We have had them before (mentioned in this thread countless other times), we have even done things to deal with some of them (TomyLobo's terrible resize APE, GVM having decent code boxes, etc...). Most people with the intelligence to write software would have all of your ideas on inspection.

If you want to do something then do something.

I'm sorry noone replied to you since 27th of December, but thats just the way it is. This forum is not frequented that often and 27th of December is slap in the middle of one of the quietest times of year.