View Full Version : New Visual Editor for AviSynth
vion11
9th January 2004, 00:03
I'd like to get some feedback on this new approach
to script editing. Nearly everything can be adjusted
with mouse. Sourcefilters are accepted from Explorer
by drag'n'drop, etc.
The project is in alpha state, but can generate
(some) working scripts.
There are still problems with many functions I don't
know which parameters are required or can be named.
The function descriptions are placed in a ini-file.
Ideas for better solutions are highly welcome.
If the API is ready, I will include support for plugins,
user functions, *.avs reading and writing and
preview for filters.
I wish a lot of fun, and tell me what you think about!
Current version now: 0.3.3
There is a new guide and download (http://www.avisynth.org/vion11/aveguide.html) available.
Changes:
- frame preview per filter
- auto organize filters
- experimental AVI Export (video only)
- better INI handling
- updated to msxml 4
Changes May 2004
- slightly updated filter definitions in xml
Richard Berg
9th January 2004, 04:07
There is an (ugly but useful) API that enumerates internal and external functions using the string database. VDubMod uses this. Look in avisynth.cpp.
sh0dan
9th January 2004, 10:27
This looks a lot like a GUI that would be my next big project if I by some big chance got the time for it. It looks great!
It does however throw a "run-time error '76' - Path not found" when I try to launch it.
Windows XP, SP1.
You should have a look at importing the XML-files found at used for AVSEdit (http://cvs.sourceforge.net/viewcvs.py/avisynth2/AVSEdit/filters/).
vion11
9th January 2004, 13:04
Setup (http://innerphase.de/Setup-AVEditor.exe) is updated.
Some error handling is added and ignore is an option.
I'll try to get some information out of the string database now..
sh0dan
9th January 2004, 13:17
Now the GUI shows up, but a similar error '76' is showed right after the GUI is drawn.
vion11
9th January 2004, 15:38
Setup is updated (0.1.8)
Error(76) found and fixed.
sh0dan
9th January 2004, 16:08
Wow! Looks really great - it almost feels like Shake! My dream come true! :cool:
A really great start!
Minor stuff I'd like:
* Link targets should be droppable on the entire clip frame - just connect to the first non-used input connector. The orange dots are hard to hit.
* One output -> multiple inputs. I suspect this would require some kind of sorting/ordering to keep everything in the right order. Also circular graphs are already a problem I can see.
vion11
9th January 2004, 23:42
Next targets are:
* local function database
- import or check of available functions depending on current avisynth version
- a gui for maintenance the functions (at least for me)
-> no overwriting of user defined default values on updates
-> enables faultless handling of multiple and optional clip variables (Overlay, BlankClip, etc)
-> automatic use of colorconversion filter
* redesign of Filter UserControl
-> automatic check of parent or child use for target drop
-> visual feedback for child drop if multiple connectors
-> more icons
* use of C API (http://forum.doom9.org/showthread.php?s=&postid=425430#post425430)
-> loading and saving
-> "pretty printer" for other scripts
-> autoload last project
-> special Filter for User Functions
-> plugin-support
* keyless parameter input
-> $Color with picker and palette
-> optionlists
* Forgotten something?
I can't identify any API on available functions
except FunctionsExists. More Hints please.
FredThompson
10th January 2004, 04:40
Wow! It sure paid to surf through this forum today!
That screenshot is incredible.
There are a number of timeline editors for audio which might, just might, be capable of being folded into this. Let me know when you're ready to look at them and I'll supply the info.
Richard Berg
10th January 2004, 04:42
// *******************************************************************
// *** Make Plugin Functions readable for external apps ***
// *** Tobias Minich, Mar 2003 ***
// BEGIN *************************************************************
#if 1
if (prescanning) {
AVSValue fnplugin;
char *fnpluginnew;
try {
fnplugin = env->GetVar("$PluginFunctions$");
int string_len = strlen(fnplugin.AsString())+strlen(name)+2;
fnpluginnew = new char[string_len];
strcpy(fnpluginnew, fnplugin.AsString());
strcat(fnpluginnew, " ");
strcat(fnpluginnew, name);
env->SetGlobalVar("$PluginFunctions$", AVSValue(env->SaveString(fnpluginnew, string_len)));
delete[] fnpluginnew;
} catch (...) {
fnpluginnew = new char[strlen(name)+1];
strcpy(fnpluginnew, name);
env->SetGlobalVar("$PluginFunctions$", AVSValue(env->SaveString(fnpluginnew, strlen(name)+1)));
delete[] fnpluginnew;
}
char temp[1024] = "$Plugin!";
strcat(temp, name);
strcat(temp, "!Param$");
env->SetGlobalVar(env->SaveString(temp, 8+strlen(name)+7+1), AVSValue(params));
}
#endif
// END ***************************************************************
I don't have the corresponding VDubMod code handy, but this should give the basic idea.
vion11
11th January 2004, 11:16
@FredThompson
Which advantages could users expect from a graph editor
extended with timeline oriented features in the audio domain?
@Richard Berg
THX, is there no way to get information about internal functions?
FredThompson
11th January 2004, 12:08
If you have multitrack sound capability with a timeline paradigm you could have environmental sound. There are a number of very good free audio apps and data files. Music, sound effects, voiceover, etc. are all possible. The key is to specify when a track or effect is to be used, for how long, and the parameters.
If you look at the links page I keep on Donald Graft's site you'll see a section for audio. In there are links to Audacity and some cSounds sites.
In some regards, your question is kind of like asking what AviSynth is userful for except these are for audio, not visual.
The casual converter from analog to digital probably wouldn't care about this type of thing but if you're interested in taking AviSynth more in the direction of Adobe Premiere, this is something that fits.
vion11
11th January 2004, 15:38
IMHO AviSynth will never replace Premiere in any way.
I can't imagine someone will get money for this job.
AviSynth emerges as a powerful production tool due its
script language when you have to automate the process
of preparing and organising thousands of video files for
DVD-Authoring.
So its place in the production pipeline is between Premiere
and authoring.
Upcoming DVD-Applications like quizzes, iq-tests, catalogues
and last not least interactive movies will be enabled by
intelligent DVD-Publishing applications using AviSynth as
engine. That's the place coder and scripter get paid.
FredThompson
11th January 2004, 20:15
I didn't mean AviSynth would replace Premiere. I meant a GUI interface with the ability to "hide" the details of working in the time dimension will be a huge boost. Cinelara is more of a competitor for Premiere. Many times people work on just one source video file. They may need different processing at different times within that one file. AviSynth can do it, certainly, but it is far more complex to do by hand than with some kind of GUI. Regardless, it looks as if what you are developing will be a fantastic way to quickly see the effect of multiple operations.
FredThompson
11th January 2004, 23:17
I've thought of a few more operations where a timeline would be helpful:
1) conditional application of overlay. Some sources are a mix of true 4:3 and letterboxed content. Masking the letterbox with a known solid or pattern has advantages.
2) conditional application of logos. This can be used to reduce swim in stationary bugs. The idea is to get a good averaged copy of the bug then overlay it. However, this only works when the bug is stationary.
3) conditional application of forced B&W
4) conditional applicaition of smoothing (more useful during movie credits than during the actual movie, for example.)
See what I mean? There are a number of reasons a visual editor would be a huge benefit with application of filters to only part of a stream. Sure, you could load the stream into VirtualDub and write frame numbers on a piece of paper then hardcode them into the script. A GUI with timeline would be far more useful.
vion11
12th January 2004, 00:41
@Sh0dan
After a third and fourth look I found core.xml at sourceforge.
No questions any more on function description, THX.
@FredThompson
You are right: there is a need for timeline editors. I remember
1993 an editor from AiM called videomaker. You could load pictures
and render avis with common effects. It had a timeline and a view
to show different compositing layer. The gui was a shame
but it works under win 3.1 and some videos have been made with it.
Don't know the current version of Premiere 1993.
Now 2004 we have AVID DV as freeware, which needs about
3 XGA-Screens to handle all option and project settings
windows plus output. From the video point of view it's the
best non-linear editing system available compared by price.
But and this is a really big one, the only thing
you can do is linear video. It's the cutter who puts one scene
after the other and when he is ready no one will change anything.
What I'm talking about are interactive movies, the user decides
what seeing next. He is the cutter. He looks his own movie, with
happy end or all dead. So movie meets gaming and DVD is the
plattform.
My requirements are like the follwing:
A bunch of video file and all have to start with a 1 sec fadein,
With avisynth its a ten second job for humans, with timeline
editors it is like marathon with 40 mouse kilometers.
Things are still in development and real interactive Movies are
expensive to produce, let's talk in two or three years again,
where to invest power and energy.
If you interested, you'll find backgrounders and good links
at www.sagas.de (http://www.sagas.de) (english only)
FredThompson
12th January 2004, 01:12
What is your vision for this GUI?
vion11
12th January 2004, 22:00
I will give Hollywood the tools to make interactive-movies.
FredThompson
12th January 2004, 22:11
Ah, I see, that's a very different use than I imagined. I was thinking visual timeline application of AviSynth. That would also be very helpful but is quite different.
Richard Berg
13th January 2004, 03:33
As long as we're fielding timeline-like feature ideas, I think a simple but useful application would be an editor in the literal sense: allow someone to turn a bunch of footage into a scene. You don't need any fancy transitions, and the output can be a human-readable script file. In the grander version of this, you have a bunch of editors each composing scenes into a movie; with Avisynth the only "server" component you need is a CVS for the scripts.
FredThompson
13th January 2004, 03:44
Yes, that's sort of what I was envisioning. The most error-prone and tedious part of editing, for me, is timeline-conditional processing. I've seen a few attempts at visual editors for AviSynth but timeline is never an aspect. VirtualDub is the same way, temporal keying of filters is a total kludge.
That's also entirely different than the direction vion11 is going. I'm not sure I understand how interactive movies would work.
vion11
13th January 2004, 14:02
The difference between linear movies and interactive movies
may compared with reading a book and surfing the internet.
FredThompson
13th January 2004, 14:23
I understand that. I've tried to design open-ended games and no matter what, there's not enough memory/storage/power to make it boundless. Your talking about a visual version of the concept which is used in some books where the reader makes a decision then moves to whatever page is the result of that decision.
vion11
13th January 2004, 23:49
A brief view into my idea:
Every story consists of actors, their doing,
locations und the time.
The actors follow their pathes through the story
and meet each other at different locations
and timestamps
Every path belongs to exactly one actor, has
start and end time.
Along these pathes decisions may occur and the
path becomes a graph, added with different
starting points we have a net.
The user may change actor at meeting point or
try different decision (red or blue pill).
These decision and meeting points are kind of
menu in DVD-talk.
Look into 24 to get a impression about screenlayout.
Real interactivity starts beyond 200 menus.
Motion menus are essential(preview),
and latest here avisynth becomes the winner.
...
I prefer using mail/pm if no one else is interested
to get active in this discussion.
Richard Berg
14th January 2004, 00:49
I hate to be critical of something that's not even designed yet, but as I see it chopping a movie into scenes is much different from editing. You can do conditional viewing with a bit of ASX scripting.
stax76
14th January 2004, 00:51
I wonder why you created your own filter definitions, you could have used the xml descriptions used by AVSEdit, AviSynthEditor and DVX. Wilbert, Seewen and me spended endless hours to create them, you probably know now how hard it is to create such definitions. The XML code in AVSEdit/DVX is flexible, if necessary improving the format is not a problem
vion11
14th January 2004, 14:21
@Dolemite
I started wondering as well after looking into core.xml.
Quite good work, THX. It would be easier to save defValues
into XML, if the filternames were unique (Convolution3D).
I suggest additional attribute named implementation or modell or ...
sh0dan
16th January 2004, 14:54
In general I'd love to have this finished in it's current design. Being able to drag+drop filters and connections just seem like a dream!
A "split" filter could be implemented, that splits up the video in two or more parts, for easier processing.
vion11
16th January 2004, 15:26
progress information:
- function definitions now as XML
- simple preview
After weekend there will be a version, which works
with all core functions except with more then 3 (clip) inputs.
All installed plugins will work.
There is a chance I'll get the template thing working.
advanced interfacing with avisynth will follow later.
@sh0dan
That split filter confuses me, what will it do?
FredThompson
16th January 2004, 18:10
Will this be standalone only or will it be a callable module which can be integrated into other apps?
vion11
16th January 2004, 18:31
Good question, what you suggest as an integrated solution path?
ActiveX, Open Source, SetWindowParent,
OLE, DLL, HW+Dongle, Java, vbScript, ...?
FredThompson
16th January 2004, 19:18
Don't know. I just realized what you're putting together could be used in existing apps with AviSynth support (Gordian Knot, DVD2SVCD,...) and new stuff.
It would be sort of like the equation editor in M$ Office, right? It would be called with a script as the calling and returned arguments, right? Call your routine, optionally passing it a script and it returns one. Possibly some form of save-state is needed.
DLL might be a challenge if someone other than you requires an enhancement and you can't be reached.
Licenses are something I don't really know a lot about. My limited understanding is some require anything that touches them to be completely open source. That's probably something to avoid.
What say you, sh0dan and Richard?
Richard Berg
17th January 2004, 00:22
As I understand the license, this editor doesn't have to be GPL, merely compatible (for example, BSD, which has no restrictions other than giving credit).
stax76
17th January 2004, 00:27
I suggest additional attribute named implementation or modell or ...
no problem, I can add things but I think it's better not to include things specific to a certain application. What is that attribute used for? If you need something very specific you could use the AVSEdit descriptions and bypass your additional values
vion11
17th January 2004, 01:04
@FredThompson
Once there will a point AVEditor is finished for me,
but may get extended to meet other needs.
I will not stuck in developing AVEditor and lose sight
of my target mentioned above.
On the other hand balance of interests is possible
in terms of money, time, work and know-how.
Only lack of proposals prevents solutions.
@Dolemite
There are 3 functions named Convolution3D with different parameter
sets. How does AVSEdit solves this conflict?
stax76
17th January 2004, 01:27
There are 3 functions named Convolution3D with different parameter
sets. How does AVSEdit solves this conflict?
not very well so far, at least we have noticed we have a problem :D , currently discussing it in the current AVSEdit topic
http://forum.doom9.org/showthread.php?s=&threadid=68942
vion11
17th January 2004, 11:56
These *.xml files are extremely useful to present information
to the user. But their value depends on their completeness.
Eminently the parameter descriptions should have no null entries.
Particularly first time user of avisynth will assimilate
information when displayed.
For AVEditor and now I've put all in one XML (http://innerphase.de/aveFunctions.xml) and added attributes
like picture(for drag) and combined all noise, sharpen, deblock, ..
filter in a "restoration" categorie.
Isn't it a good idea to give plugin, core and gui
developers a web based interface to maintain them/it.
It may render out xmls for different apps.
stax76
17th January 2004, 15:52
the problem with a web based inteface is somebody need to program and organize it.
I'm not a web deveoloper, I don't know if it is hard, programming the AVSEdit/DVX
description editor was occasionally tricky even with .NET. We would have then also
to decide for one interface because two interfaces would be more work to maintain
and would be more error prone. Another possibility could be using the AVSEdit
description editor as client to commit the descriptions to a central place by
authorized people. As for the image, can't you use the categories property for this?
vion11
17th January 2004, 16:27
yes and no.
Using category makes it easy, but some filter can be
illustrated so nice, I wont miss it, at least Colorbars.
Getting about 20+ xml files from developpers, will force
the authorized people to find an apropiate example for
webbased XML, more or less early. :D
vion11
18th January 2004, 23:00
While trying to add the template feature I want to be sure
setup(2,7MB) works. xml parser is added and I can't get any depedancy information. (download only on problems)
Scripting is also used, if vbscript is
systemwide disabled, errors will raise.
Don't expect to much - most work was unvisible foundation changes
and will connected to gui soon.
Base for function definitions is now taken from xml files
writen by dolemite, wilbertd and others?
THANKS a lot. To collect and maintain 200+ functions and
parameters plus descriptions is hardcore.
I've added some attributes and corrected some things
and opened door for differents gui languages.
Both information is in kept in xml files.
Latest versions you find here (http://innerphase.de/AVEditor/xmlEdit/) .
Check links at the bottom.
If you want to share your corrections you may
use the editor, please parse xml first. (e.g.xmlfox)
Plugins are handled in two ways adjusted in the ini file.
if you have a proper avsi file your PluginMode is avsi.
Otherwise AVEditor checks registry and enters loadplugin("") as needed.
You can make graphs using plugins not installed ,
I'll wonder if they work.
There is still a problem with some optional parameters
can't named and definition for overlay is not ready yet.
If someone figured out, share it, please.
EDIT:links removed - look at first post
stax76
19th January 2004, 00:08
wouldn't it be better to bypass the information that is very specific to your application instead of modifying the general descriptions? Your modified descriptions will be outdated very soon and then you have to modify them again and again and....
FredThompson
19th January 2004, 00:20
Yeah, that's a good point. If there are general configs and application-specific configs stored as separately, less re-writing and problems. Come to think of it, you'll have a better chance people will want to create the general data if the format is stable and other people start to use it.
vion11
19th January 2004, 00:37
To get AVEditor running I had to modify uncorrect entries.
(e.g. I have no version of Blur, which accepts 3 parameter).
I agree my solution is proprietary and I see the problems.
For me the only instance knows about parameter is avisynth itself.
If there is always an actual and reliable definition available,
and xml is the choice, I'll include that and put the picture
attribute elsewhere.
Till then I see 2 solutions:
- avisynth gets capable of rendering out its definitions
- (time needed for coding)
- users keep them accurate
- (web based interface needed)
This Catapult (https://sourceforge.net/projects/zypexce)thing is only a start, its an sourceforge project
and the developers may have better solutions ready.
From what I see in the php a webbased interface can't be
like building a cathedral. If anyone is interested in browsing
through the xml-hierarchie, I'll give the basic code as template.
vion11
19th January 2004, 11:17
@sh0dan
I'm prepared for split filter now. Look here. (http://innerphase.de/splitfilter.jpg)
Some PShop filter work as well.
FredThompson
19th January 2004, 11:28
Are you working on macro capability as well? Things like this look very interesting: http://forum.doom9.org/showthread.php?s=&threadid=68494
vion11
19th January 2004, 11:38
Yes, I like the filter mf has writen a lot and
I use all available brainpower to get them running as template.
vion11
31st January 2004, 20:48
To continue the row of updates around AviSynth, here
is an interims release (0.3.0) of AVE Visual Editor.
To keep bandwidth low setup (innerphase.de/Setup-AVEditor030.exe) does not contain
the VB Runtimes 6.0 any more.
You may google (http://www.google.de/search?num=100&hl=de&ie=UTF-8&oe=UTF-8&as_qdr=all&q=%22Visual+Basic+6++Runtimes%22&meta=) them for your installed language.
Same with ms xml (http://msdn.microsoft.com/downloads/list/xmlgeneral.asp?frame=true) parser.
AVEditor works best with latest 2.5.4 release of avisynth.
If you need the "show-only-filters-from-installed-plugins"
feature, write "useapi=-1" at the end of ini-file.
Be careful, older version of Avisynth don't like remote
control from VB, strange things may happen.
Workplace accepts now dropped *.aveuf files.
aveuf is an abbreviation for ave userfunction.
An aveuf contains *one* function, with at least one up to three
clip parameter(s). So they should start with "function" and
end with "}"
Example:
# uses Blur(1) to achieve more blurring
Function BlurMore (clip c , int nTimes )
{return ( nTimes == 0 ? c : BlurMore (Blur(c, 1), nTimes - 1))}
Everything writen above "function" becomes the description of function.
The function import is not as clever as HAL. Avoid doublequotes
in parameters and don't start your description with "#function..."
You'll find this as file "BlurMore.aveuf" and "mfToon-v0.52.aveuf"
in folder \testdrop as an exemplification for your own functions .
I've used the mf function for testing, it is hardcore scripting.
Many thanks for inspiration.
AVE analyses dropped files and creates a new file in the
\xml folder, with the function as a loadable filter, available
from startup as userfunction.
If you drop "mfToon-v0.52.aveuf" again, you'll loose working
default parameter values, but may change the picture.
There are other new features more or less hidden. You'll find them.
A hint for new users, install and start, if there are no errors press
spacebar after closing splash screen and look what happens.
There are still problems with some core and plugin functions.
Parameters sometimes optional and sometimes not is a mess.
Kaiousama
16th February 2004, 20:07
Vion11: keep up with the good work you're doing, this editor is really revolutionary!
only a question for the moment: are you planning to release AVEeditor sources?
vion11
16th February 2004, 21:26
I haven't spend time thinking about future of AVEditor.
In fact I don't know if it's worth while. At the moment
I see no solution to get it bug free, caused by the
unconsistent function interface to AviSynth.
As long there are no rules for developers about designing
functions/filters, it is a daily and manually work to keep
the function description and its parameters layout clean for
at least the current version. Otherwise is it not recommended
to update with every new release for professional reasons.
To use the power of avisynth as a foundation for future
video editing systems with easier use, the function
interface should be maintainance free and generic, so
it could managed by code and not by xml-editors.
In short words, I can't feel the spirit of publishing
sources which don't work, but I'm open to any suggestion.
If somebody is interested in a specific part, I may post it here.
sh0dan
17th February 2004, 16:54
I'm sorry to hear that! I had really hoped this project could go somewhere. It is the GUI with the best potential I have seem all my time here.
Making something as groundbreaking as this is bound to give a lot of headaches. I would really like to see a "simple-but-fully-working" implementation - perhaps only with a handful of filters. If your GUI gets accepted and used, it will open the door for many casual users.
vion11
17th February 2004, 19:01
:scared: Argh - I accidently hit edit instead of quote!! :(
I'm sorry - I accidently removed half your message :(
[...] [killed by sh0dan]
For explanation, the quick rec709
thing with ConvertToRGB, has turned 30+ graphs
from running to useless. What can be done to avoid this
sort of changes?
What about ConvertColorSpace(inType, outType, specs)?
[...] [killed by sh0dan]
However, at the moment I'm trying to get avs_invoke running.
Further I'd like to see some screenshots from running graphs,
with more than 10 filter, to get an idea how to implement
a pretty printer or auto-organize filters function.
vion11
17th February 2004, 19:23
This was the first implementation for creating proper
parameter strings, its the most vulnerable function.
It should work on all functions, but it doesn't.....
Public Property Get ParamStr() As String
If IsOptional And Value = "" Then
ParamStr = ""
ElseIf Not IsOptional And Value <> "" Then
If ParamType = "string" Then
ParamStr = """" & Value & """"
Else
ParamStr = Value
End If
ElseIf IsOptional And Value <> "" Then
If ParamType = "string" Then
ParamStr = ParamName & "=" & """" & Value & """"
Else
ParamStr = ParamName & "=" & Value
End If
ElseIf Not IsOptional And Value = "" Then
ParamStr = "Error"
End If
End Property
Kaiousama
17th February 2004, 20:02
Originally posted by vion11
The latest version (0.3.0) counts 56 downloads
and absolutely no feedback except from Kaiousama.
Don't know the reasons, may be to complicated,
setup doesn't works, where are the features,
filter doesn't work, how can I save, whatever.
You can load, change and save graphs, what is missing?
Maybe i can provide you a possible answer (telling my experience)....
I've tested for the first time AVE at my university workstation, all is gone right (the pc was reformatted the day before, so i've worked on a clean windowsXP installation) and i was really amazed by your application.
Now i'm at my home pc and i can't find a way to start AVE properly, the application hangs on inital splash screen, it says all filters were correctly loaded but the splash screen remains still. if i click with mouse nothing happens, if i press "enter" key the application exits.
I tried AVE at my friend's home pc and the result is exactly the same, the program hangs on inital splash screen....
I don't know where is the problem, can you suggest me what can i check, or try to reinstall, in order to start AVE properly?
Maybe other people didn't gave you their reports because they failed to start AVE.
I agree with Shodan that AVE has a great potential, and it can place the basis for implementing graphical properties pages into avisynth filters, in this way each filter will be configurable, without the needing of an updated XML file that lists each filter's parameters.
I asked if you planned to release AVE sources because i'm also coding an application in VisualBasic (a subtitling application), and maybe i can give you a hand with this language ;)
morsa
17th February 2004, 20:27
It takes time for people to begin using a new interface.
Most of advanced avisynth users are really confortable with the simple text-no-GUI interface.
vion11
17th February 2004, 21:02
This is the complete init sequence, whats your last line?
Starting AVE Version 0.3.0
Checking system...
79 % Memory free.
Windows 2000 detected
Searching INI File...
C:\Development\AVEditor\AVEditor.ini
INI-Version: 0.3
Running in DEBUG Mode!
Initialising objects..
Checking AviSynth...
avisynth.dll: 2.5.5.0
Checking AviSynth Api ...
Response OK
Checking PluginMode...
using registry
13 plugins found
Checking functions...
Using ave - Functions.xml
212 functions(s) found.
Importing descriptions...
Loading English
37 description(s) found
Searching AviSynth documentation...
Using C:\Tools\AviSynth 2.5\docs\
Preparing workplace...
4 forms successful loaded.
Importing userfunctions...
3 userfunction(s) found.
Importing graphs...
2 graph(s) found.
Preparing graphmanager...
Preparing object chooser
... OK
Opening forms
Initialisation finished
0 error(s)
Doubleclick to continue...
vion11
17th February 2004, 21:07
Originally posted by Kaiousama
.... and it can place the basis for implementing graphical properties pages into avisynth filters, in this way each filter will be configurable, without the needing of an updated XML file that lists each filter's parameters. I see no need for coding grapical property pages, as long the
parameters are well defined they can be created on the fly with
sliders, droppers, choosers, radio buttons, edit boxes, drop down
combos.....
Kaiousama
17th February 2004, 23:04
When i start AVE i can see the following sentences appear on hanged splash screen:
Editor\AVEditor.ini
INI-Version: 0.3
Initialising objects..
Checking Avisynth...
avisynth.dll: 2.5.5.0
Api disabled.
Checking PluginMode...
using registry
26 plugins found
Checking functions...
Using ave - Functions.xml
And the "212 functions(s) found." you written 2 posts before does not appear as well as all the rest.
Because the last checked thing is xml file i reinstalled m$ xml parser (i have version 4.0 sp2 with SDK on my system) but nothing changed.
Kaiousama
17th February 2004, 23:23
I've found the problem!
It was due to my version of M$ XML parser, i had 4.0 sp2, i uninstalled it and installed version 3.0 sp4 and all is solved, AVE now starts properly and i can use your GUI to create avisynth scripts, YATTA!
Maybe it would be useful if AVE during initializations checks even if the proper version of XML parser is installed on user's system ;)
vion11
18th February 2004, 00:53
I'll upgrade AVEditor to Version 4 and link to the merge package
for download. THX for lighten up the MS DLL hell.
Kaiousama
18th February 2004, 09:59
After my first usage of AVE with on my home pc i have some suggestion for you:
1) I feel the lacking of a classical menu with "open scrpt" and "save script" commands.
2) Can you add a preview window where users can watch the effect of each added filter?
3) Bug report: I have resized the "Functions list" window with the "[s]" button, but i've resized it too much so the "[s]" button is not visible anymore and i can't resize anymore the window nor bringing it to normal size ^_^ can you limit minimal resize to window's title size?
4) When i add a new filter to the graph, how can i remove it? (i tried to select the filter and press "Cancel" key but nothing happens)
5) Can you provide auto-arrangment for on-screen filters (like windows' auto arrangment for icons)?
6) Can you add combobox for selecting enumerated plugin properties? (see the example for detailed explaination)
Assume we want to add "Deen" filter; i drag deen out from filters box and select it.
Now i have to choose the "String name" property, valid values are only "a2d", "a3d", "c3d". I know it because i read the documentation but a newcomer doesn't know it. Having a combobox with this options enumerated would be a great solution.
7) Remaining on "Deen" example, i make the same consideration for the "clip" field, having a combobox with a list of avaible clip's names used in actual script would be a good thing.
8) Remaining on "Deen" example, another interesting feature would be to have a ToolTipText for each parameter's textbox indicating valid ranges for the parameter's value.
9) Many filters have the same icon, so graphically is a little disorienting if you are using more than one filter of each type; can you add also the name on the graphical representation of each filter?
I hope this feedback may help you.
p.s. I have a newbie-coder question: if i have an unknow filter's dll file on my hard disk, can i retrieve the function name and the parameter's number&type in order to call this function? (note i haven'r an header file, only the raw dll)
sh0dan
18th February 2004, 12:11
For explanation, the quick rec709
thing with ConvertToRGB, has turned 30+ graphs
from running to useless. What can be done to avoid this
sort of changes?
What about ConvertColorSpace(inType, outType, specs)?
The "matrix" option has been present since 1.0, but maybe not properly documented. I've tried very hard not to break compatibelity, by only adding new options, without removing or redefining anything. This is crucial for plugins depending on Invoke.
Having to define input CS doesn't make any sense IMO. When you use ConvertToXXXX you KNOW which CS is returned. Having a single Convert with different enabled/disabled options not only makes the code complex, but also makes scripting harder.
However, at the moment I'm trying to get avs_invoke running.
Further I'd like to see some screenshots from running graphs,
with more than 10 filter, to get an idea how to implement
a pretty printer or auto-organize filters function.
The main problem for me is that I don't know anything about VB, or the c-style interface. If it was written in VC++ it could have been much easier for me to help, and for you to interface with AviSynth, plus you don't have to worry (that much) about dll-dependencies and installation issues.
stax76
18th February 2004, 12:16
"I'll upgrade AVEditor to Version 4 and link to the merge package
for download. THX for lighten up the MS DLL hell."
here are some interesting articles that contain insight about the versioning dilemma. Since you are using VB6, COM+ and Win32 which are all more or less legacy technologies the articles should be particularly interesting for you
http://msdn.microsoft.com/vcsharp/homepageheadlines/hejlsberg/default.aspx
vion11
18th February 2004, 13:25
I see, the GUI is not self explaining enough. I think is it
useful to forget everything about MS designed user-interfaces.
After that play Black&White for 2 days and start again with AVEditor.
There are enough keyboard editors for Avisynth, this one becomes
mouse only. So you have one hand free for coffee, cigarettes, ...
1) Sorry, no menus, once a script is saved, its available from
the graph-tree. Drag 'n' drop is much easier than
open->searching->choosing->yes, i will open->moving around
2) A preview of every filter is planned...
3) Yes, this is still crazy, thinking about...
For now you can change in the ini-file to:
frmObjectsXYWH =118 154 204 331 -1 -1
Btw try doubleclick on the captionbar.
4)There is a recycling system in the upper left corner, move
the filter onto and drop it. Save system works same. Dropping
the output onto disk saves as autoload.
5)I will, but still searching best solution, how do YOU
arrange a graph with more then 2 inputs and about 10 other filters??
Gimme screenshots.
6)You may enter values with mouse, hold mouse button and move around.
Try float values: moving mouse vertical changes values before the dot
and horizontal behind.
7) Haven't worked with Deen, gimme some time..
8) Yes, dealing with min and max values is missing,
but prepared.
9)64 pixel are not enough space for "Convolution3d". May be
the tooltips will help in future. Anybody interested in creating icons?
(there are keyboard cheats available (Space, m, x, f, r, s)
vion11
18th February 2004, 13:55
@sh0dan
First I have to give the C API the correct datatypes.
That means knowledge about integers, long, array, types.
This is a lot of try and error.
Second task are correct values. Understanding the purpose of
avs_value in avisynth_c. How to put 'c' into a short, ....?
When I reach level 2, I'll have concrete questions and we can
communicate in terms of avisynth.
Following weekend is carneval here and there is time a lot
to work on AVE, all profesional things are interupted or out of
order by legal drugs ;-)
vion11
18th February 2004, 16:28
@doom9 team members
Is there a chance to get some webspace for pics and
typo for a guide on AVEditor?
stax76
18th February 2004, 16:52
also you could the AviSynth wiki
Bandung
22nd March 2004, 20:54
Vion11, Dolemite,
Is version 0.4 available for download? If so, where does one find it? I love where this project is heading and would like to continue to follow it.
vion11
22nd March 2004, 23:40
Actually I'm dealing with the current Avisynth version,
which extends namespace in terms of plugins.
Updates will be announced here and at .org when
I finished primary lesson on wiki.
@Bandung
tell me and others please, what especially and in general
you like to see.
It is feedback motivates coder!
Richard Berg
22nd March 2004, 23:50
Actually I'd prefer not to start putting documentation for various GUIs on the main wiki. I can give you your own webspace, though; PM me if you like. (As a bonus, this will actually work ;) -- the wiki isn't editable right now)
Bandung
23rd March 2004, 17:47
I agree with Richard Berg. I am an ardent supporter of Wiki's but I'm not sure that putting documentation on it for this project is the best way to go. Let me encourage you to take his offer of the web space. If you need a backup or mirror site, I am also willing to donate to the cause as well.
vion11
While my initial interest was strictly in a visual editor for AviSync, I am more than intrigued with the prospects of taking several video streams and combining them into an interactive story board using this technology. (For sure, it would be after all of the pre and post video processsing was done). The real challenge would be to combine these cuts on the fly.
I know some theatre students at university who would love to play around with something as interactive as this. It would be a wonderful way to teach screenplay writing.
((( atom )))
24th March 2004, 19:33
@vion11
just downloaded your app - will test right away.
one thing: i guess it would make sense, to either always use the same link for downloading or keep the initial post updated. i had to look through the thread for quite a while to find the proper link.
regards,
vion11
23rd April 2004, 18:00
As advised download links are now at top of thread.
Current version now: 0.3.3
There is a new guide and download (http://www.avisynth.org/vion11/aveguide.html) available.
Changes:
- frame preview per filter
- auto organize filters
- experimental AVI Export (video only)
- better INI handling
- updated to msxml 4
ps: some time ago I've read here a posting
how vdm checks errors from avisynth with
queryinterface. Now I've found corresponding
visual basic sources, but can't find
the post anymore. If somebody can provide the
link, it would help me to make AVE some robuster.
vion11
23rd April 2004, 18:05
EDITED to nothing
Guest
26th October 2004, 10:41
What has happend to this great project? Been hanging around here a month before I came across this ass-kicker way of using avisynth. I hope that it is not dead?
Tin2tin
vion11
26th October 2004, 15:09
Originally posted by Guest
I hope that it is not dead? Thanks for nice feedback!
AVEditor is not dead, but kind of frozen.
There are some minor changes not really worth
to release now. This includes folder for
user objects, import for (new) functions
and delete for userfunctions and graphs as well.
Also there is a maintainance window for all
xml stuff at 80 percent. It will make plugin
defiitions interchangable with other editors.
On top I think about including some advanced
scripts from users here at doom9 converted
to userfunctions to give beginners a starting
point. But that now just an idea, not sure about.
I anticipate version 3.0 to establish most convienient
editing thinkable T_2 has it described here (http://forum.doom9.org/showthread.php?s=&postid=499642&highlight=webpage#post499642)
In short it provides three levels of representations of avisynth scripts:
- as script - to edit with notepad, etc.
- as graph - to edit with AVEditor ;-)
- as video - to watch with mediaplayer
To reach this point Avisynth itself should be capable to
tell any graph editor about its internal graph in terms of filters,
functions, parameters and child filters.
If I could see TicTacToe (http://forum.doom9.org/showthread.php?s=&threadid=59197&highlight=tictactoe)as graph in AVEditor,
I'll release version 1.0 as soon as possible.
CirTap
31st March 2005, 18:32
Hi vion11,
any news about this nice and promising project?
I was playing a little with AVE and the more "artistic" approach of using AviSynth is what interests me.
However, the GUI (as you know<g>) is very "interesting" - so to say - and setting filter and function parameters isn't very comfy. From looking at the XML file, it should be possible to create more suitable widgets such as sliders, checkboxes, select list etc.
On top I think about including some advanced
scripts from users here at doom9 converted
to userfunctions to give beginners a starting
point. But that now just an idea, not sure about.
IMHO having "User functions" or "libraries" would be a very good and powerful feature to have.
This could fairly well put AVE into the post processing stage of the footage, if more "classic" stuff like cut, mix, transition would be available in the interface.
Just an idea: each "library script" comes with an XML file similar to those you have to describe the params and GUI to use and control them. That would turn these scripts into "components" (to not overstress the term "plugin") like i.e. in Dreamweaver, and would make the editor highly customizable.
IMHO, all the basic technologies of a typical "video composer" are built into AviSynth, with some "smart" app ontop of it it should be possible to perform even advanced NLE tasks like in Premiere ... maybe.
So, in case you haven't fully abandoned this project, I'd lke to know if you need any assistance -- except .NET programming ;-) I only know VB and various scripting languages, and I'm pretty well in GUI design.
Have fun,
CirTap
vion11
1st April 2005, 01:23
Great - it seams there are users
still interested in GUIs for Avisynth.
There are bad and good news:
Bad first:
I will not continue work on AVEditor, sources
are published and everybody may use them to
extend it.
Good news:
Developpers(ShawnFumo) are working on NLE-editors based on AviSynth and
AVEditor becomes an extension of AIME - Interactive Movie Editor.
What does that mean ..?
AIME will use AVE as an COM Object to define scripts.
I think interactive movies have a great potential and why not
use AviSynth as an engine to adjust/edit given clips.
AIME will do next step in editing videos, an approach
based on timelines and graphs, using transparent layers
to show not to hide essential information, integrating
video editing and DVD authoring in same interface for
users convenience.
Currently data layer is finished (using new symbol technologie)
and I'm at 85% of GUI-Layer. When finished GUI and minimum
of application logic downloads will be available.
So please wait for AIME or help to speed up development ;-)
PMs are a good idea to contact me on AIME, questions about
AVE sources are answered in existing thread.
CirTap
1st April 2005, 01:46
Wow!
This sounds very promising! I'm glad to hear you didn't fully aboandon the idea.
Great - it seams there are users
still interested in GUIs for Avisynth.
you bet! it's not all techies here ;-)
I'm also tracking ShawnFumo thread, hope there's something comming up soon :D
Put me on your list for beta testing 8-)
Have fun,
CirTap
hanfrunz
23rd March 2006, 16:01
AVEditor becomes an extension of AIME - Interactive Movie Editor.
where do i find AIME? Google only finds this thread...
vion11
23rd March 2006, 22:49
AIME is waiting for AviSynth 3.0 and the new GUI integration.
It is not ready, but code is that old now it does not matter
who continues the project. Anybody interested ?
AIME already has a triple buffered GUI renderer,
understands translucent display layer with GDI Plus
and has a full featured Drag 'n' Drop Interface.
Actions drive the interface, so it has unlimited undo!
Its coded in VB6, ahem, but there an upgrade path to VB.NET.
Do not expect something slow, it was developped with a
900MHZ machine and you know time is money.
En plus, there is a nice XML Reader, capable of creating object
hierarchies and instances while running included with sources.
You reading right it converts XML to working objects accessible
during runtime.
Real Screenshot (http://exploreourpla.net/screens/aime-screenshot05.jpg)
It was designed to author DVDs with DVDAuthor so
there is a working DVD Object which creates proper
commandline command to build titlesets, chapters, subtitle
and commands.
Currently I'm involved in an Internet project (http://exploreourpla.net/?geoLink=999) and there is no time
for me in the next months to continue.
I think AIME has enough potential to quake the
professional scene, so if anybody wants and is capable
to continue, tell me what you like to do.
You should have an good overall experience in windows
GUI programming, nothing for beginners!
In any case it hopefully boosts the Avisynth 3.0 Development.
--
vion11
hanfrunz
24th March 2006, 11:50
I worked with apple's shake a few days ago and i like it's GUI a lot. :)
Nick Less
26th March 2006, 19:30
erm, how do i save a script with this program? everthing works, except there is no icon for saving? there's no recycling box either :scared:
vion11
27th March 2006, 10:30
Well, it is hidden, drag the filter to left side of the workplace and you'll see.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.