PDA

View Full Version : AvsP v2.0.2 (10/27/07)


qwerpoi
29th August 2007, 20:37
(for the old thread, click here (http://forum.doom9.org/showthread.php?p=871134))

AvsP (http://avisynth.org/qwerpoi/) is a tabbed script editor for Avisynth. It has many features common to programming editors, such as syntax highlighting, autocompletion, calltips. It also has an integrated video preview, which when coupled with tabs for each script make video comparisons a snap. What really makes AvsP unique is the ability to create graphical sliders and other elements for any filter's arguments, essentially giving Avisynth a gui without losing any of its powerful features. For example, check out this screenshot:

http://img103.imageshack.us/img103/6533/avspv2qy2.th.png (http://img103.imageshack.us/my.php?image=avspv2qy2.png)

Without adding anything special to the script, AvsP automatically parses the script and creates graphical elements for each specified argument. You can drag any slider around to see the effects of each of Tweak's arguments, hit the button by the filename to choose a new file for AVISource, etc. Through these combinations of features, AvsP provides the means to perfect the output of any script.

AvsP also has a ton of other features going for it, like a crop editor, trim editor, and more recently, tools such as a resize calculator and an encoding gui. There's way too much stuff to go into detail here, you can get more info at the website (http://avisynth.org/qwerpoi/) or the old thread (http://forum.doom9.org/showthread.php?p=871134). I would recommend downloading it and playing around with it yourself to get a feel for what it can really offer, no frameworks necessary, no writing to the registry, just download the zip file (~5 mb), unzip to a folder and you're set.

AvsP Download page (http://www.avisynth.org/qwerpoi/Download.html)

bugfix for v2.0.2 (http://avisynth.org/qwerpoi/AvsP_v2.0.2_bugfix3.zip) (more info here (http://forum.doom9.org/showthread.php?p=1059559#post1059559))


mirror for 2.0.2 (http://www.savefile.com/files/1153115) (savefile.com)
mirror for 2.0.1 (http://www.savefile.com/files/1061266) (savefile.com)
mirror for 2.0.0 (http://www.savefile.com/files/1013767) (savefile.com)

Japanese translation (http://niiyan.s8.xrea.com/blosxom/avisynth/tool/20060920-avsp-ja.htm) (translated by niiyan)
Russian translation (http://avisynth.org.ru/avsp) (translated by Fizick)
German translation (http://technik.movie2digital.de/thread.php?postid=438200#post438200) (translated by Henrikx)
French translation (http://homepages.nildram.co.uk/~cestial/AvsP/) (translated by Alain2)
Spanish translation (http://forum.doom9.org/showthread.php?p=1046290#post1046290) (translated by zemog)
Portuguese translation (http://forum.doom9.org/showthread.php?p=1047583#post1047583) (translated by Veiga)
Italian translation (http://people.ee.ethz.ch/~rporetti/AvsP_Trad/AvsP_translationITA.zip) (translated by khs81)

qwerpoi
29th August 2007, 20:41
Here's what's new in version 2.0.0 (compared to v1.4.0):

* fully automatic user sliders (enabled by default in this release)

* added default presets for each filter (suggested by Zarxrax)

* new "Tools" directory designed for AvsP plugins (suggested by Rahima, Fizick)

* new resize calculator tool (suggested by chipzoller)

* new encoder tool supporting any command line encoders (through presets)

* script tabs now keep track of their own frames

* added new side button to toggle sliders

* added reminder images in the script tabs when video has focus

* added several new configurable text colors

* improved filter documentation filename searching

* added configurable web search for filter docs whenever local docs not found

* changed external player to use original script whenever possible

* changed program to open socket for single instance check only when necessary

* improved rules for displaying calltips

* improved macros menu organization with submenus defined by subdirectories

* improved SetBookmark() macro performance with large lists (suggested by AlanHK)

+ fixed calltip bug with parentheses inside string (thanks niiyan)

+ fixed calltip bug with filters with zero arguments (thanks niiyan)

+ fixed calltip bug with "Frequent calltips" turned off (thanks Alain2)

+ fixed asterisk on title bar in separate video window (thanks krisq)

+ fixed color customization to allow non-white default background (thanks RedDwarf1)

+ fixed open with unicode filename bug (thanks Zarxrax)

The first thing to note is that the website is really out of date, thanks to all these new changes. I'm currently working on updating it, but in the meantime you'll have to pay attention here to understand some of the newer features (although most should be self-explanatory).

The second thing to note is that the options files (*.dat) from older versions of AvsP are not compatible, so don't copy them over to the new version. That means you'll have to reconfigure any program customizations you've made, I apologize for the inconvenience, but it was sort of necessary for me to move forward.

The most noticeable new feature is the automatic user sliders, which were actually introduced in the previous version, but were disabled by default. This feature isn't perfect yet, but it's already functional and pretty close to 100%. As mentioned in the first post, you don't need to do any extra work to get the sliders, they'll get built automatically when you refresh the video. By default all user sliders are folded, simply click on the filter label to unfold the arguments for that filter. You can control a lot of aspects about how user sliders are built and displayed from the "Options -> Program settings..." dialog, under the "User sliders" tab.

The automatic user slider creation depends heavily on AvsP's filter database, which has changed a lot in this version. The filter database is entirely stored in the file filterdb.dat, which is actually just a text file, you can take a look at it if you wish. If you find any errors in the database or want to add new functions, the recommended method is to use the "Options -> AviSynth function definition..." dialog. This dialog has been reworked entirely and hopefully is more straightforward for an average user to edit. Although you could edit the filterdb.dat file directly, I wouldn't recommend it since it will be difficult to accept any updates I make to the database. If you would like to submit edits or additions to the database, you can use the "Export customizations" button in the Avisynth function definition dialog, which will save all your customizations to a text file you can send to me.

Presets work a little differently in v2.0.0. Presets are now activated every time you use Enter to finish an autocompletion (you can change this to Tab or turn it off entirely if you wish). By default, AvsP automatically generates presets for each filter using the information in the database. This preset will automatically enter every one of the filter's arguments, filling in defaults for optional arguments and placing a "?" for every argument without a known default. You can customize individual presets in the "Options -> AviSynth function definition..." dialog.

Documentation paths are no longer customizable per filter. Instead, every time you click on a calltip and the filter's documentation is not found, AvsP will perform a google search using the filter name. You can customize the search to use any url in the "Options -> Program settings..." dialog under the first tab. Note that as always there you can specify which folders on your hard drive to search through for local docs. The search for local documentation files has also been improved. For example, before if you clicked on EEDI2's calltip, AvsP would specifically search for EEDI2.txt, EEDI2.html, or EEDI2.htm. Now the search is less strict and will find files named "EEDI2 - readme.txt", etc.

Another major change is the tools folder. Now AvsP can be extended through tools, which are simply python scripts which are imported by AvsP. In general, tools have a graphical interface, either by using wxPython directly in the script or by using python to communicate with a compiled executable written in a different language. Tools are actually a lot like macros, and can do anything macros can do, but there are some key differences. Tools allow for translation of any messages in the graphical interface. Tools allow for importing of other supporting scripts (for example, the encoding_gui.py tool uses MP3Info.py to determine if an mp3 is cbr or vbr). Tools also have an additional method, avsp.GetWindow(), which returns the running AvsP frame (which is in general necessary to give to a wxPython dialog as a parent). In order to make a new tool, simply make a new python script in the Tools directory, and make sure you have a function named avsp_run() which takes no arguments. The tool will automatically show up in the Tools menu the next time you run AvsP, and the avsp_run() function will be run when you click on the menu item. You can check out the included tools if you need examples. The ToolsMenu.py can optionally be used to define the order of the tools, as well as the menu label and status bar message.

This version comes with three tools, a resize calculator, an encoder gui, and the avs2avi gui, which was converted to a tool. The resize calculator was roughly based on ResCalc.exe, a program suggested to me by chipzoller. The calculator is a bit basic right now, and seeing how I'm not an aspect ratio expert, there may be errors in my calculations, so please let me know if you come across any problems. The encoder gui is a generic interface to any arbitrary command line program or programs. Essentially it's a gui which generates and runs batch script based on the current script and a selected preset. The dialog also has a pretty decent bitrate calculator. Again I can't 100% vouch for my calculations, especially the container overhead computations, which are currently has some estimations (although I should point out I have used the tool successfully several times for my own encodes). What's really nice is that since everything's connected to AvsP, the dialog fills out a lot of info automatically, input/output filenames, framecount, framerate, even audio and subtitle filenames (assumming they have similar names to the input avs script). You'll have to try it out to get a better idea of how it works. Right now the program only comes with a few presets stored in the files x264.presets and xvid.presets, which are just text files with a pretty straightforward format. They're only there for example, in order for the tool to be really useful, I'll need help from anyone who have some command line presets they'd like to see added. You don't need to put them in AvsP's format if you can't figure it out, you can send me the raw command lines if you wish. Anyway, this tool isn't really meant to make AvsP compete with MeGUI or other encoder specific guis, it's really just meant to be a quick way to encode videos that will hopefully be future proof, since it's almost entirely driven by presets.

One new feature for macro lovers is the ability to organize the Macros menu with submenus. Simply make folders in AvsP's macros folder, place any macros in the folders, and they will appear in submenus in the Macros menu. You can even make folders in the folders for recursive submenus (although I haven't tested how deep it can go). You can also now use an empty text file named "---.py" to add a separator to the menu.

For translators, you can update the translation the same way as the last version, just put the older translation.py in the AvsP folder and run AvsP. There are a whopping 129 new messages to translate (!), although only 56 are from the main program. The rest are from the new tools, which you don't really need to translate if you don't plan on using them. All messages for the tools appear at the bottom of the translation.py file.

So. Lot of new stuff, lots of new stuff. In some sense you can consider this a beta release, since there are several areas which may be considered incomplete. As my available time for AvsP development decreases, I would certainly appreciate any contributions, especially since some features like command line encoders and overhead calculations are not my area of expertise. Anyhow, give it a whirl, and let me know if you have any new feature requests or problems.

Terranigma
29th August 2007, 20:53
Wow, that's quite the changelog. I'll give this a go right now, Thanks :D

DarkT
29th August 2007, 21:12
" script tabs now keep track of their own frames"

THANK GOD, the whole "change frame here, it changes everywhere" was getting SOOOOOOO on my nerves... But it was still very comfortable for comparisons of different raws, so I was adding black frames at beginning to make them all the same... GOD...

Now, if only I knew how to disable those damn explanations which pop once you go with mouse over a known filter to the AVSP... GOD - that's as annoying as the frames thingy ;).

Besides that - I LOVE, love love - absolutely LOVE the AlienVerSusPradator tool ;).

lolent
30th August 2007, 00:49
incredible changelog, i'll give it a try as soon as possible.
thanks for your work qwerpoi ;)

~bT~
30th August 2007, 00:55
Massssive changelog! Cheers qwerpoi!

smok3
30th August 2007, 01:03
nice, feature request: but it would be even nicer, if the crop info was actually used for proper resizing; example:
http://blog.somestuff.org/resizecalculator.htm
(also crop will need even numbers for yuv.)

qwerpoi
30th August 2007, 04:10
THANK GOD, the whole "change frame here, it changes everywhere" was getting SOOOOOOO on my nerves... But it was still very comfortable for comparisons of different raws, so I was adding black frames at beginning to make them all the same... GOD...
Whoa, didn't know it was so stressful! I'm glad things are okay in this version.

Now, if only I knew how to disable those damn explanations which pop once you go with mouse over a known filter to the AVSP... GOD - that's as annoying as the frames thingy ;).
If you're referring to the filter calltips, you were always able to disable them from the options menu, but in this version they pop up less by default. Now they appear only when you create the filter, or when you go back and edit the filter's arguments, NOT when you move the cursor within the parentheses. If you want them to appear without editing the script, you can highlight a portion of the text within the filter's parentheses.

Wow, that's quite the changelog. I'll give this a go right now, Thanks :D

incredible changelog, i'll give it a try as soon as possible.
thanks for your work qwerpoi ;)

Massssive changelog! Cheers qwerpoi!
Heh, glad you guys are impressed by the changelog, I hope there won't be any major problems so you'll be as happy with the program itself :)

nice, feature request: but it would be even nicer, if the crop info was actually used for proper resizing; example:
http://blog.somestuff.org/resizecalculator.htm
(also crop will need even numbers for yuv.)
As I've mentioned, I'm no resize/aspect ratio expert, but I believe you can crop out black bars (using AvsP's crop tool if you'd like) prior to activating the resize calculator, it should work fine. Basically the pixel aspect ratio (which is automatically computed from the d2v if present) is independent of the video dimensions, so the reported sizes and errors will still be accurate when cropping prior to running the resize calculator. Again, maybe I'm misunderstanding things, so any experts out there, feel free to correct me.

foxyshadis
30th August 2007, 04:44
Cropping and resizing is such a contentious issue that even the DVD authors don't always get it right, so it's a good thing the PAR is editable. =D

Thank you for continuing to work on this, the additions are pretty helpful. Plus the program forces me to learn a little Python to bend it to my will!

Pookie
30th August 2007, 05:17
Almost a year to the day since your original release. Thanks, man.

AlanHK
30th August 2007, 06:18
Great, looks nice.

And now for the bitching:

Typo: Program settings/Text 1:
"..captital letters" --> should be "... capital letters"

I've found a couple of glitches using the automatically generated sliders.

I have a rather long script for a grotty old video:
AVISource("1-1.avi",false)

ffreeze(755)
ffreeze(954)
# 180 ffreezes...
ffreeze(44347)

RemoveDirt()
Sharpen(0.8)
LanczosResize(672,544,0,0,640,480)
AddBorders(24,16,24,16)
(Where ffreeze is my function to simplify FreezeFrame.)

When I loaded this in AvsP, the only function that displayed an automatic slider was Avisource. I couldn't see any way to stimulate it to show the others. But after closing and reopening AvsP, it did detect the commands at the end of the file and presented folded sliders for them.

(Also, when editing the freezeframe numbers I had to continually refresh the video window, otherwise it was showing the wrong frame. This is more of an Avisynth bug I think, similar problems in VDub. This script is the reason I wanted to import and export hundreds of bookmarks, by the way.)

And in another script I have some Trims:

Trim(0 ,781 ) ++\
Trim(781 +1,6238 ).NoLogoAuto(logo,1)++\
Trim(6238 +1,13109) ++\
Trim(13109 +1, 0 ).NoLogoAuto(logo,1)
The sliders for the Trims are confused by the expressions and seem to just ignore them.

The first Trim's first and last frames are shown correctly, but the second only has: First Frame = 6238.
(It should be 781+1 = 782), and no Last Frame at all. The other Trims are similarly given the wrong frames.


Cropping:
If I use the crop editor and mouse to select an area, but have it an odd number in size, I lose the display completely and get a big red error message "Crop: YUV images can only be cropped by an even number..." There is no way to correct my selection area except editing the script directly, or deleting the crop and starting again. Would be nice if the visual crop editor constrained you to legal crop dimensions.

Tabs:
It's quite subtle how the tabs change to show which is the active one. I'd prefer it if the active tab was very obvious, e.g. a different colour, bold text.

krisq
30th August 2007, 08:58
Thanks qwerpoi for this über update. Looks slick so far :D

G_M_C
30th August 2007, 09:26
http://gathering.tweakers.net/global/smileys/worshippy.gif

Was looking at all the fast en usefull changes in the old thread, but never tried using this tool. But seeing how far it has come now, i wont be able to forego on it now. So many kudo's for you qwerpoi, you seem to have succesfully created something other people have failed to get right.

http://gathering.tweakers.net/global/smileys/worshippy.gif


Can you guys even see this smily :?

Henrikx
30th August 2007, 11:39
Update German language file AvsP 2.0.0
New address for the Download
http://technik.movie2digital.de/thread.php?postid=434677#post434677

@qwerpoi
Great Work !

krisq
30th August 2007, 12:50
So... I've opened avsp , drag&dropped .d2v file into it and it showed 'could not open one of the input files'. Save and re-open of the script solved the problem. I have dgdecode in my plugins dir so I don't need to load it manually. There is no such problem with avisource and directshowsource. My guess is it happens with all external source plugins.

SixdeeBee
30th August 2007, 16:34
Got this error message:

[Thu Aug 30 16:15:00 2007]
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "AvsP.pyo", line 11164, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "AvsP.pyo", line 11154, in OnInit
File "AvsP.pyo", line 3344, in __init__
File "AvsP.pyo", line 3900, in defineFilterInfo
File "AvsP.pyo", line 4072, in getFilterInfoFromAvisynth
AttributeError: 'NoneType' object has no attribute 'split'

System is an AMD K7 (3200+), WinXP home SP 2.
Old version 1.4 works fine.

On a dual core AMD K8 and WinXP pro SP2 the version 2.0
works fine. Both systems have AviSynth 2.57 installed.

Any idea ???

SDB

jethro
30th August 2007, 20:08
Thank you very much, sir!:thanks:

foxyshadis
30th August 2007, 21:36
SixDeeBee, does it happen if you empty out the external plugin folder? Can you isolate it to one plugin if it does?

That reminds me, it seems to be failing if C-interface plugins are found during the initial parse. When it comes across Yadif, I get:
Error parsing GetSystemEnv plugin parameters: unknown character Y
Error parsing GetSystemEnv plugin parameters: unknown character a
Error parsing GetSystemEnv plugin parameters: unknown character d
Error parsing GetWorkingDir plugin parameters: unknown character
Error parsing GetFileInfo plugin parameters: unknown character

Doesn't seem care about FFMpegSource though, so maybe it's not C-interface at all.

SixdeeBee
31st August 2007, 01:35
Found the error, it was my own fault !:stupid:
Its always the difference between thinking and knowing ...

I thought that it was AviSynth 2.57 which had been installed few weeks ago ... but it was 2.58 !

It seems that there is an incompatibility between 2.58 and AvsP 2.0.
Went back to 2.57 and now it works.:)

Possibly someone else can also test with 2.58 and tell us his/her results ?

SdB

qwerpoi
1st September 2007, 00:39
Sorry for the lack of replies recently, I've been sick as a dog these last few days. I'm planning on releasing a bugfix within the week to address some of the issues brought up.

Thank you for continuing to work on this, the additions are pretty helpful. Plus the program forces me to learn a little Python to bend it to my will!
No problem, and learning a bit of Python is always a good thing!

Almost a year to the day since your original release. Thanks, man.
You noticed too, huh? Really just a coincidence (if I noticed sooner I would have planned it to be exactly a year :)), seems like it's been out longer than that to me.


Typo: Program settings/Text 1:
"..captital letters" --> should be "... capital letters"

I've found a couple of glitches using the automatically generated sliders.
Thanks for the bug reports, I'll look into them, along with your cropping and tab suggestions as well.

http://gathering.tweakers.net/global/smileys/worshippy.gif

Was looking at all the fast en usefull changes in the old thread, but never tried using this tool. But seeing how far it has come now, i wont be able to forego on it now. So many kudo's for you qwerpoi, you seem to have succesfully created something other people have failed to get right.

http://gathering.tweakers.net/global/smileys/worshippy.gif


Can you guys even see this smily :?
Thanks, glad to have another convert (and yes, we can see the smiley.)

Update German language file AvsP 2.0.0
New address for the Download
http://technik.movie2digital.de/thread.php?postid=434677#post434677

@qwerpoi
Great Work !
Your translations are always done in record time! I'll update the links accordingly when I get a chance.

So... I've opened avsp , drag&dropped .d2v file into it and it showed 'could not open one of the input files'. Save and re-open of the script solved the problem. I have dgdecode in my plugins dir so I don't need to load it manually. There is no such problem with avisource and directshowsource. My guess is it happens with all external source plugins.
Okay, thanks for pointing that out, I'll try and see what's going on.

Got this error message:

[Thu Aug 30 16:15:00 2007]
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "AvsP.pyo", line 11164, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "AvsP.pyo", line 11154, in OnInit
File "AvsP.pyo", line 3344, in __init__
File "AvsP.pyo", line 3900, in defineFilterInfo
File "AvsP.pyo", line 4072, in getFilterInfoFromAvisynth
AttributeError: 'NoneType' object has no attribute 'split'


It seems that there is an incompatibility between 2.58 and AvsP 2.0.
Went back to 2.57 and now it works.:)
Huh, I'll have to install 2.58 and see what's the problem. I definitely don't want AvsP to force people to stick with older versions of Avisynth, in AvsP 2.0.0 it's possible to create a filter database specific to each version of Avisynth which will be helpful in this matter. However, having the wrong version should not result in a crash, so I'll try and figure out how to fix that.

Thank you very much, sir!:thanks:
No problemo, sir!

That reminds me, it seems to be failing if C-interface plugins are found during the initial parse. When it comes across Yadif, I get:
Error parsing GetSystemEnv plugin parameters: unknown character Y
Error parsing GetSystemEnv plugin parameters: unknown character a
Error parsing GetSystemEnv plugin parameters: unknown character d
Error parsing GetWorkingDir plugin parameters: unknown character
Error parsing GetFileInfo plugin parameters: unknown character

Doesn't seem care about FFMpegSource though, so maybe it's not C-interface at all.
Ho, I'll check that out asap, thanks for letting me know.

foxyshadis
1st September 2007, 10:08
I was wondering, would you be amenable to something like this in the macro execution:

try:
# Read the macro text
f = open(macrofilename)
macroLines = f.readlines()
f.close()
# Check for syntax errors (thows SyntaxError exception with line number)
compile(''.join(macroLines+['pass']), macrofilename, 'exec')
# Wrap the macro in a function (allows top-level variables to be treated "globally" within the function)
lineList = ['def AvsP_macro_main():'] + ['\t%s' % line for line in macroLines] + ['AvsP_macro_main()']
macrotxt = ''.join(lineList)
# Execute the macro
self.macroVars['avsp'] = AvsP_functions
exec macrotxt in self.macroVars, {}
except:
import traceback
wx.MessageBox('%s\n\n%s\n%s' % (_('Error in the macro:'), sys.exc_info()[1], traceback.format_exc()), 'ERROR')

(modified lines in bold)

This has proven quite helpful in macro development, since I still seem to be making a hundred little syntax mistakes for everything I write; this shows the correct line # and the full error. (Alternately you could just spit the error out to stdout/err.)

Edit: A closer reading of the docs shows that exc_info already returns a traceback and I didn't need to grab a clean one after all. Oops! :p Edit 2: Haha, didn't actually work, I'll figure it out later.


By the way, on an unrelated note, if anyone ever needs to open a file from a macro, it's a somewhat convoluted procedure, since as far as I know you can't piggyback on avsp's window. I don't know much about python's inheritance, though, so many you can. Here's how I accessed it, names changed to protect the guilty:

class MyClass(wxp.Frame):
def __init__(self, parent=None, id=wx.ID_ANY, title='Insert', pos=wx.DefaultPosition, size=(1, 1), style=wx.DEFAULT_FRAME_STYLE):
wx.Frame.__init__(self, parent, id, pos=pos, size=size, style=style)
myfolder = os.environ['SYSTEMROOT']
dlg = wx.FileDialog(parent=self, message='Archives', defaultDir=myfolder, wildcard='Archives|*.zip;*.rar|Everything|*', style=wx.OPEN)
ID = dlg.ShowModal()
if ID == wx.ID_OK:
f = dlg.GetPath()
blah=MyClass() # must be instantiated

The little 1x1 window shouldn't bother anyone, though you can position it offscreen if needed. If you're user friendly, you can save the path for next time, too. :P

check
1st September 2007, 10:48
(modified lines in bold)Just for future reference, with my firefox 2 at least, the bold is almost identical to the non bold in CODE tags. Could you suffix the lines with a # or something as well? The change was a nice idea though, I have been growling about this too :)

By the way, on an unrelated note, if anyone ever needs to open a file from a macro, it's a somewhat convoluted procedure, since as far as I know you can't piggyback on avsp's window. I don't know much about python's inheritance, though, so many you can.
Actually, you can pass None as the parent, which means you can skip the need to instantiate a window for this. I haven't actually specifically tested opening a save window without a main frame, but it should just work like this:

dialog = wx.FileDialog(parent = None, message = "Choose a Save Location", defaultDir = os.getcwd(), wildcard = 'All Files|*', style=wx.SAVE|wx.OVERWRITE_PROMPT|wx.CHANGE_DIR, pos = wx.DefaultPosition)
if dialog.ShowModal() == wx.ID_OK:
return os.path.join(dialog.GetDirectory(),dialog.GetFilename()))

Also note wx.CHANGE_DIR, which will save the path. My memory tells me it does so by changing the CWD though ;)

foxyshadis
1st September 2007, 11:30
One of my little pet peeves is when different file dialogs re-use each other's folders in wildly different circumstances, so I like keeping each dialog's location stored separately. Thanks for the hint on None. (Still a Python nub, it took about an hour to find the traceback library last week, and a few more to figure out needing and how to create a window for a dialog. Working late at night is probably a bad habit.)

Also, added blue text. :D

check
1st September 2007, 12:21
Awesome wxpython reference: http://www.wxpython.org/docs/api/

Also, mistake with my above code (I won't edit it).
String GetDirectory(self)
Returns the default directory.
String GetFilename(self)
Returns the default filename.
You need dialog.GetPath() (or GetPaths() if it's a multiselection) instead. Then to grab the directory you just need to os.path.dirname(dialog.GetPath())

RedDwarf1
2nd September 2007, 05:48
I keep getting an error when I OK the Configure Shortcuts dialogue. The keys I set are not being implemented. The default video movement settings are not logical to me. I tried setting move forward by 1 second to the Up key but the Up key still moves back 1 second. I have Down set to move back 1 second but it is still moving forward 1 second.

Traceback (most recent call last):
File "AvsP.pyo", line 6039, in OnMenuConfigureShortcuts
File "AvsP.pyo", line 4580, in bindShortcutsToAllWindows
File "wxp.pyo", line 404, in BindShortcutsToWindows
KeyError: 231

krisq
2nd September 2007, 13:49
I keep getting an error when I OK the Configure Shortcuts dialogue. The keys I set are not being implemented. The default video movement settings are not logical to me. I tried setting move forward by 1 second to the Up key but the Up key still moves back 1 second. I have Down set to move back 1 second but it is still moving forward 1 second.

Traceback (most recent call last):
File "AvsP.pyo", line 6039, in OnMenuConfigureShortcuts
File "AvsP.pyo", line 4580, in bindShortcutsToAllWindows
File "wxp.pyo", line 404, in BindShortcutsToWindows
KeyError: 231

I can confirm the error. Changed shortcuts work after restart.

Zarxrax
2nd September 2007, 23:25
When line-by-line update is enabled, can you have it not automatically move the cursor to a problematic line?

Say you add a filter to your script, and avisynth throws an error saying that the video is in the wrong colorspace. You press up to go to the previous line so you can add a colorspace conversion, but when you press up, avsp will update again, and pull your cursor back down. This can lead to you very easily overwriting lines in your script by accident.

Harukalover
3rd September 2007, 01:46
Been having a lot of trouble using avsp. Multitudes of errors have appeared during my usage of it which almost all end in crashes.

Examples from the error log:
Exception exceptions.WindowsError: 'exception: access violation reading 0x80D47ED5' in <bound method PIScriptEnvironment.__del__ of <avisynth.PIScriptEnvironment instance at 0x01A1A878>>

WindowsError: exception: access violation reading 0x00086100
Traceback (most recent call last):
File "AvsP.pyo", line 7012, in OnPaintVideoWindow
File "AvsP.pyo", line 9314, in PaintAVIFrame
File "pyavs.pyo", line 322, in DrawFrame
File "pyavs.pyo", line 301, in _GetFrame
File "avisynth.pyo", line 277, in GetFrame
WindowsError: exception: access violation reading 0x00086100

Any ideas what's causing these errors from those logs? Would an install of wxPython cause these issues? (I need it for a separate program to work)

bidmead
3rd September 2007, 09:03
Excellent work -- I love this thing.

I have some queries:

The encoder tool seems to allow you to set up any .exe as the encoder. It seems to exclude using, eg, a .bat file in this capacity.

I don't understand the "automatic user sliders". The accumulation of functions folded on the right hand side of the viewer open to show editable values but I can't see any sliders here.

These folded functions are miscreated for moderately complex script lines like, eg:

Dissolve(Trim(movie,0,2078), Trim(movie,3346,0))

I voice these niggles with some reluctance, because I'm probably just exposing my own ignorance. But hopefully there's an outside chance that they may be useful.

--
Chris

AlanHK
3rd September 2007, 11:02
I don't understand the "automatic user sliders". The accumulation of functions folded on the right hand side of the viewer open to show editable values but I can't see any sliders here.

You do get automatic sliders for functions like "sharpen".

I'd like a way to hide, not just "fold", auto sliders I don't want to play with. A right-click option perhaps.

salehin
3rd September 2007, 17:37
Thanks a lot qwerpoi for this nice little tool which is saving me lot of time. I also like the way you've kindly mentioned contributors' names in the log.

I may be wrong in what follows- when I switch between tabs, AvsP takes me to the exact frame. But it doesn't seem to work in the 1st tab. 1st tab stays on the last frame that it had (regardless of what was in other tabs beforehand)

Avs script

DGDecode_mpeg2source("K:\CALCUTTA\VIDEO_TS\IBRD.d2v")
tfm(order=1).tdecimate()
crop( 30, 14, -30, -18)

#Spline36Resize(656,448) # Spline36 (Neutral)

dull = last.Spline36Resize(656,448)
sharp = dull.LimitedSharpenFaster(dest_x=656,dest_y=448,Strength=85)
Soothe(sharp,dull,40)

FYI, according to DGIndex 1.5.0.0,

FR: 29.97 fps
Type: Film (99%),
Field order: top & bottom (both, varies)
Frame type: progressive and interlaced (both, varies)
Bitrate (goes upto): 8-9 mbps

foxyshadis
3rd September 2007, 22:27
I don't understand the "automatic user sliders". The accumulation of functions folded on the right hand side of the viewer open to show editable values but I can't see any sliders here.

Sliders are only for numeric values.

A bug I found a long time ago but forgot to mention: For some reason, using the scroll wheel on the preview video will make it hang for a while. (And once locked up completely.)

kipico
4th September 2007, 01:06
I'm thoroughly impressed by the versatility of this application! Throw in an Auto Crop function and audio encode/muxing and this'll convert me from GK :D

Veiga
4th September 2007, 06:12
qwerpoi

Congratulation one time more for your nice tool.
little contribution for who appreciate portugues_Br translation

kypec
4th September 2007, 13:28
Thanks for your great effort on this tool :)
Just a tiny comment: please replace the JPG screenshots in help\images with PNG. It is much better suited for that type of graphics...

check
4th September 2007, 15:32
the output box can output jpb, png or bmp. The format is chosen based on the extension used.

Leak
4th September 2007, 17:09
the output box can output jpb, png or bmp. The format is chosen based on the extension used.
Ummm... I think he might have been talking about the AvsP documentation and replacing the JPG screenshots of the interface therein with PNG ones...

np: Dr. Walker & M.Flux - Cover M-I-5 (Köln Kompakt 1)

check
5th September 2007, 09:47
Ummm... I think he might have been talking about the AvsP documentation and replacing the JPG screenshots of the interface therein with PNG ones...

np: Dr. Walker & M.Flux - Cover M-I-5 (Köln Kompakt 1)

oops, where are my glasses 8)

kypec
5th September 2007, 10:25
Ummm... I think he might have been talking about the AvsP documentation and replacing the JPG screenshots of the interface therein with PNG ones...
Yes, that's exactly what I had in mind :p

Serbianboss
6th September 2007, 14:15
Just two suggestion,

It would be good if we have button "close tabs". Because if we have several tabs open and want to close avsp it aks for every tab to close. Its ok, but it would be easer if we press just once to close all tabs.

Also it would be good if you update flash tutorial on site with new features of avsp.

thanks

foxyshadis
6th September 2007, 15:20
Agreed that something like "New Session" would be useful. In the meantime, you can use a macro like this:

while(avsp.GetTabCount() > 1):
avsp.CloseTab(boolPrompt=False)
avsp.NewTab()
avsp.CloseTab(index=0,boolPrompt=False)

(Doesn't ask or save anything! Save your session first. Extending it to ask something like "save all, save none, ask" would be pretty trivial though.)

bidmead
6th September 2007, 15:26
Sliders are only for numeric values.


Yup. So I was expecting there to be sliders for, eg:

Trim(0,4578) ++ Trim(5903,0)

--
Chris

foxyshadis
6th September 2007, 15:38
Yup. So I was expecting there to be sliders for, eg:

Trim(0,4578) ++ Trim(5903,0)

--
Chris

Turns out I was wrong, sorry, didn't look hard enough. You have to explicitly define slider ranges in the function definition (trim is listed under built-ins). Trim is kind of a special case, it's something that'd need to be reset internally on every refresh to be most useful, possibly each one read as it own clip's properties, but that isn't possible now.

qwerpoi
6th September 2007, 18:38
I haven't had much time for AvsP recently, the bugfix update is still planned to be released over the weekend or early next week. Thanks to everyone who have been answering questions, it's a big help.

I was wondering, would you be amenable to something like this in the macro execution:

This has proven quite helpful in macro development, since I still seem to be making a hundred little syntax mistakes for everything I write; this shows the correct line # and the full error.
I'll take a look at it, it should be doable.

By the way, on an unrelated note, if anyone ever needs to open a file from a macro, it's a somewhat convoluted procedure, since as far as I know you can't piggyback on avsp's window.
You should be able to use the macro command avsp.GetFilename() for this purpose, which will simply return the filename (or an empty string if the user presses cancel). Although this is undocumented (sorry about that), you can specify the file filter as well, which follows standard syntax. So the code to get the filename of an archive file would be one line:
filename = avsp.GetFilename(title='Get an archive file', filefilter='Archives|*.zip;*.rar|Everything|*')
I *think* that will be able to do everything that you need.

I keep getting an error when I OK the Configure Shortcuts dialogue. The keys I set are not being implemented.
Thanks for letting me know, I'll try and have it fixed for the next release.

When line-by-line update is enabled, can you have it not automatically move the cursor to a problematic line?

Say you add a filter to your script, and avisynth throws an error saying that the video is in the wrong colorspace. You press up to go to the previous line so you can add a colorspace conversion, but when you press up, avsp will update again, and pull your cursor back down. This can lead to you very easily overwriting lines in your script by accident.
I haven't used line-by-line updating in a while, so it never occured to me - I'll try to simply automatically disable problematic line highlighting when line-by-line updating is checked.

Been having a lot of trouble using avsp. Multitudes of errors have appeared during my usage of it which almost all end in crashes.

Any ideas what's causing these errors from those logs? Would an install of wxPython cause these issues? (I need it for a separate program to work)
I don't think having wxPython installed can cause such issues (I have it installed as well). The errors you are reporting are crashes in avisynth, which possibly means there's a problem with your specific avisynth scripts. Try running the same scripts in virtual dub, or even an older version of AvsP, it may turn out you have an unstable plugin or avsi script in your plugins directory. Or it may turn out that there's a problem in AvsP 2.0.0, so in either case, post an example problematic script and I'll take a look.

The encoder tool seems to allow you to set up any .exe as the encoder. It seems to exclude using, eg, a .bat file in this capacity.
That's true, I guess it made sense to me that way. If you wanted to use a .bat file instead of an .exe, couldn't you make a preset using cmd.exe, where the first argument is the batch file? Or is it not possible this way to send further args to the batch file? (Sorry, command lines and dos batch scripts are not my area of expertise...)

I don't understand the "automatic user sliders". The accumulation of functions folded on the right hand side of the viewer open to show editable values but I can't see any sliders here.
As foxyshadis pointed out, all specified arguments in the script show up in the slider window, but if AvsP doesn't have the info to build a slider, it will show the simple text box in its place. You can tell if AvsP has the info or not by looking at the calltip. And again as foxyshadis mentioned, it would be possible to make sliders for Trim, but the min and max values for the sliders are quite complicated, since they depend on the clip's framecount and each other. Eventually AvsP may support such complexities, but for now, they'll show up as text boxes, you can edit the values in the box and hit enter to refresh.

These folded functions are miscreated for moderately complex script lines like, eg:

Dissolve(Trim(movie,0,2078), Trim(movie,3346,0))

Yes, you're right, I should have mentioned this earlier - the automatic sliders currently choke on filters with repeating arguments. If you look at the calltip for Dissolve:
Dissolve(clip a, clip b [, ...], int overlap, float "fps")
The [, ...] indicates that you can keep on adding more clips, clip c, clip d, etc. This makes it very difficult to build sliders properly. Difficult, but not impossible, it's something I'm working on for the near future.

I'd like a way to hide, not just "fold", auto sliders I don't want to play with. A right-click option perhaps.
I think you can accomplish what you want by simply excluding certain filters from ever having automatic sliders. In the "Options -> Program settings..." dialog box, under the "User sliders" tab, you can simply enter the names of any filters you never want user sliders for in the "Filter exclusion list" at the bottom (separate by spaces). Alternatively, you can uncheck various type checkboxes, so if you uncheck everything except for "type int/float", then when the automatic sliders are created, only filters with numerical slider arguments are created.

Thanks a lot qwerpoi for this nice little tool which is saving me lot of time. I also like the way you've kindly mentioned contributors' names in the log.

I may be wrong in what follows- when I switch between tabs, AvsP takes me to the exact frame. But it doesn't seem to work in the 1st tab. 1st tab stays on the last frame that it had (regardless of what was in other tabs beforehand)
The frame is forced to be the same as the previous tab when the two videos have similar properties (width, height, framecount), which is probably what's going on here. This is crucial for being able to compare filter differences between two videos in two tabs, but it can on rare occasions get in the way.

A bug I found a long time ago but forgot to mention: For some reason, using the scroll wheel on the preview video will make it hang for a while. (And once locked up completely.)
The reason this occurs is the scroll wheel is used to cycle between tabs when the video preview has focus. Specifically, AvsP searches for the next tab with similar video properties (width, height, framecount). An unfortunate side effect is that if you have many tabs open which have never been previewed, AvsP will refresh the video on each tab behind your back in order to determine its video properties. I think I should make it an option to disable scroll wheel through tabs, since keyboard shortcuts should provide a faster alternative.

I'm thoroughly impressed by the versatility of this application! Throw in an Auto Crop function and audio encode/muxing and this'll convert me from GK :D
There's nothing stopping you or someone else from creating an encoding preset that does audio encoding and muxing, since plenty of command line tools exist for the job (mp4box, besweet, mencoder, etc). I may try and put together a few examples for a future release (although it's not really my area of expertise). As for an auto-crop, that's actually an interesting idea, I'll give it some thought.

qwerpoi

Congratulation one time more for your nice tool.
little contribution for who appreciate portugues_Br translation
Thanks a lot for the translation update, I'll update the links as soon as I can.

Thanks for your great effort on this tool :)
Just a tiny comment: please replace the JPG screenshots in help\images with PNG. It is much better suited for that type of graphics...
Hah, originally I made them jpgs to conserve bandwith, since the help files are distributed with each version, and my stuff is being graciously hosted on the avisynth webspace. Anyway, I'm going to have to redo every screenshot for AvsP 2.0.0, so I'll likely use pngs as you suggest, and not include the web pages with each release.

It would be good if we have button "close tabs". Because if we have several tabs open and want to close avsp it aks for every tab to close. Its ok, but it would be easer if we press just once to close all tabs.

Also it would be good if you update flash tutorial on site with new features of avsp.
Good idea on the close tabs, I'll add it to the File menu, and it will prompt to save the session before closing. As for updating the flash tutorial, you're absolutely right, I was planning on doing a whole screencast sort of thing, although ultimately it's going to take quite a bit of time to update the whole website properly.

Harukalover
6th September 2007, 22:27
I don't think having wxPython installed can cause such issues (I have it installed as well). The errors you are reporting are crashes in avisynth, which possibly means there's a problem with your specific avisynth scripts. Try running the same scripts in virtual dub, or even an older version of AvsP, it may turn out you have an unstable plugin or avsi script in your plugins directory. Or it may turn out that there's a problem in AvsP 2.0.0, so in either case, post an example problematic script and I'll take a look.

Aye, at the time I didn't have a full pattern of why it was happening but it seems it was the obvious. It currently only seems to happen with rather long scripts. (this particular one being 417 lines long). Also the script seems to cause Vdub to crash if reopened more than 2 times. So probably just some issued filter being used. If you do want the script for checking, I'll PM you it since it's kind of long and I don't think this site allows spoiler tags.

Also quick question. Is there anyway to make AvsP act like it used to where it didn't keep track of what frame each tab is on by itself? It's a pain for when comparing two different resolution videos but the exact same video in frame count. (the other is just resized)

zemog
8th September 2007, 10:11
Thanks qwerpoi for your excellent work on this valuable update

AlanHK
8th September 2007, 11:53
Originally Posted by AlanHK:
I'd like a way to hide, not just "fold", auto sliders I don't want to play with. A right-click option perhaps.

I think you can accomplish what you want by simply excluding certain filters from ever having automatic sliders.

I can do that, but in one script I may want to twiddle a particular function, in another not. Or after I've worked out a setting, I want to hide it and concentrate on another.

rfmmars
10th September 2007, 18:18
On all of my workstations using version 2.0, the Slider-Togle panel on the right does not display, your see part of the desktop instead. This is a very long script. clicking to a short script with panel and back again, fixes the problem. This was not a problem with the older version.

http://img68.imageshack.us/img68/5545/avspopenus3.th.jpg (http://img68.imageshack.us/my.php?image=avspopenus3.jpg)


[COLOR="RoyalBlue"]#AVISource("e:\1.vdr.avi")
ImageSource("Alaska.jpg")
LoadPlugin("e:\AVS\Plugins\AGC.dll")
LoadPlugin("e:\AVS\plugins\removegrain.dll")
LoadPlugin("e:\AVS\Plugins\mt_masktools.dll")
LoadPlugin("e:\AVS\Plugins\warpsharp.dll")
Loadplugin("e:\avs\plugins\gradfun2db.dll")
loadplugin("e:\avs\plugins\DeGrainMedian.dll")
loadplugin("e:\avs\plugins\Smoothdeinterlacer.dll")
LoadPlugin("e:\avs\plugins\Convolution3d.dll")
LoadPlugin("e:\avs\plugins\FFT3DFilter.dll")
LoadPlugin("e:\avs\plugins\VagueDenoiser.dll")
LoadPlugin("e:\avs\plugins\depan.dll")
LoadPlugin("e:\avs\plugins\depanEstimate.dll")
LoadPlugin("E:\AVS\Plugins\repair.dll")
LoadPlugin("E:\AVS\Plugins\masktools.dll")
LoadPlugin("e:\avs\plugins\mvtools.dll")
LoadPlugin("e:\avs\plugins\autolevels.dll")
import("E:\avs\seesaw6.avs")
SetMemoryMax(512)




ConverttoYv12()




Autolevels(filterRadius=8,sceneChgThresh=10)


#Autolevels(filterRadius=8, sceneChgThresh=10,








ConverttoYUY2()












ConvertToYV12()














HDRAGC(avg_lum=1391,mode=2,passes=1,shift_u=-35, shift_v=0,protect=2,coef_gain=0.05,max_gain=4.61,corrector=0.9,reducer=2.0,avg_window=30,black_clip=0.8,max_sat=2.37,min_sat=0.17,coef_sat=1.0)



Tweak(0.4,1.2)

















































#





#SeeSaw( NRlimit=4, NRlimit2=5, Sstr=1.5, Slimit=9, Spower=9, Szp=16, sootheT=80, bias=40)


return last

EDIT: Deleted AVSp Comment lines plus I found that script sizes doesn't plat a part in this problem


Richard

bidmead
10th September 2007, 21:09
Sorry, but I don't see the point of posting a huge long script, most of which is commented out, and with a large number of blank lines. And in fact there doesn't seem much point in submitting a script like this at all, as it's only going to throw up an error message without the source file(s).

And as far as I can see, Tweak is the only function there that can be expected to autocreate a slider, unless you've explicitly set up autosliders for the external functions.

What happens when you hit Alt-F5?


--
Chris

rfmmars
11th September 2007, 00:05
Sorry, but I don't see the point of posting a huge long script, most of which is commented out, and with a large number of blank lines. And in fact there doesn't seem much point in submitting a script like this at all, as it's only going to throw up an error message without the source file(s).

And as far as I can see, Tweak is the only function there that can be expected to autocreate a slider, unless you've explicitly set up autosliders for the external functions.

What happens when you hit Alt-F5?


--
Chris

Well I thought it was a long script problem, but it doesn't matter if its a long or short script. If i hit Alt F5, i get a full preview window, it I hit it again, then everything is OK.

I posted the script as it was saved by AVSp, it puts the commented lines in, not me . Just trying to give the author as much information as possible.

So yes hitting "Alt F5 twice fixes it but I should not have to do it, not needed before

Richard

AlanHK
11th September 2007, 04:16
A couple of minor niggles:

"F2" is the key to jump to the next bookmark. But if you're not exactly on a bookmark frame, it always jumps back to the previous bookmark. So to go to the next, I have to press F2 twice. I don't see any use for this, shift-F2 (previous bookmark) will go back if you need that.

Auto-sliders: For instance, "Tweak". I see under options/Avisynth function definitions that there are six sliders defined. So I imagined that by typing
Tweak
and ctrl-space (autocomplete) I would get these six sliders. But nothing happens. It seems I have to type dummies for all the parameters
Tweak(1,1,0,1,True,False)
and then the complete set of autosliders will appear.

Is there a simpler way to do this? Also, in previous versions I could write my own default sliders which would be appear when I did autocomplete. Is this still possible?

And while doing the above, I noticed that when typing a function and entering a boolean, and if I follow the tooltip and use "True", on entering the "T" a window pops up offering a list of functions like "TCPDeliver_TCPServer" to autocomplete (but not "True or "False", the only correct words at this point). I can ignore that and keep typing "True", but it seems a bit silly and distracting. If it can't be made context-sensitive, as it's the the capital which stimulates the popup, perhaps tooltips should use "true", "false" to make this less likely to happen.

qwerpoi
11th September 2007, 17:02
Still working on the bugfix, I've fixed several bugs but I want to get a chance to improve the autoslider mechanism a bit before releasing anything.

So... I've opened avsp , drag&dropped .d2v file into it and it showed 'could not open one of the input files'. Save and re-open of the script solved the problem.
I could not generate this bug, could you be more specific as to how it occured? On my computer, opening AvsP and dropping a .d2v or even dropping several files at once seems to work without any problems.

That reminds me, it seems to be failing if C-interface plugins are found during the initial parse. When it comes across Yadif, I get:
Error parsing GetSystemEnv plugin parameters: unknown character Y
Error parsing GetSystemEnv plugin parameters: unknown character a
Error parsing GetSystemEnv plugin parameters: unknown character d
Error parsing GetWorkingDir plugin parameters: unknown character
Error parsing GetFileInfo plugin parameters: unknown character

Doesn't seem care about FFMpegSource though, so maybe it's not C-interface at all.
After looking into this further, I'm a bit confused. I thought Avisynth doesn't auto-load C plugins? At least it doesn't on my computer using avisynth 2.5.7. So I actually have no idea how you got this error with Yadif to occur - could you give me any details you think could help (script, avsynth version, etc)?

Also quick question. Is there anyway to make AvsP act like it used to where it didn't keep track of what frame each tab is on by itself? It's a pain for when comparing two different resolution videos but the exact same video in frame count. (the other is just resized)
I'll try and add it as an option in the next release.

Thanks qwerpoi for your excellent work on this valuable update
Thanks a bunch for the new translation, I've updated the first post, I'll try and update the website as soon as I get a chance.

I can do that, but in one script I may want to twiddle a particular function, in another not. Or after I've worked out a setting, I want to hide it and concentrate on another.
I imagine eventually I will add a feature like this. Right now it would not be effective because currently every time you refresh the video, all the sliders are rebuilt to account for any changes in the script. I need to do some redesign such that certain slider information is stored on a tab level.

On all of my workstations using version 2.0, the Slider-Togle panel on the right does not display, your see part of the desktop instead. This is a very long script. clicking to a short script with panel and back again, fixes the problem. This was not a problem with the older version.
I will take a look into the issue, thanks for letting me know.

"F2" is the key to jump to the next bookmark. But if you're not exactly on a bookmark frame, it always jumps back to the previous bookmark. So to go to the next, I have to press F2 twice. I don't see any use for this, shift-F2 (previous bookmark) will go back if you need that.
Actually, hitting F2 when you're not on a bookmark goes to the nearest bookmark, not the previous bookmark. I think it was designed this way before I had the previous bookmark command. I'll change them to always jump in the correct direction as you describe.

Auto-sliders: For instance, "Tweak". I see under options/Avisynth function definitions that there are six sliders defined. So I imagined that by typing
Tweak
and ctrl-space (autocomplete) I would get these six sliders. But nothing happens. It seems I have to type dummies for all the parameters
Tweak(1,1,0,1,True,False)
and then the complete set of autosliders will appear.

Is there a simpler way to do this? Also, in previous versions I could write my own default sliders which would be appear when I did autocomplete. Is this still possible?
When the autocomplete list is visible, select the Tweak filter from the list (by either using the arrow keys or keep typing) and hit enter. AvsP will automatically fill the default values into the script. You can customize this preset for each filter in the "Options -> Avisynth function definition..." dialog.

And while doing the above, I noticed that when typing a function and entering a boolean, and if I follow the tooltip and use "True", on entering the "T" a window pops up offering a list of functions like "TCPDeliver_TCPServer" to autocomplete (but not "True or "False", the only correct words at this point). I can ignore that and keep typing "True", but it seems a bit silly and distracting. If it can't be made context-sensitive, as it's the the capital which stimulates the popup, perhaps tooltips should use "true", "false" to make this less likely to happen.
You're right, the database should have lowercase "true" and "false" to avoid this issue. Incidentally, if you're comfortable with manually activating autocompletion with control+space, you can deactivate the automatic autocompletion on capital letters in the options dialog.

Alain2
12th September 2007, 14:33
French translation updated

Didn't try a lot the soft yet, but wouhaou, that's a big update and it seems all working quite well :) The bitrate calculator seems ok as well, wil compare the calcs with my own usual spreadsheet calcs, but quick checks are good :)

Well done qwerpoi!

krisq
12th September 2007, 16:47
I could not generate this bug, could you be more specific as to how it occured? On my computer, opening AvsP and dropping a .d2v or even dropping several files at once seems to work without any problems.


After I saw your post I started to pinpoint the problem myself and guess what... It happens if .d2v is generated with relative path instead of full path. Problem might be on DGIndex side then...

Serbianboss
12th September 2007, 19:47
I noticed that when you write in avsp: limitedsharpenfaster(smode=4) that dialog box just show mode 1 to 3 and dosnt show mode 4.

Also when you type SeeSaw filter it dosnt show on right bar(autoslider), i mean it dosnt see like filter(sharpener) but its work. This is just visual problem.

Alain2
16th September 2007, 00:23
When trying to get help on a filter (Shift F1 by default), error message appears :
Traceback (most recent call last):
File "AvsP.pyo", line 5501, in OnMenuEditFilterHelp
AttributeError: 'AvsStyledTextCtrl' object has no attribute 'keywords'

[edit]- Actually help comes ok for internal functions, but not for external (didn't test other categories yet)

- With separate script / video windows, when moving on the cursor on the script window, the video window takes the focus (not convenient I think)
- Request: Can you make the video window (when separated from script window) display the full path to the script in its title as per the script window ? (and maybe shorten the "AvsP preview" tag)
- Request: Can you re-introduce a shortcut to filter properties edition (was Ctrl+Shift+D before) ?
- Resize calculator : Is it possible (now that it's a plugin instead of being part of the core) to have the real clip dimensions as inputs (not the zoomed ones) ?
- Is it possible to link the bitrate calculator with the resize tool as well ? Personnally I choose the resize based on the bitrate available.. To give you an idea of what I mean, you can have a look at my spreadsheet (http://homepages.nildram.co.uk/~cestial/Crop&Resize&BitrateITU.ods) (in OOo Calc format), which is very simple and only for normal pal/ntsc dvd -> 1:1 encodes (but that's all I need ^^)

[edit2]- For some reason at some point (I was editing adding + editing a filter property), an error msg appeared (below), and not sure if it's related orf not but just after my keyboard was not the uk-standard one anymore. Closing / re-opening avsp and the keyboard mapping was good again. But my added filters in the filters catalog disappeared :(
[Sun Sep 16 13:24:54 2007]
Traceback (most recent call last):
File "AvsP.pyo", line 2108, in OnArgsChange
File "AvsP.pyo", line 973, in CreateDefaultPreset
File "AvsP.pyo", line 9770, in ParseCalltipArgInfo
TypeError: int() argument must be a string or a number, not 'NoneType'

- For auto-complete of filter name in the script window (Ctrl+space), if only 1 match is found, can you change the behaviour to enter the full customised (or autogenerated) parameters list ? At the moment it only finishes the filter name

foxyshadis
16th September 2007, 06:53
After looking into this further, I'm a bit confused. I thought Avisynth doesn't auto-load C plugins? At least it doesn't on my computer using avisynth 2.5.7. So I actually have no idea how you got this error with Yadif to occur - could you give me any details you think could help (script, avsynth version, etc)?

It looks like it's actually an error generated by GetSystemEnv, sorry about that. I think the plugin's a little buggy and I'm going to try recompiling it.

qwerpoi
17th September 2007, 00:57
New version 2.0.1, download from the AvsP download page (http://avisynth.org/qwerpoi/Download.html) or from the mirror (http://www.savefile.com/files/1061266). This is mostly a bugfix version, here's the changelog:
* improved automatic user slider construction (suggested by AlanHK, bidmead)

* added line number traceback for macro errors (suggestedy by foxyshadis)

* disabled error line highlight when line-by-line update enabled (suggested by Zarxrax)

* added warnings to crop editor for invalid crop values (suggested by AlanHK)

* brought back shortcuts for function definitions in script menu (suggested by Alain2)

* added close all tabs function (suggested by Serbianboss)

* added option to disable scroll wheel through tabs (suggested by foxyshadis)

* added option to disable frames for each tab (suggested by Harukalover)

* changed autocomplete to show single item lists (suggested by Alain2)

* changed title for separate video window to full script name (suggeseted by Alain2)

+ fixed minor error when configuring shortcuts (thanks RedDwarf1, krisq)

+ fixed next bookmark function to always search forward (thanks AlanHK)

+ changed "True" and "False" in database to lowercase (thanks AlanHK)

+ fixed typo in options dialog (thanks AlanHK)

+ fixed bug with manual activation of filter help (thanks Alain2)

+ fixed bug with macro functions GetWidth/GetHeight returning zoomed values (thanks Alain2)

+ fixed display issue with slider window and zoom window fit (thanks rfmmars)
Like I said, mostly these are fixes for minor bugs that people have been reporting. The automatic user sliders are improved a bit, filters with repeating arguments should work better now, although there's still some room for improvement. I still need to do some work polishing up window layout issues with fit to window zooming and the separate video window. For translators, there's only about a dozen new messages, so this version shouldn't cause any headaches :). Anyway, as always, let me know if you come across any new problems or feature requests.

qwerpoi
17th September 2007, 01:05
Also when you type SeeSaw filter it dosnt show on right bar(autoslider), i mean it dosnt see like filter(sharpener) but its work. This is just visual problem.
Currently SeeSaw isn't in the database (which I created manually), you can check out what's in the database from "Options -> Avisynth function definitions...". I'll try and add more functions as time goes by, but anyone who wants to lend a hand is certainly welcome :)

- With separate script / video windows, when moving on the cursor on the script window, the video window takes the focus (not convenient I think)

- Is it possible to link the bitrate calculator with the resize tool as well ? Personnally I choose the resize based on the bitrate available.. To give you an idea of what I mean, you can have a look at my spreadsheet (http://homepages.nildram.co.uk/~cestial/Crop&Resize&BitrateITU.ods) (in OOo Calc format), which is very simple and only for normal pal/ntsc dvd -> 1:1 encodes (but that's all I need ^^)
First, thanks for the translation update and all the bug reports, it's a big help. I'm not sure what you're referring to with the video window taking focus, could you give me a specific example when it occurs? As for combining the resize and bitrate calculators, I'll take a look into it, it should be doable (although I make no time guarantees :)).

lolent
17th September 2007, 01:21
I can't wait to try it ^^
thanks again qwerpoi ;)

AlanHK
17th September 2007, 14:03
2.0.1 -- cool, thanks.

And onto more niggles:

If I have hidden display of sliders, then press F5 to refresh the display (because when I change freezeframe parameters, it does not display correctly unless I do) the sliders come back.
When I hide sliders, I want them to stay hidden until I unhide them.

PS
I found a workaround: I can make the slider window zero width.... would still prefer it stay hidden when I ask.

Henrikx
17th September 2007, 17:25
@qwerpoi

Update German language file AvsP 2.0.1
http://technik.movie2digital.de/thread.php?postid=438200#post438200

My last AvsP translation!
Somebody may carry on...

THX

rfmmars
17th September 2007, 17:56
The "Slider Panel" display problem is fixed but now it crashes each time I try to use "Insert File Name"

#AVISource("e:\1.vdr.avi")
ImageSource("Alaska.jpg")

2.0 worked fine

Richard.

Fizick
17th September 2007, 20:39
qwerpoi,
can you consider to decrease AvSp download size by removing standard components (putting them to separate archive)?

python25.dll, lib/wxwsm26uh.dll, etc

It is not important for rare updated programs, but your child is not rarely updated :)

zemog
18th September 2007, 12:35
@qwerpoi

Here is the Spanish translation for v2.0.1

Taking a look at the result I show in the dialog boxes: “Edit extension-based templates”, “Edit shortcuts” and “Program settings” that some text still in English although Spanish words are in the translation.py file (examples: "Program Settings" and "* Requires program restart for full effect").This doesn't hapends in the earlier version.

Veiga
22nd September 2007, 05:34
The update translation for v2.0.1.
Thanks

miamicanes
25th September 2007, 22:45
I've been using AvsP for a few days and love it. However, I think I've found a bug:

It appears that AvsP tries to parse lines that have been commented-out, and crashes if the commented-out line is invalid. In particular, I've crashed it badly by doing something like...

#Trim(14923,

... then cursoring away from the line for a moment, or otherwise doing something that induces AvsP to reparse the script and re-render the current video preview. It seems as though the big thing that kills it is having a commented-out line with otherwise-valid command and unclosed parentheses (possibly with incomplete or blatantly invalid values).

The same endless-loop behavior obviously occurs if the line ISN'T commented out while the rendering window is open & something triggers a refresh. If it's not too hard, a nice future enhancement might be adding a way to forcibly kill the preview, close the window, and return to editing mode. If you can figure out where the infinite loop is occurring, maybe you could add a boolean value somewhere that gets set to 'true' whenever the preview window gets shown, and gets checked periodically while parsing/rendering the preview so that if it's found to be false, all parsing & preview-rendering ceases, the preview window gets closed, and the program returns to text-editor mode. The actual value change could be triggered by a keypress (left-ctrl + backspace comes to mind as a good choice... think back ~20 years to RUNSTOP + Restore) ;-)

AlanHK
26th September 2007, 09:08
I'm getting a bug:

I can create new bookmarks, and clear all of them, but not toggle with ^B to delete one individually.

Whenever I try to delete an existing bookmark, using ^B, it fails with the error message:

Traceback (most recent call last):
File "AvsP.pyo", line 5560, in OnMenuVideoBookmark
File "AvsP.pyo", line 8248, in AddFrameBookmark
TypeError: DeleteFrameBookmark() got an unexpected keyword argument 'refresh'


Separately:
I'd like to have UP/DOWN jump 2 seconds, instead of one.
I can clear the "Forward one second" key (Down) and use it for "Forward x units". But the original setting was only active when video has focus, now it always advances the video, even when I'm editing the text window, so I can't move line to line with UP/DOWN. Ideally, we need a way to toggle this focus restriction.
Some checkboxes in the shortcut key selection : Always active / Video focus / Text focus.

slo.sleuth
26th September 2007, 20:08
Can't get v.2.01 to run. Log reports the following error:

Traceback (most recent call last):
File "run.py", line 1, in <module>
import os, sys
ImportError: No module named os

I'm not familiar with python, but I've installed it so I can make any change necessary to get up an running. Any suggestions?

foxyshadis
26th September 2007, 20:20
You need to install wxPython as well, if you run it from source. You can also set your system up to use the wx libraries included in avsp, but it's probably simpler just to install it all.

slo.sleuth
26th September 2007, 21:13
You need to install wxPython as well, if you run it from source. You can also set your system up to use the wx libraries included in avsp, but it's probably simpler just to install it all.
Thanks for the quick reply, foxyshadis.

Maybe I'm still not fulling understanding, but I downloaded wxPython 2.8 (python 2.5) and installed it from the unicode binary. I made it the new install the default wxPython library, but I'm still receiving the same AvsP error after reboot.

check
27th September 2007, 05:11
slo, are you trying to run the executable, or directly run the python source? Just open the .exe

slo.sleuth
27th September 2007, 06:01
slo, are you trying to run the executable, or directly run the python source? Just open the .exe

I got the error (see my first post) when I ran the .exe. If I run the compiled python file Avsp.pyc (now that I have python installed) I can get AvsP to start. But the .exe still fails with the same error.

slo.sleuth
27th September 2007, 17:34
Can't get v.2.01 to run. Log reports the following error:

Traceback (most recent call last):
File "run.py", line 1, in <module>
import os, sys
ImportError: No module named os


Problem resolved. I was using a new archive program called jZip. It is based on 7-zip, so I was checking it out. By default, it shows archives in a flat view (all files shown absent folder structure), but unbeknown to me, it extracts the files flat while in that view too and without warning! :eek:

So, probably needless to say, I didn't provide AvsP the expect file structure, so it couldn't find the necessary modules. My bad. Serves me right to switch from something that I know works (7-zip) for something I don't know much about (jZip). This isn't a slam on jZip, just a lesson learned.
:stupid: (arrow points to me!)

Thanks to foxyshadis and check for the offered help.

Underground78
27th September 2007, 18:57
Hello,

I have a little suggestion : give the possibility for the user to select and open several avs files at the same time with "File" --> "Open" ...

Thanks

PS : I know my English is not very good and I hope you will forgive me for that ...

krisq
27th September 2007, 23:22
Just a thought :)
How about letting to insert relative path in 'extension templates'? With '****' for example.

foxyshadis
28th September 2007, 08:10
It'd probably be simpler to just have a macro to replace the paths other computers use with its own. I'd think it was a good idea, but you're almost guaranteed to run into current working folder issues. Usually it's the script folder, or the folder of the program host, which already mucks things up enough, but sometimes it'll get changed to some crazy random folder and nothing will load. More than a few threads have been tracked down to that.

krisq
28th September 2007, 11:07
English is not my native so maybe I explain what I had in mind.

Instead of full path (***)

avisource ("c:\folder1\folder2\movie.avi")
I would like to have possibility to insert just a filename (****, or something)

avisource ("movie.avi")

I use drag'n'drop a lot and move my project files very often so this seems more natural for me.

foxyshadis
28th September 2007, 17:19
Ah, I found a way to reproduce the hanging:
copy this line in:
p2=ImageSource("D:\grafix\work\22269025xa2.png",end=0).converttoyuy2(matrix="PC.601").ConvertToRGB24(matrix="pc.709")
start typing the bold part:
p2=ImageSource("D:\grafix\work\22269025xa2.png",end=0).colormatrix(mode="converttoyuy2(matrix="PC.601").ConvertToRGB24(matrix="pc.709")
it should hang as soon as you type the open quote. It might have to do with my settings, with frequent calltips and wrap text on.

I can try hooking it into the debugger, though I'm still not that familiar with python debugging.

qwerpoi
30th September 2007, 08:27
Sorry for the lack of replies, I've been unbelievably busy recently. Hopefully my schedule will even out so I can get some decent development time in...

If I have hidden display of sliders, then press F5 to refresh the display (because when I change freezeframe parameters, it does not display correctly unless I do) the sliders come back.
When I hide sliders, I want them to stay hidden until I unhide them.
You're right, this shouldn't happen, I'll try and get it fixed.

@qwerpoi

Update German language file AvsP 2.0.1
http://technik.movie2digital.de/thread.php?postid=438200#post438200

My last AvsP translation!
Somebody may carry on...

THX
Your last translation, seriously? Well, if that's true, hopefully there will be another person to take over the German translation - in any case, your timely updates will certainly be missed!

The "Slider Panel" display problem is fixed but now it crashes each time I try to use "Insert File Name"

#AVISource("e:\1.vdr.avi")
ImageSource("Alaska.jpg")

2.0 worked fine

Richard.
Hmm, seems strange, I'll take a look. Thanks for letting me know.

qwerpoi,
can you consider to decrease AvSp download size by removing standard components (putting them to separate archive)?

python25.dll, lib/wxwsm26uh.dll, etc

It is not important for rare updated programs, but your child is not rarely updated :)
Interestingly enough, most of the time all I really need to update is the library.zip file located in the \lib directory. I'll consider doing future updates in this sort of fashion, I'm just worried that it will be too confusing for everybody.

@qwerpoi

Here is the Spanish translation for v2.0.1

Taking a look at the result I show in the dialog boxes: “Edit extension-based templates”, “Edit shortcuts” and “Program settings” that some text still in English although Spanish words are in the translation.py file (examples: "Program Settings" and "* Requires program restart for full effect").This doesn't hapends in the earlier version.
Thanks for the translation update, I'll check out those translation issues (I think I know the cause).

The update translation for v2.0.1.
Thanks
Thanks for the translation update!

It appears that AvsP tries to parse lines that have been commented-out, and crashes if the commented-out line is invalid. In particular, I've crashed it badly by doing something like...

#Trim(14923,

... then cursoring away from the line for a moment, or otherwise doing something that induces AvsP to reparse the script and re-render the current video preview. It seems as though the big thing that kills it is having a commented-out line with otherwise-valid command and unclosed parentheses (possibly with incomplete or blatantly invalid values).

The same endless-loop behavior obviously occurs if the line ISN'T commented out while the rendering window is open & something triggers a refresh. If it's not too hard, a nice future enhancement might be adding a way to forcibly kill the preview, close the window, and return to editing mode. If you can figure out where the infinite loop is occurring, maybe you could add a boolean value somewhere that gets set to 'true' whenever the preview window gets shown, and gets checked periodically while parsing/rendering the preview so that if it's found to be false, all parsing & preview-rendering ceases, the preview window gets closed, and the program returns to text-editor mode. The actual value change could be triggered by a keypress (left-ctrl + backspace comes to mind as a good choice... think back ~20 years to RUNSTOP + Restore) ;-)
Hmm, thanks for the detailed report, I'll get on it asap.

I can create new bookmarks, and clear all of them, but not toggle with ^B to delete one individually.

Hmm, I'll try and get that fixed straightaway.


Separately:
I'd like to have UP/DOWN jump 2 seconds, instead of one.
I can clear the "Forward one second" key (Down) and use it for "Forward x units". But the original setting was only active when video has focus, now it always advances the video, even when I'm editing the text window, so I can't move line to line with UP/DOWN. Ideally, we need a way to toggle this focus restriction.
Some checkboxes in the shortcut key selection : Always active / Video focus / Text focus.
Those are some good suggestions, I'll see what I can do.

Problem resolved. I was using a new archive program called jZip. It is based on 7-zip, so I was checking it out. By default, it shows archives in a flat view (all files shown absent folder structure), but unbeknown to me, it extracts the files flat while in that view too and without warning! :eek:
Whew, thanks for patiently working out the issue! I'll definitely add this bit of info to my faq (which currently doesn't exist, I'm really behind...:()

Hello,

I have a little suggestion : give the possibility for the user to select and open several avs files at the same time with "File" --> "Open" ...

Thanks

PS : I know my English is not very good and I hope you will forgive me for that ...
Okay, sounds like a good idea, I'll see what I can do.

Just a thought :)
How about letting to insert relative path in 'extension templates'? With '****' for example.
Sounds reasonable, I'll see what I can do.

Ah, I found a way to reproduce the hanging:
copy this line in:
p2=ImageSource("D:\grafix\work\22269025xa2.png",end=0).converttoyuy2(matrix="PC.601").ConvertToRGB24(matrix="pc.709")
start typing the bold part:
p2=ImageSource("D:\grafix\work\22269025xa2.png",end=0).colormatrix(mode="converttoyuy2(matrix="PC.601").ConvertToRGB24(matrix="pc.709")
it should hang as soon as you type the open quote. It might have to do with my settings, with frequent calltips and wrap text on.

I can try hooking it into the debugger, though I'm still not that familiar with python debugging.
Thanks for the detailed report with settings, I'll try and see what's going on.

FlimsyFeet
3rd October 2007, 13:38
This is a fantastic program, I find it very useful. Thanks to qwerpoi!

There are a couple of things I would like to ask.

Firstly, when I save a script from AvsP then open it with Windows Notepad, I don't get any linebreaks, just little squares where linebreaks should be. Is this a bug with Notepad? (I think I've had it happen before with other text files)

Second, when you have multiple tabs open, and each video has the same number of frames, navigating the video preview in one tab also moves to the same frame in the other tab. This is a great feature, but is there any way to have the same behaviour when videos are different lengths? (I think older versions may have done it like this?)

KenJ
4th October 2007, 05:29
I can't get Autocompletion to work. According to the Documentation (which appears to still show the previous release):
If a preset exists for a filter, then whenever the autocomplete mechanism is activated for that filter, instead of entering the filtername and an open parentheses into the text, the preset text is entered instead.
This does not work for me. What am I doing wrong?

shortkud
7th October 2007, 09:25
This is a great program thank you so much. I can finally get rid of using GK to figure out my crop :).

abbienormal
7th October 2007, 20:06
Can't tell you how good this program is. I'd Never heard of AVSP until a couple of months ago but now I couldn't live without it.
Can I make one or two suggestions:

1) When focus is on video preview mouse wheel advances back and forward through time line by user specified amount(1 frame/1 sec etc).
2) Extra button next to the video preview toggle button to refresh the preview.
3) Option to place the preview window side by side with the text editor(for widescreen monitor users). I know I can do this by having the preview floating separately but i like to keep it all in one window.

Hope you don't feel too inundated with users suggesting features.
It's what happens when you make such a useful program.:)

rfmmars
8th October 2007, 02:52
A feature that I would like to have is when I click on a slider, I can use the arrow keys to make a fine adjustments.

Richard

KenJ
8th October 2007, 02:58
Well, I had to answer my own question!

The documentation for Autocompletion is somewhat misleading. By pressing the Enter or Tab key, the filter name is automatically entered into the text (along with an open parentheses - you can change this behavior in the "Options -> Program settings..." dialog, in the "Text 1" tab).
I swear, every time until today, when I went use Autocompletion I could use Enter or Tab and I got the left-paren ONLY. I didn't change the options - honest!

Today, using Tab gets the left-paren just as before but using Enter gets the preset text I was looking for. Finally! :)

qwerpoi
8th October 2007, 06:55
This is a fantastic program, I find it very useful. Thanks to qwerpoi!

There are a couple of things I would like to ask.

Firstly, when I save a script from AvsP then open it with Windows Notepad, I don't get any linebreaks, just little squares where linebreaks should be. Is this a bug with Notepad? (I think I've had it happen before with other text files)

Second, when you have multiple tabs open, and each video has the same number of frames, navigating the video preview in one tab also moves to the same frame in the other tab. This is a great feature, but is there any way to have the same behaviour when videos are different lengths? (I think older versions may have done it like this?)
Glad you like the program! I'll check out the notepad issue, for the second issue with the frames, go to the "Options -> Program settings..." dialog in the "Video 2" tab, and uncheck the box that says "Enable frames stored per tab".

This is a great program thank you so much. I can finally get rid of using GK to figure out my crop :).
I know what you mean, it always bothered me a little to have gk installed just for the crop and resizing, since I didn't need it for anything else. Let me know if you come across any accuracy issues or other problems.

1) When focus is on video preview mouse wheel advances back and forward through time line by user specified amount(1 frame/1 sec etc).
2) Extra button next to the video preview toggle button to refresh the preview.
3) Option to place the preview window side by side with the text editor(for widescreen monitor users). I know I can do this by having the preview floating separately but i like to keep it all in one window.
Those are some good suggestions, I'll try to get the 1st one in, I'll think about the second one, and although I'd like to do the third, that would be a huge amount of work, so don't expect that anytime soon :).

A feature that I would like to have is when I click on a slider, I can use the arrow keys to make a fine adjustments.

Richard
You can do this if you click the mouse and don't release (although I admit, it's a bit of hand juggling).

The documentation for Autocompletion is somewhat misleading.
I swear, every time until today, when I went use Autocompletion I could use Enter or Tab and I got the left-paren ONLY. I didn't change the options - honest!

Today, using Tab gets the left-paren just as before but using Enter gets the preset text I was looking for. Finally! :)
I'm not sure what your original issue was, but thanks for being patient! Be sure to report back if the problem occurs again.

Aaron76
10th October 2007, 05:08
First of all, great program. It has made writing scripts much easier.


Sometimes when I insert parenthesis after a function or add a function within a function using parenthesis, the program completely freezes and I need to close it and reopen my script again. I had to comment out the lines to work on them and then uncomment them when I was done so the program wouldn't lock.

IntroVideo = ImageSource(IntroScreenshot, end=IntroClipFrames - 1, fps=Framerate(Video)).ConvertToYV12().Spline64Resize(VideoWidthPixels, VideoHeightPixels)

danielkun
19th October 2007, 22:14
Thanks a lot for this tool qwerpoi, I find it very useful.

I was playing a bit with it and I came with these function definitions, feel free to correct those.

MvBob :
(clip Input,
int "BlkSize"=8,
int "Pel"=2,
int "CorrectTh"=8,
int "Threshold"=6,
int "Type"=3 (0 to 4),
int "Length"=1 (0 to 3)
)

MCBob :
(
clip clp,
float "EdiPre"=1.0 (0.0 to 1.0),
int "EdiPost"=1 (0 to 2),
int "blocksize"=16,
int "MEdepth"=2,
float "sharpness",
int "mtnmode"=0 (0 to 2),
float "mtnth1"=0.2,
float "mtnth2"=0.4,
float "errth1"=0.4,
float "errth2"=0.6,
float "MEspatNR"=0.0,
float "MEtempNR"=0.0
)

I found it particularly useful that when I change a parameter, the preview frame updates, that's golden! Try changing mcbob's edipost between 1 and 2, and you'll see how the reduced aliasing works ;)

A suggestion:
When I open an avs file that has a plugin function already used, and a few (but not all) parameters are specified, then only those already writen parameter slider appear. If I want all the sliders and textboxes to appear, I have to rewrite the function (using autocomplete ctrl+space) and then all the parameters with the default values appear. It's a small annoyance, but it'd be great if you can see the textboxes and sliders even for parameters that aren't explicitly written.

Also if the function is used without any parameters (all defaults) then the function doesnt appear at all at the controls pane.

Thanks again! :)

qwerpoi
28th October 2007, 03:04
New version v2.0.2, download from the AvsP download page (http://avisynth.org/qwerpoi/Download.html) or the mirror (http://www.savefile.com/files/1153115). The changelog's not very long but this version's long overdue, since it fixes a couple of major bugs from 2.0.1. Here's the changelog:
* added numerous entries to function database (contributions by Harukalover, danielkun)

* added ability to open multiple scripts in Open dialog (suggested by Underground78)

* new syntax in extension templates for relative paths (suggested by krisq)

* changed database editing for plugins to reduce redundancy with short and long names

+ fixed program hanging on text highlight (thanks miamicanes, Harukalover, foxyshadis)

+ fixed issue with translation messages (thanks zemog)

+ fixed crash when deleting existing bookmark (thanks AlanHK)

+ manually hidden sliders now stay hidden on video refresh (thanks AlanHK)

+ fixed minor bug with autocompletion and underscore character
The most important change here is the bugfix for the hanging issue, which made v2.0.1 practically impossible to use. Thanks to everyone who gave detailed reports to help me fix it. Other important bugfixes - deleting video frame bookmarks no longer crash, translation messages are working properly now.

The other important change here is the significant update to the filter database, thanks to those who contributed. Particularly Harukalover, who submitted a huge number of plugin definitions - I would say now that the majority of currently popular plugins are covered in this version.

One important note for people who use the "Options -> Avisynth function definition" dialog to customize the database - I changed the database for 3rd party plugins to only use the long version of function names, ie dllname_function. The short function names are automatically generated for each script, which means you need only define customizations for the long function name. The downside is that in this version you may lose some customizations. Although I put in some code to automatically detect and update short name customizations into the long name, it would be prudent to export your customizations before updating to v2.0.2 (use the "Export customizations" button at the bottom of the "Avisynth function definition" dialog), that way you can make sure you didn't lose anything. Feel free to report back if there are any issues.

Anyway, as you may have noticed, I have had a lot less time to work on AvsP recently. I am aware that there are quite a few feature requests I haven't gotten around to yet. If you think that there is some really important feature that you've already requested that I continually ignore :devil:, feel free to let me know again, and I'll try and move it up my priority list. Any new suggestions are of course welcome as well.


A suggestion:
When I open an avs file that has a plugin function already used, and a few (but not all) parameters are specified, then only those already writen parameter slider appear. If I want all the sliders and textboxes to appear, I have to rewrite the function (using autocomplete ctrl+space) and then all the parameters with the default values appear. It's a small annoyance, but it'd be great if you can see the textboxes and sliders even for parameters that aren't explicitly written.

Also if the function is used without any parameters (all defaults) then the function doesnt appear at all at the controls pane.

Thanks again! :)
You're right, it's an issue that's come across my mind. Unfortunately, it would be pretty difficult to program - if the arguments aren't specified in the script, then the program would have to guess where to insert the argument values, which could lead to conflicts, since Avisynth some arguments are order dependent while others are not. If I think of a good way to do this, I'll consider it, but for now, I think the way it currently works is a good compromise, since it's relatively easy to understand and control.

Harukalover
28th October 2007, 06:08
Minor issue in the last few releases. AvsP's Seekbar under the Video doesn't count correctly. If you have a video with 200 frames. The Seekbar counts 0 to 200. When it really is only 0 to 199. So you can never go to that last frame (frame number 200) because it doesn't exist.

Anyway, thanks for the latest release. And I'll look into writing up more function definitions soon, if you want more that is.

/me thinks a bunch of script functions should be added (currently it's a rather dry list)

krisq
28th October 2007, 15:54
I can't open 'Avisynth function definition' dialog at all.
Avsp throws me this error:
Traceback (most recent call last):
File "AvsP.pyo", line 5950, in OnMenuOptionsFilters
File "AvsP.pyo", line 8596, in ShowFunctionDefinitionDialog
File "AvsP.pyo", line 1950, in __init__
File "AvsP.pyo", line 2002, in CreateWindowElements
KeyError: u'textsub'

qwerpoi
28th October 2007, 17:39
Minor issue in the last few releases. AvsP's Seekbar under the Video doesn't count correctly. If you have a video with 200 frames. The Seekbar counts 0 to 200. When it really is only 0 to 199. So you can never go to that last frame (frame number 200) because it doesn't exist.
The notation is a bit sloppy on the status bar, it says something like Frame 0/200 but it actually only goes from 0 to 199 as it's supposed to (you can verify this by dragging the slider to the last position).

Actually, it's kind of a strange issue, since each frame is discrete but actually represents a continuous interval of time, so frame 0 actually represents something like [0, 1), frame 1 represents [1, 2), and in this case the last frame represents [199, 200). VirtualDub handles this by allowing the slider to go all the way to frame 200, but showing no video at frame 200 itself. There are pluses and minuses to displaying things this way, AvsP isn't perfect either. For now I'll leave things be but if you or any other video guru wishes to argue for a more precise representation, I'll be willing to listen.


Anyway, thanks for the latest release. And I'll look into writing up more function definitions soon, if you want more that is.

/me thinks a bunch of script functions should be added (currently it's a rather dry list)
I'd certainly appreciate any additional function definitions, and I agree, the script functions are really thin. I'm not very familiar with the recent popular script functions, if I have time I'll try and look into it, but any contributions on that end would be most helpful as well.

I can't open 'Avisynth function definition' dialog at all.
Avsp throws me this error:
Traceback (most recent call last):
File "AvsP.pyo", line 5950, in OnMenuOptionsFilters
File "AvsP.pyo", line 8596, in ShowFunctionDefinitionDialog
File "AvsP.pyo", line 1950, in __init__
File "AvsP.pyo", line 2002, in CreateWindowElements
KeyError: u'textsub'

I tried briefly to recreate this error, but I didn't get it. First, try closing AvsP and opening the function dialog again. If the error still occurs, could you upload or send me your options.dat so I can try and recreate it on my machine?

krisq
28th October 2007, 18:33
I tried briefly to recreate this error, but I didn't get it. First, try closing AvsP and opening the function dialog again. If the error still occurs, could you upload or send me your options.dat so I can try and recreate it on my machine?

Restart didn't help.
I've uploaded my 'options.dat' for inspection.
http://sharedzilla.com/en/get?id=102644

Harukalover
29th October 2007, 00:50
The notation is a bit sloppy on the status bar, it says something like Frame 0/200 but it actually only goes from 0 to 199 as it's supposed to (you can verify this by dragging the slider to the last position).

Actually, it's kind of a strange issue, since each frame is discrete but actually represents a continuous interval of time, so frame 0 actually represents something like [0, 1), frame 1 represents [1, 2), and in this case the last frame represents [199, 200). VirtualDub handles this by allowing the slider to go all the way to frame 200, but showing no video at frame 200 itself. There are pluses and minuses to displaying things this way, AvsP isn't perfect either. For now I'll leave things be but if you or any other video guru wishes to argue for a more precise representation, I'll be willing to listen.
Ah okay. Now that I understand the reasoning behind it, it makes sense to handle it that way.

Anyway, there seems to be some issues when working with large avs scripts. They consist of delays in text typing and failing to be able to preview the video. Either I get an error or it just hangs and never opens the video preview.

Here's the error I see: Error (http://i78.photobucket.com/albums/j81/SuzumiyaHarukalover/AvsP_Error.png)

The script in question is around 1700 lines long. And I can get it to open in Virtualdub within like 20 seconds of loading. If I remove a good portion of the script it can also then load fine in AvsP. If you don't happen to have any scripts on hand that can reproduce this just let me know, and I'll find some place where I can link the script for viewing. (kind of too huge to post)

Maccara
29th October 2007, 01:24
First of all, great program! Makes my life with Avisynth much easier.

Then the questions:

How to define functions, where presets have () in them?

For example:
string "profilepath"="F:\Program Files (x86)\Some App\Settings\Default.txt" ("*.txt"),

The (x86) screws up the parser. I tried to find out, if there's an escape sequence I could use, but either I'm blind (entirely possible) or there isn't one at the moment.

(no biggie, I can have the stuff in other folders as well, just interested if this is possible at all)

qwerpoi
29th October 2007, 02:40
Okay, here's a bugfix file to fix the two bugs noted by krisq and Maccara:

http://avisynth.org/qwerpoi/AvsP_v2.0.2_bugfix3.zip

To apply the bugfix, simply download the zip file (133 kb) and unzip the file inside named AvsP.pyo into the same directory as your AvsP.exe. The bugfix fixes the issue that krisq pointed out, it turns out there was a more serious issue underneath. It doesn't affect you if you don't customize the filter database using the "Options -> Avisynth function definition" dialog box, but if you do, you should apply the bugfix right away. The bugfix also fixes the issue that Maccara just pointed out, you can now use parentheses inside strings when defining function definitions.

Again, just to be clear, in AvsP v2.0.2 the function database only accepts long names for plugin functions. In previous versions, a dll function would show up twice in the "Avisynth function definition" dialog, for example EEDI2 and EEDI2_EEDI2. Both names are valid in Avisynth - the long notation, dllname_function, was introduced to avoid naming conflicts. In AvsP v2.0.2, only EEDI2_EEDI2 will show up in the dialog, meaning you only have to define your customizations once, the scripts will automatically reflect the customizations for both long and short names. Because I made this change, those who made customizations with the short plugin names will lose those customizations - for that I apologize. There was a more serious bug related to this issue that krisq pointed out that I fixed, so again, if you have made or plan to make database customizations, be sure to apply this bugfix first.

Edit: 2nd bugfix on 10/30/07, fixes a bug with deleting presets.
Edit: 3rd bugfix on 10/30/07, fixes the bug with short and long plugin names and presets.

Anyway, there seems to be some issues when working with large avs scripts. They consist of delays in text typing and failing to be able to preview the video. Either I get an error or it just hangs and never opens the video preview.

Here's the error I see: Error (http://i78.photobucket.com/albums/j81/SuzumiyaHarukalover/AvsP_Error.png)

That error seems to be related to a limitation in wxPython, the framework I used to make AvsP. I'll try and take a look into it, you can send me your script as an email attachment, send it to qwerpoi.avsp AT gmail.com.

Maccara
29th October 2007, 06:37
Okay, here's a bugfix file to fix the two bugs noted by krisq and Maccara:


Thank you very much! Parentheses now seem to work fine.

Terka
29th October 2007, 10:19
when loading v2.0.2, got this message, in version 1.0.4 cant copy/move code into clipboard.
could someone help?
[Mon Oct 29 10:18:15 2007]
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character R
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character G
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character B
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character L
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character U
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character T
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character R
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character G
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character B
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character L
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character U
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character T
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 11376, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 11366, in OnInit
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 3373, in __init__
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 3931, in defineFilterInfo
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 4218, in getFilterInfoFromAvisynth
File "avisynth.pyo", line 95, in Release
WindowsError: exception: access violation reading 0x029D58C0

krisq
29th October 2007, 10:46
Okay, here's a bugfix file to fix the two bugs noted by krisq and Maccara:


Thanks man. Looks like everything is A-OK. :D

foxyshadis
29th October 2007, 11:15
Some plugins (GetSystemEnv is another one, but it doesn't crash) just don't seem to mix well with the way avsp looks up their arguments. Probably compiled against older headers.

Henrikx
29th October 2007, 14:16
Update----:cool::rolleyes:

krisq
29th October 2007, 21:54
I don't get it. I can't turn off 'auto-generate' for any filter. The checkbox unchecks, but after restart it's back on. Am I missing something?

qwerpoi
30th October 2007, 00:34
I don't get it. I can't turn off 'auto-generate' for any filter. The checkbox unchecks, but after restart it's back on. Am I missing something?
Urgh, you're right, I'll try and get a bugfix up by tomorrow. Sorry about that.

when loading v2.0.2, got this message, in version 1.0.4 cant copy/move code into clipboard.
could someone help?
[Mon Oct 29 10:18:15 2007]
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character R
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character G
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character B
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character L
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character U
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character T
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character R
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character G
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character B
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character L
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character U
Error parsing LoadPluginEx2_LoadPlugin plugin parameters: unknown character T
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 11376, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 11366, in OnInit
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 3373, in __init__
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 3931, in defineFilterInfo
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 4218, in getFilterInfoFromAvisynth
File "avisynth.pyo", line 95, in Release
WindowsError: exception: access violation reading 0x029D58C0
I'll try and do something about this as well, no guarantees though, since it might be difficult to approach.

Terka
30th October 2007, 08:53
thank you!

McCauley
30th October 2007, 13:17
Thanks for this useful tool, i can't imagine using avisynth without it!
May i make a suggestion?

When zooming in, the whole filterchain is processed again with a pointresize at the end (that's correct, isn't it?). That is very annoying when using heavy filterchains that take minutes to render.
Would it be possible to just use the last output with pointresize, so the zoom call in AVSP would take only a few seconds?
Don't know how this could work, maybe AVSP needs an own cache for the frames to pointresize them, so the whole filterchain can be avoided?!

Another useful function would be if AVSP would add LoadPlugin() instead of Directshowsource() when dropping .dll from the plugin directory files in it's window.

Regards
McCauley

krisq
30th October 2007, 14:25
Another useful function would be if AVSP would add LoadPlugin() instead of Directshowsource() when dropping .dll from the plugin directory files in it's window.


You can already do that. Check 'Options/Extension templates'... ;)

qwerpoi
30th October 2007, 17:53
Still working on fixing some bugs, but for now here's a new bugfix to fix the issue with presets krisq brought up:

http://avisynth.org/qwerpoi/AvsP_v2.0.2_bugfix3.zip

To apply the bugfix, simply copy the file AvsP.pyo from the zip file into your directory containing AvsP.exe (replace any older bugfix files). Presets should now work properly. Without this bugfix AvsP v2.0.2 may have deleted some of your presets, this is all related to me trying to change the database structure to be more consistent :(. Again, I apologize for any frustration this may have caused.

Would it be possible to just use the last output with pointresize, so the zoom call in AVSP would take only a few seconds?
Don't know how this could work, maybe AVSP needs an own cache for the frames to pointresize them, so the whole filterchain can be avoided?!
This is a good point, it should be quite doable (only for the doubling/halving zooms, of course). I'll see what I can do.

krisq
30th October 2007, 19:08
Checkbox is fine after bugfix, thanks :).
But still, I'm afraid there is something I don't fully understand.
Short functions names are based on long names, right?
So DGIndex_MPEG2Source equals MPEG2Source, am I correct?
Than why after I turn off auto-generate and enter my own definition for DGIndex_MPEG2Source, MPEG2Source still have default generated values?

qwerpoi
31st October 2007, 00:12
Checkbox is fine after bugfix, thanks :).
But still, I'm afraid there is something I don't fully understand.
Short functions names are based on long names, right?
So DGIndex_MPEG2Source equals MPEG2Source, am I correct?
Than why after I turn off auto-generate and enter my own definition for DGIndex_MPEG2Source, MPEG2Source still have default generated values?
F&#%# :mad:, it's frustrating to not have the time to provide appropriate quality assurance with these releases. Here's (yet another) bugfix, this should fix the issue pointed out above.

http://avisynth.org/qwerpoi/AvsP_v2.0.2_bugfix3.zip

To apply the bugfix, simply copy the file AvsP.pyo from the zip file into your directory containing AvsP.exe (replace any older bugfix files). Now presets for plugins should work properly as well. Again, my apologies for the inconvenience, I really appreciate the helpful feedback, so feel free to let me know if there are still issues on this matter.

rfmmars
31st October 2007, 00:58
Again, my apologies for the inconvenience, I really appreciate the helpful feedback, so feel free to let me know if there are still issues on this matter.

We are just happy your here!

Richard
photorecall.net

krisq
31st October 2007, 09:07
Again, my apologies for the inconvenience, I really appreciate the helpful feedback, so feel free to let me know if there are still issues on this matter.

It's nothing to be sorry about. It is I who should be thanking you for one of the best tools I've ever come across.
So :thanks:!

[EDIT]

I' ve just found a little annoyance (nothing crucial). I work with undocked preview window.
I like to have my script window big for better overview so preview window is often in the background with just a part of video visible. Here is the thing: when I drag the seek bar in script window, the preview window jumps to front, gets focus and hides my script under it.
I don't reckon earlier versions were doing that.

[EDIT2] :)

Another one :)
For some reason Autocomplete window for some letters is much smaller. e.g. for 'D' it's ok, whole 'DGIndex_MPEG2Source' is visible, but for 'W' it shows 'WAVS...' (WAVSource, which is shorter than 'DGIndex_MPEG2Source')

qwerpoi
2nd November 2007, 03:09
We are just happy your here!

Richard
photorecall.net
It's nothing to be sorry about. It is I who should be thanking you for one of the best tools I've ever come across.
So :thanks:!
I've always been quick to criticize buggy software, so it's a bit frustrating to be the one releasing it :p. Thanks for sticking with it and being more forgiving than I am, I appreciate it.


I' ve just found a little annoyance (nothing crucial). I work with undocked preview window.
I like to have my script window big for better overview so preview window is often in the background with just a part of video visible. Here is the thing: when I drag the seek bar in script window, the preview window jumps to front, gets focus and hides my script under it.
I don't reckon earlier versions were doing that.

I'll take a look into the issue, thanks for pointing it out.


For some reason Autocomplete window for some letters is much smaller. e.g. for 'D' it's ok, whole 'DGIndex_MPEG2Source' is visible, but for 'W' it shows 'WAVS...' (WAVSource, which is shorter than 'DGIndex_MPEG2Source')
I've noticed this myself, it's pretty annoying. I didn't write the code to display the autocomplete window, but I'll see if I can come up with some kind of workaround.

Spuds
8th November 2007, 20:10
Thanks for the recent set of bug fixes, particularly 202, that allowed me to use my favorite editor again!

I get the following error pretty often when using the program and the video preview.

Traceback (most recent call last):
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 5826, in OnMenuVideoRefresh
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 8947, in ShowVideoFrame
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 9489, in PaintAVIFrame
File "pyavs.pyo", line 322, in DrawFrame
File "pyavs.pyo", line 301, in _GetFrame
File "avisynth.pyo", line 277, in GetFrame
WindowsError: exception code 0xe06d7363

prior to v202 the error was similar:
Traceback (most recent call last):
File "AvsP.pyo", line 7081, in OnPaintVideoWindow
File "AvsP.pyo", line 9414, in PaintAVIFrame
File "pyavs.pyo", line 322, in DrawFrame
File "pyavs.pyo", line 301, in _GetFrame
File "avisynth.pyo", line 277, in GetFrame
WindowsError: exception code 0xe06d7363

I think I tend to get the error more when using mvtool scripts where several frames are in play, not sure I can say thats the only type of script where this error gets thrown but it maybe a clue that helps (or maybe not :) )

Alain2
9th November 2007, 02:29
Nice release as usual ^^ Fr translation updated (that was an easy one ^^)

In AvsP v2.0.2, only EEDI2_EEDI2 will show up in the dialog, meaning you only have to define your customizations once, the scripts will automatically reflect the customizations for both long and short names. Because I made this change, those who made customizations with the short plugin names will lose those customizations - for that I apologize. There was a more serious bug related to this issue that krisq pointed out that I fixed, so again, if you have made or plan to make database customizations, be sure to apply this bugfix first.

Actually, when doing ctrl+shift+d to open the dialog on the short function name in a script, it now brings the user defined functions and treat the short name as a new function name; it should first look into the long names before creating a new one..

Concerning EEDI2 (and others) showing only once.. here (http://img46.imageshack.us/img46/5813/temptp0.jpg) is what I have.. Is it normal ?

Also personnaly I quite miss the possibility of defining manually for each function where to look for its help file ; for avsi for instance I used to point to the avsi file itself, it was a quick and easy way to open a custom avsi and modify it if required (and often for popular user scripts the description is part of the script, as a comment). Would it be possible to re-introduce a field for each function definition that if filled in would override the current automatic search behaviour ? This field does not need to be part of the import / export functions used to share the functions between users (as it is not generic but user specific, so no need to share it)

After auto-completion of a function name + parameters list, is there a shortcut to quickly jump to the undefined parameters indicated with a ? character ?

++

foxyshadis
9th November 2007, 10:11
I think I tend to get the error more when using mvtool scripts where several frames are in play, not sure I can say thats the only type of script where this error gets thrown but it maybe a clue that helps (or maybe not :) )

That usually just means you ran flat out of memory. Check the process's VM Size in task manager. If this goes near 2GB, or physical+swap memory if it's less than 2GB, it won't be able to allocate room for another frame and will either throw an error or just crash, depending on whether the filter checks for that. Most don't, mvtools included, but the core filters do.

If you have smallish frames (SD or HD) lowering SetMemoryMax might help alleviate the problem. If you work with hugefreakingnormous stuff or ton of mvtools/nnedi/etc, you just get used to running half the script at a time or cutting the image into pieces and processing separately, and closing avsp or vdub very regularly to reset it.

Spuds
9th November 2007, 15:48
That usually just means you ran flat out of memory. Check the process's VM Size in task manager.

Bingo ... thanks for the tips on setmemorymax, I had it set much to high.

SixdeeBee
9th November 2007, 21:50
I am running into a little problem with using > avs2avi < within AvsP.
While encoding it shows me the button > Stop < but when I hit the button I get an error message. To stop the encoding I have to leave AvsP but avs2avi stays in the RAM. Only with the TaskManager can avs2avi be stopped.

SixdeeBee

SixdeeBee
11th November 2007, 20:34
Ok, here is another question:

Got the following situation with the > slider < option in version 2.02:

Example:

AviSource("source.avi ...)

*
* some prefilters
*

# Declaration of a maximum number of used frames as parameters in a chain of plugins
maxframes=nnn

# First slider sets a start position inside a clip
start=[<"First frame",0,(maxframes-1),0>]

# Second slider sets an end position inside a clip
end=start+[<"Last frame",1,maxframes,50>]
*
# Plugins which need the same start and end frame number
Plugin#1(start, end, parameter list ...)
*
Plugin#2(start, end, parameter list ...)
*
*
*
Plugin#n(start, end, parameter list ...)
*

The problem is that I cannot substitute a numerical constant with a named variable (or constant) inside a slider. When I do so, I get an error:

> Invalid slider text: invalid number <


Writing a named variable (maxframe) to the > max. value < line in the window > Define user slider < gives me the error message > This field must contain a number <.

All this is logical but as a result I cannot use named variables/constants in a slider arrangement, only numericals are allowed.

My question is:

Did I overlook a hidden feature which allows me to use named variables/constants (like a,b,c or maxframes etc.) inside a slider-command block ?
If not, would it be a good idea to add it to the wish list for a future version ?

SixdeeBee

Alain2
11th November 2007, 21:50
Question:
After adding nnedi.dll to my plugins dir, it was available in avsp list of function (didn't check it was not there before thought), but one parameter was missing (dh) ; I thought it was supposed to build the parameters list automatically from the dll info.. ?

qwerpoi
12th November 2007, 02:02
I think I tend to get the error more when using mvtool scripts where several frames are in play, not sure I can say thats the only type of script where this error gets thrown but it maybe a clue that helps (or maybe not :) )
Thanks foxyshadis for finding the cause of the error, perhaps I'll try and catch this type of crash to report a more useful message.

Nice release as usual ^^ Fr translation updated (that was an easy one ^^)


Actually, when doing ctrl+shift+d to open the dialog on the short function name in a script, it now brings the user defined functions and treat the short name as a new function name; it should first look into the long names before creating a new one..

Thanks for the (short) translation update! You're right about the ctrl+shift+d shortcut, I'll try to get that fixed in the next version.

Concerning EEDI2 (and others) showing only once.. here (http://img46.imageshack.us/img46/5813/temptp0.jpg) is what I have.. Is it normal ?
I don't think that should happen if you're running v2.0.2 with the bugfix (http://forum.doom9.org/showthread.php?p=1059559#post1059559), let me know if that's what you're running and plugins are still showing up twice.

Also personnaly I quite miss the possibility of defining manually for each function where to look for its help file ; for avsi for instance I used to point to the avsi file itself, it was a quick and easy way to open a custom avsi and modify it if required (and often for popular user scripts the description is part of the script, as a comment). Would it be possible to re-introduce a field for each function definition that if filled in would override the current automatic search behaviour ? This field does not need to be part of the import / export functions used to share the functions between users (as it is not generic but user specific, so no need to share it)
The workaround for this is to create a shortcut in the plugins directory to whatever file you want to open when clicking on the calltip. Normally AvsP searches the plugins directory, the help corefilters directory, and the help externalfilters directory for help files. It looks for any files with the same name as the function with one of the following extensions - .htm, .html, .txt, and .lnk (a shortcut file). So in your case if you create a shortcut to the .avsi file in the plugins directory, the .avsi file will open when you click on the calltip. To me, this seems about the same amount of work as having help file information as part of the database, but with the advantage of keeping the database streamlined. Let me know if you still think there are disadvantages that I haven't forseen.

After auto-completion of a function name + parameters list, is there a shortcut to quickly jump to the undefined parameters indicated with a ? character ?
No, although it's an interesting suggestion, so I'll think about the best way to do that.

I am running into a little problem with using > avs2avi < within AvsP.
While encoding it shows me the button > Stop < but when I hit the button I get an error message. To stop the encoding I have to leave AvsP but avs2avi stays in the RAM. Only with the TaskManager can avs2avi be stopped.

SixdeeBee
I'll take a look into the issue - could you give me the exact error message you see when you hit stop?


Did I overlook a hidden feature which allows me to use named variables/constants (like a,b,c or maxframes etc.) inside a slider-command block ?
If not, would it be a good idea to add it to the wish list for a future version ?

SixdeeBee
Currently it's not possible, but it's a good suggestion, and it may show up in a future version. It definitely would take a lot of work to do it right, so I wouldn't hold your breath :p

Question:
After adding nnedi.dll to my plugins dir, it was available in avsp list of function (didn't check it was not there before thought), but one parameter was missing (dh) ; I thought it was supposed to build the parameters list automatically from the dll info.. ?
AvsP automatically builds the parameter list from the dll only if the function doesn't exist in the database, I believe nnedi was added in v2.0.2. I haven't double checked yet, the missing parameter is probably due to an update in nnedi, if that's the case I'll update the database by the next version.

Terranigma
12th November 2007, 02:24
AvsP automatically builds the parameter list from the dll only if the function doesn't exist in the database, I believe nnedi was added in v2.0.2. I haven't double checked yet, the missing parameter is probably due to an update in nnedi, if that's the case I'll update the database by the next version.
Alain2's right. It doesn't show anything for the dh parameter in nnedi as you can clearly see.
http://img222.imageshack.us/img222/8160/nnediandavspit8.png
And i'm pretty sure that i'm using the latest version (which tritical released publically).

SixdeeBee
12th November 2007, 14:52
I am running into a little problem with using > avs2avi < within AvsP.

Sorry that you had to ask for the error message, here it comes:


File "C:\Programme\AviSynth 2.5\AvsP\tools\avs2avi_gui.py", line 206, in OnButtonRunStop
ctypes.windll.user32.SendMessageA(self.jobInfo['pid'], WM_CLOSE, 0, 0)
NameError: global name 'ctypes' is not defined


:stupid:


SixdeeBee

SixdeeBee
12th November 2007, 18:28
@qwerpoi

so I wouldn't hold your breath

Ok, in order to not hold my breath too long on a low level I offer this simple solution : :)

1. Creation of the function:

function givevalue(int "val")
{ return(val)}


2. Example:

Put four 4:3 full-screen clips with 720 x 576 Pixels to one 16:9 - 1024 x 576 widescreen .

The slider > Bordercolor < controls the pillarbox-border-colors of all individual pictures simultaneously over the range from 0 to 16777215 colors.

Import("C:\programs\AviSynth 2.5\functions\givevalue.avs")
#
a=AviSource("source_1.avi",false,pixel_type="YUY2")
b=AviSource("source_2.avi",false,pixel_type="YUY2")
c=AviSource("source_3.avi",false,pixel_type="YUY2")
d=AviSource("source_4.avi",false,pixel_type="YUY2")
#
val=givevalue([<Bordercolor",0,16777215,50>])
#
a=a.AddBorders(152,0,152,0,val).ReduceBy2().Crop(2,2,-2,-2,align=true).AddBorders(2,2,2,2)
b=b.AddBorders(152,0,152,0,val).ReduceBy2().Crop(2,2,-2,-2,align=true).AddBorders(2,2,2,2)
c=c.AddBorders(152,0,152,0,val).ReduceBy2().Crop(2,2,-2,-2,align=true).AddBorders(2,2,2,2)
d=d.AddBorders(152,0,152,0,val).ReduceBy2().Crop(2,2,-2,-2,align=true).AddBorders(2,2,2,2)
#
StackVertical(StackHorizontal(a,b),StackHorizontal(c,d))

I understand that it would be a little bit tricky to put a more flexible slider routine in AvsP.
Possibly the simple trick can help to circumvent those problems.

SixdeeBee


Edit:
Reading this post again let me see that the solution described does not hit the nail to the top.
Please ignore it, it had been mixed up with another problem.

(There is a group oft pupils in the age of around 11 years making a stop-motion film in their arts lessons at school. Advising them, including their teacher, always makes fun ... but sometimes the actions get a little bit chaotic and informations get mixed up ... please excuse my confusing post )

SixdeeBee

Alain2
17th November 2007, 16:35
@qwerpoi
I did have put the bugfix pyo in avsp folder, so I guess it is activated (is there a way of checking ? If not, maybe next times you could make it modify the about dialog box to indicate it)

Using links to the file I want as help file is a satisfactory workaround, I'll try that.
[edit] I have a bug with that :
Traceback (most recent call last):
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 5593, in OnMenuEditFilterHelp
File "D:\Research\Python\AvsP\Translations\AvsP_v2.0.2\AvsP\AvsP.py", line 1131, in ShowFilterDocumentation
WindowsError: [Error 1155] Aucune application n'est associée au fichier spécifié pour cette opération: u'C:\\Program Files\\AviSynth 2.5\\plugins\\Docs\\Mpeg2Source_Lnk.lnk'
It says I don't have a software associated to .lnk ; but under explorer if I double click on the link it launch the the correct software.. (in my case DGDecodeManual.html in firefox)

However I have another problem now : Asking for help when the cursor is in the function parameters list is ok, but asking for help when the cursor is on the function name itself always open the same file from the help folders defined in the options (AVSShock.html in my case, or if I delete it it's masktools.html, etc) ; I guess it could be related to the bug ctrl+shift+d not finding the correct function on short function name and creating a new user function


[edit 2]
Somehow my options.dat became corrupted :(
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "AvsP.pyo", line 11358, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "AvsP.pyo", line 11348, in OnInit
File "AvsP.pyo", line 3368, in __init__
File "AvsP.pyo", line 3732, in getOptionsDict
TypeError: list objects are unhashable
And unfortunately, now this file contains all the settings, including the textstyles and shortcuts.. Would it be possible to keep these as separate files (and a separate one for custom filters definition as well) ? So that if one becomes corrupted we don't loose it all..

stickboy
26th November 2007, 01:25
Some plugins (GetSystemEnv is another one, but it doesn't crash) just don't seem to mix well with the way avsp looks up their arguments. Probably compiled against older headers.Hey, sorry I'm late to this thread. Is the above still a problem? Is there anything I need to change in my plug-ins? (They likely are compiled against an older version of avisynth.h since I haven't recompiled any of them in years; I don't even have MSVC6 installed anymore and haven't gotten around to setting them to build in VC7 or VC8. That said, I'm not sure why compiling against an older header should matter if things are binary compatible.)

Terka
26th November 2007, 11:09
tried versions 2.0 - 2.0.2 and the behaviour is the same
copying is available only 1 or 2 times. after that when i select something and press ctrl-c or via RMB i got the errror described above.

foxyshadis
26th November 2007, 14:04
Hey, sorry I'm late to this thread. Is the above still a problem? Is there anything I need to change in my plug-ins? (They likely are compiled against an older version of avisynth.h since I haven't recompiled any of them in years; I don't even have MSVC6 installed anymore and haven't gotten around to setting them to build in VC7 or VC8. That said, I'm not sure why compiling against an older header should matter if things are binary compatible.)

I have no idea what it was, all I can tell you is that I recompiled it and avsp stopped complaining. I can't really tell why, though, avsp has stopped complaining about the old one recently as well, might have been a parser issue.

Caroliano
8th December 2007, 00:26
Some small bugs in the sliders and such, with FF3dfilter + commented Deen, and in the sliders with ColorYUV, that can have positive or negative values, but avsp only show positive values by defaut, although it shows the negative values until where you determine to use.

Screenshot: http://img84.imageshack.us/my.php?image=avspbuguv0.png

I'm not sure that the fact that it don't show the global soothe setings, only the in-filter settings, is also a bug or is an desired behaviour. Due to problems of avisynth not load with soothe.avsi in the plugins folders, I copied it's content in the main script, and it seems to work.

Besides those realy minor anoyances, AVSp is great! Many thanks for your work.

EDIT: Besides the strange "standalone" sharpen in the screenshot, there is also an "sharpen" slider inside FFT3dfilter, as it should, that go from 0 to 1. This parameter also should acept negative values, and I think that it also acepts greater than 1 values (but I'm not sure about the last).

jethro
12th January 2008, 23:29
I have this problem with AvsP which suddenly won't start.

from the log:

[Sat Jan 12 22:39:56 2008]
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "AvsP.pyo", line 11358, in main
File "wx\_core.pyo", line 7700, in __init__
File "wx\_core.pyo", line 7352, in _BootstrapApp
File "AvsP.pyo", line 11348, in OnInit
File "AvsP.pyo", line 3369, in __init__
File "AvsP.pyo", line 3927, in defineFilterInfo
File "AvsP.pyo", line 4117, in getFilterInfoFromAvisynth
WindowsError: exception: access violation reading 0x00000000

I've tried deleting the entire AvsP folder and and downloading fresh AvsP 2.02 from the website but it still does not start. Weirdest thing is that it always worked great for me, and it worked normally just today but I can't remember any real changes I could have made in Windows to break it. :devil::confused:
I would appreciate help in this matter as I must admit I'm hooked on AvsP now...

check
13th January 2008, 02:00
looks like an out of memory error from avisynth. Try rebooting your computer, THEN a full delete/redownload.

foxyshadis
13th January 2008, 06:27
Have you tried emptying out your avisynth folder, as well? If one of them is interfering, that would fix it. Then you could narrow it down by adding them back until it breaks again.

jethro
13th January 2008, 12:25
Great, works now:).
Foxyshadis you were right and it seems Avisynth was causing this error. I re-installed 2.57 and AvsP is back (although Avisynth had worked in e.g VirtualDub then).
Plugins are "redeemed" as I moved them back to Avisynth plugins folder without consequence.

Uff. Time to get back to fiddling with scripts. Thanks for your help:)

Zarxrax
13th January 2008, 18:20
qwerpoi, I wonder if you could stop Avsp from forgetting whats on the clipboard when you close the program? That's really annoying, since I have a habit of just opening up a file to copy something, close it, then open up something else to paste it into. Is that something you think you could fix?

salehin
13th January 2008, 19:01
AvsP doesn't seem to support .grf (made with GraphEdit) to pass it through avisynth. I use it with h264.ts file (BBC HD). An example:SetMemoryMax(128)
clip1=DirectShowSource("K:\Temp\ffdshow.GRF",fps=25,audio=false).ConverttoYV12()

Here is the error msg (cf attachement). Hope to see .grf support in later AvsP :)

foxyshadis
13th January 2008, 20:51
And you're sure Virtualdub doesn't give the same error? Because I've used grf files in avsp just fine.

salehin
14th January 2008, 00:20
And you're sure Virtualdub doesn't give the same error? Because I've used grf files in avsp just fine.

Because I never used vd and grf together, i'll simply take it from an expert like you as a fact :D

It seems my ffdshow (, for some unknown reason,) was not connecting .. after reinstalling it, AvsP works fine with .grf. Sorry for that. Earlier I also made a .grf with cyberlink's h264 - it works perfectly with AvsP. That's what made me reinstalling ffdshow.

Fizick
19th January 2008, 20:26
I see RGB values reading from screen. It is useful!
Question (suggestion): can we have YUV values reading from screen, if script produces YUY2 or YV12?

Spuds
20th January 2008, 04:33
@Fizick

Look under program settings / video 1 / Customize video status bar...

You can add many color readouts including yuv.

bidmead
5th February 2008, 10:25
Feature suggestion:

Proposal: The Trimmer currently creates Trims. Optionally there should be a user setting that allows it to create Dissolves instead. (Dissolve(X,Y,0) is functionally equivalent to Trim(X) ++ Trim(Y))

Reasoning: Removal of ads to restore (usually old) movies is my prime use for AvsP. Straight cuts often don't work very well because of jumps in the audio, or an ugly video segue. Conversion to a dissolve is usually an excellent compromise.

Qwerpoi has very sportingly provided a macro that simplifies conversion from a Trim to a Dissolve:

entry = avsp.GetTextEntry('Select and copy the trim commands here:')
splitentry = entry.split('++')
if len(splitentry) == 2:
newString = 'Dissolve(%s, %s, 25)' % (splitentry[0], splitentry[1])
avsp.InsertText(newString, pos=None)

But I seem to be using this very often, and it occurs to me that the Trim editor could provide the Dissolve directly, with straight cuts being achieved when required simply by setting the frames value to zero.

What does the team think?

BTW, It's self-evident that AvsP now deserves its own forum, rather than just having to be crammed into one long thread.

--
Chris

doxville
6th February 2008, 19:22
@bidmead

Great idea. I rather use dissolve than the normal trims, exactly for the reasons you named.
My proposal would be to have an option in the trim editor box where you can choose between 'Apply as Trim' and 'Apply as Dissolve [__] frames'.
That would be fabulous!

check
10th February 2008, 15:07
Is there any way to force the video slider position to be global, even if the various videos are not all the same resolution/etc?

Harukalover
10th February 2008, 22:55
Is there any way to force the video slider position to be global, even if the various videos are not all the same resolution/etc?
Options --> Program Settings --> Video 2.

Uncheck Enable frames stored per tab.

Jawed
18th February 2008, 14:07
I use a separate video preview window in AvsP 2.0.2.

When I set the preview window zoom to "Fit inside window", and then open the preview window, then close the preview window the preview window re-opens (after a short pause).

This seems to occur only when I first close the preview window, after starting AvsP. So all further interactions (opening/closing) with the preview window are fine.

AvsP will only do this once per session, i.e. I have to exit AvsP and then restart it before I will encounter this bug again.

I don't use "Fit inside window" very much, so it's no big deal.

Jawed

introspect
7th March 2008, 22:41
Hello all, I think that I've found two bugs with avisynth.py. It doesn't seem like these functions are being called at the moment, but here are the two that I've found anyway.

Bug 1: A YUV type PVideoFrame will always return half of its height, even if GetHeight is called with PLANAR_Y.

Possible solution: In avisynth.py, replace Line 327 with
if self.p.contents.pitchUV!=0 and (plane in (PLANAR_U, PLANAR_V)):
or
if self.p.contents.pitchUV!=0 and (plane==PLANAR_U or plane==PLANAR_V):

Bug 2: A VideoInfo object always claims that its stream has zero bits per pixel

Solution: Line 198 contains the BitsPerPixel function. Replace the entire definition with:
def BitsPerPixel(self):
if self.IsRGB24():return 24
elif self.IsRGB32():return 32
elif self.IsYUY2():return 16
elif self.IsYV12():return 12
else :return 0

Edit:

Problem: BMPSize compiles just fine but blows up if it's called
Solution: Replace Line 207:
if IsPlanar(self):
with
if self.IsPlanar():

chrishallowell
12th March 2008, 02:56
I've just loaded the most recent version and when I try and run it I get this in the file: AvsP.exe.log

Traceback (most recent call last):
File "run.py", line 5, in <module>
File "AvsP.pyo", line 59, in <module>
File "pyavs.pyo", line 31, in <module>
File "avisynth.pyo", line 4, in <module>
File "ctypes\__init__.pyo", line 415, in __getattr__
File "ctypes\__init__.pyo", line 340, in __init__
WindowsError: [Error 126] The specified module could not be found

Any ideas?

Thanks,
Chris

foxyshadis
12th March 2008, 05:36
That means avsp can't find avisynth.dll for whatever reason. You should reinstall avisynth.

halsboss
16th March 2008, 03:00
Hi I've just started to look at this thread and it seems like a great tool ! Does anyone know if the latest download http://avisynth.org/qwerpoi/index.html includes the bugfixes etc as the dates don't see to coincide with http://forum.doom9.org/showthread.php?p=1059559#post1059559 ... is it still being updated ?

bidmead
16th March 2008, 08:44
@halsboss I don't think 2.0.2 does include that bugfix. But it's no big deal. Yup, AvSP has some residual bugs, but this doesn't take away from the fact that it's a great piece of software.

Apply the bugfix, if these bugs bother you. Post any new bugs that crop up in use up here on the forum. Qwerpoi's been very responsive in the past.

Enjoy. (It's amazing...)

--
Chris

Socio
16th March 2008, 21:27
I like this tool but have a suggestion;

Could you implement the ability to point to other encoders other than X264.exe for test encodes so we can get get a better idea of with the final encode will look like using the same encoder we plan to you for the final encode?

AlanHK
29th March 2008, 18:14
I was making some screencaps using "save image as" to use as logo masks.

Anyway, after some hairpulling when the logo filter failed, I eventually discovered that the screencaps were odd sizes.

If I use a fixed zoom ratio (25%, 200%, etc) the screencap is as expected, the frame size.

But I had been using zoom set at "fit inside window". That made the screencaps scale to the zoom level. Same happens with "fill window".

This seems more like a bug than a feature to me...

chipzoller
6th April 2008, 16:46
Request: Add a larger library of the type-as-you-script plugins and their functions. I like having all the functions come up once typing, for example, lanczosresize( and would like to see this appear for more plugins.

azsd
6th April 2008, 18:36
nice tools! I have to start three Virtualdubmod instance to load differnt scripts, then click between taskbar until I found this one.

Is there any option to make the priview windows floatable or dock verticality on the right of editor?
there were lots of blank on the right of scripts.

I've tried mainSplitter.SplitVertically but takes no change.

gomguk
16th April 2008, 21:00
AvsP 2.0.2 Korean language file.
Making(Credit) by "Hani"(name).

Download URL:
http://zizybe.bcpark.net/data/avsp202_korean_lang.zip

Please register avsP official website. ^^

blausand
22nd April 2008, 15:57
Hi all,

as many of you know an open source solution is still missing for compressing video with alpha channel.
Now, i found two avi-CoDecs that process AlphaChannel:

Lagarith,
which is lossless and therefore too heavy for VJing and
Softlab MJPG with Alpha,
which requires WxH resolution multiples of 16,
installs fine in Version 5

However, this did not work for me:

mask() some video with another as RGB32 in Avisynth
compress via avs2avi,
choose Softlab MJPG+Alpha,
reopen that .avi in AVSP,
pass it through showalpha
-> it shows only black.


SO, is that RGB32 correctly transferred to the CoDec by avs2avi, qwerpoi?

Thanks for your time anyway! AVSP is highly appreciated over here!
Give it another release, qwerpoi!

PS.: I screen the transparency as known in Adobe etc. with the following little script. You can append it to every script you are working on, instead of Showalpha().
@qwerpoi: I think transparency should display like this as default!

src=AVIFileSource("source.avi", pixel_type="RGB32")
ImageReader("path.to\TransparencyCheckers.png",pixel_type="RGB32").trim(0,src.framecount).crop(0,0,src.width, src.height)
layer(last,src)
Result looks like this:
http://www.silvertree.de/images/TransparenzPlayer.png

GasKid
2nd May 2008, 09:24
Hi,
Excuse me if it is a stupid question, but how can I import my filter customizations?
There's an export button in "AviSynth function definition...", but I can't find where to import.
I've looked at the help file, but it looks like it's written for old version of AvsP. It says there's an import command under File menu, but it's not there in v2.0.2
Could anyone please help me? Thanks a lot.

gzarkadas
3rd May 2008, 17:41
Hi,
Excuse me if it is a stupid question, but how can I import my filter customizations?
There's an export button in "AviSynth function definition...", but I can't find where to import.
I've looked at the help file, but it looks like it's written for old version of AvsP. It says there's an import command under File menu, but it's not there in v2.0.2
Could anyone please help me? Thanks a lot.

Import does not seem to be implemented yet. Either you can wait a future release (but apparently you don't want to wait; so did I :D) or you can edit directly the file "filterdb.dat" inside the folder where avsp.exe is with a text editor and add your custom entries under the appropriate section.

Most probably you will need to do that only for sections [PLUGINS] and [USERFUNCTIONS]. And perhaps for section [COREFILTERS] if you want to put your own custom defaults to some arguments.

For those sections you must observe the following rules to succesfully enter/edit entries without messing things up:

Keep exactly one empty line between filter/function definitions.
All added entries in the above two sections are multiline entries, such as in the example below:

DirectShowSource_DirectShowSource(
string filename= (*.*) [, ...],
float "fps",
bool "seek"=true,
bool "audio"=true,
bool "video"=true,
bool "convertfps"=false,
bool "seekzero"=false,
int "timeout"=60000 (1000 to 300000 by 1000),
string "pixel_type"="AUTO" ("YV12"/ "YUY2"/ "RGB32"/ "RGB24"/ "YUV"/ "RGB"/ "AUTO"),
int "framecount",
string "logfile",
int "logmask"=35 (1 to 512)
)

The first line of entry is the name of filter/function followed by an opening parenthesis.
NB: For plugins, put in front of the filter/function name the plugin's DLL name and join the two names with an underscore. This will make available both the fully qualified and the normal names of the filter.
On each following line you place, one by one in the order accepted by the filter/function, the filter/function's arguments. Use a comma to end each argument line (except of course the last argument).
For each argument you can specify defaults, etc. (see the example above and the contents of filterdb.dat for details; sorry, I don't have time to explain further).
The last line of the entry is a closing parenthesis alone.


Some final notes:

If you want to add/edit entries in other sections such as [SCRIPTFUNCTIONS] or [CLIPPROPERTIES] you must then put the entire entry in one line.
You can have multiple sections with the same name in the file; AvsP will parse them all.
This provides the ability to put all your new custom entries in separate sections from the default ones shipping with AvsP, which is both better documentation for tracking your changes and less prone to make default entries dissapear from the AvsP GUI should you make a typing or entry-formatting error.
Make a backup copy of original "filterdb.dat" before starting to edit it. This will save you time, if errors are made, to restore in a stable version of the file.
It is better to put all of your customisations in a separate file end edit there, then copy and paste to "filterdb.dat". Apart from quicker editing, this will also create a backup of your customisations.


Happy customisation :).

GasKid
5th May 2008, 01:35
Thank you gzarkadas for this nice guide. It works fine.

Red Wine
11th May 2008, 01:45
Greeting to the great community!
As you probably understand I'm newbie here, however, I'm watching the forum constantly.

Since I discovered AvsP I was so impressed and I decided to build my own tiny tool in order to automate the procedure to encode video in combination with AvsP.

Later I thought why not share my tiny tool? After all it might be helpful. Quick AVI Creator (my tiny tool) works nicely and in combination with AvsP produces fine results.

However I would like to ask AvsP developer if it's possible a (special?) build with some fields disabled. Since I know nothing about python, I'm unable to do it by my self.

Specifically I want disabled the fields Input file and Output file in the encode video window and the field container in the bitrate calculator window.

I guess you probably want to take a look on my tiny tool.
Here's a download link for QAC (sorry for rapidshare link I don't have a server to upload it).

http://rapidshare.com/files/114015821/Quick_AVI_Creator.7z

EDIT: If you have downloaded from the above link please download the updated Quick Avi Creator.exe which eliminates a couple of reported bugs,
otherwise download the updated package. Sorry....

Updated exe only:
http://rapidshare.com/files/114237910/QAC.zip

the package:
http://rapidshare.com/files/114238337/Quick_AVI_Creator.7z

Thanks in advance

Red Wine
16th May 2008, 18:31
Never mind, forget the above post, I'll survive without these features.

Occasionally the silence is louder than 1000s words.

Apologies bosses if I have bothered you...

Cheers

tin3tin
29th May 2008, 12:45
Well I just came across the Aldrin (http://trac.zeitherrschaft.org/aldrin/) python/wxpython module/API (http://doc.zeitherrschaft.org/aldrinapi/) which seems to offer a lot of shortcuts on building timeline/sequencer gui's.

I'm not that much into python/wxpython yet to dare to try to code a timeline/sequencer gui for AvsP, but it would be great if ex. tabs with different scripts could be converted into drag n' drop/scaleable boxes in a timeline as a typical videoediting gui.

The timeline view would mainly be used for editing clips/scripts together timing wise.

Would this be at all possible?

unskinnyboy
7th June 2008, 06:12
qwerpoi, I've stumbled across something, which I believe is a weird bug in AvsP. When attempting to fix field-blending and ghosting issues on a source, and after restoration of the source to progressive frames, when stepping through the frames in AvsP, random blends appear in random frames, and only at times, after extensive forward and backward navigation using the <-/-> keys. The same issue doesn't happen in VirtualDubMoD.

To demonstrate -

Blending observed in AvSP (look at the younger guy's head):
http://img338.imageshack.us/img338/623/avsp465blendingop5.th.jpg (http://img338.imageshack.us/img338/623/avsp465blendingop5.jpg)

The same frame, when you just jump to the frame in VirtualDubMoD:
http://img338.imageshack.us/img338/4077/vdm465noblendingwn9.th.jpg (http://img338.imageshack.us/img338/4077/vdm465noblendingwn9.jpg)

Source used is here (http://www.sendspace.com/file/iiq1cc), and the following was the script used:
Mpeg2source("...sample.d2v")
greyscale()
interp=nnedi(-2)
yadifmod(mode=1, edeint=interp)
Mrestore(dclip=last.crop( 6, 78, -8, -82).Spline36Resize(704,384))
crop( 6, 78, -8, -82).Spline36Resize(704,384)
mc_spuds(frames=3,strength=4)
I had another person verify the same behavior, just to make sure that it wasn't just me.

DarkZell666
7th June 2008, 10:24
Never mind, forget the above post, I'll survive without these features.

Occasionally the silence is louder than 1000s words.

Apologies bosses if I have bothered you...

Cheers

... be patient will you ? ;)

talen9
7th June 2008, 14:30
@unskinnyboy: perharps you had more than one script, open (and previewed) in AvsP, which uses MVTools? Perhaps two very similar versions of this very script?

If you use the same value for the "idx" parameter, this can give problems to the output, 'cause it makes the two different elaborations share several memory areas or such (i'm not so keen in MVTools internals); anyway, that's a behaviour which I already happened to see.

When it happens, try to visualize the preview; then, right click on the preview area and "Release all videos from memory" should fix it. Your next step should be to differentiate the "idx" values in different scripts.

elguaxo
7th June 2008, 16:33
@talen9: only this one script was open.

unskinnyboy
7th June 2008, 21:18
@unskinnyboy: perharps you had more than one script, open (and previewed) in AvsP, which uses MVTools? Perhaps two very similar versions of this very script?

If you use the same value for the "idx" parameter, this can give problems to the output, 'cause it makes the two different elaborations share several memory areas or such (i'm not so keen in MVTools internals); anyway, that's a behaviour which I already happened to see.

When it happens, try to visualize the preview; then, right click on the preview area and "Release all videos from memory" should fix it. Your next step should be to differentiate the "idx" values in different scripts.Like elguaxo said above, only this one script was open and I wasn't using MVTools either. And FYI, he was the one whom I asked to double-check this issue for me, just to make sure that I wasn't seeing things.

talen9
8th June 2008, 02:29
Hmm very strange then, 'cause to me it seems exactly the kind of artifact that a misuse of MVTools/idx can produce.

BTW, your script calls mc_spuds, which in turn heavily relies on MVTools ... OTOH, if it was some obscure bug with it, it should appear on VDub too :confused:

foxyshadis
8th June 2008, 02:49
What does the source frame look like at that point? It's likely avsp is resetting mrestore's context and vdub isn't, or vice versa, since conditional functions really aren't designed to skip around in.

unskinnyboy
8th June 2008, 03:31
BTW, your script calls mc_spuds, which in turn heavily relies on MVTools ... Indeed. I totally forgot about MC_Spuds using MVTools internally. But still, like you said it doesn't affect VirtualDubMoD.

What does the source frame look like at that point? It's likely avsp is resetting mrestore's context and vdub isn't, or vice versa, since conditional functions really aren't designed to skip around in.I believe this is it:

http://img176.imageshack.us/img176/9131/sourcesameframeax1.th.jpg (http://img176.imageshack.us/img176/9131/sourcesameframeax1.jpg)

Frame number scripted on the frame is a bit off, of course, since this hasn't been restored yet.

Was any of you able to replicate the issue?

Rippraff
8th June 2008, 14:39
@unskinnyboy

In post 162 you're comparing different frames.

Cu Rippraff

unskinnyboy
8th June 2008, 15:16
@unskinnyboy

In post 162 you're comparing different frames.

Cu RippraffNo, I'm not. It looks different because of the problem I mentioned. To avoid manual error is why I have current_frame subtitled on the frame.

Vesi
1st July 2008, 17:46
I'm getting this type of error:
Traceback (most recent call last):
File "AvsP.pyo", line 6291, in OnSliderReleased
File "AvsP.pyo", line 8925, in ShowVideoFrame
File "AvsP.pyo", line 9467, in PaintAVIFrame
File "pyavs.pyo", line 322, in DrawFrame
File "pyavs.pyo", line 301, in _GetFrame
File "avisynth.pyo", line 277, in GetFrame
WindowsError: exception: access violation reading 0x3F0E39DA

And also when I work with my script Avsp sadanly get close and also few other error i get during working. I'm facing these things for the first time and don't know what is the reason.

Zarxrax
1st July 2008, 17:56
Hmmm, I'm wondering if this project is dead or just on hiatus or something? I haven't seen any response from qwerpoi in quite a while now.

bidmead
1st July 2008, 19:54
It won't be dead in any meaningful sense, because everybody's got the source code. qwerpoi's done a lovely job setting this up, so I guess it's there for anyone who feels like picking it up and running with it. But obviously it would be courteous to get in touch with him first <qwerpoi.avsp@gmail.com>

--
Chris

cantonesejim
12th August 2008, 14:35
AvsP wont run any longer on my system heres what the log file says with a freshly downloaded and unpacked copy

Traceback (most recent call last):
File "run.py", line 5, in <module>
File "AvsP.pyo", line 73, in <module>
File "pyavs.pyo", line 31, in <module>
File "avisynth.pyo", line 4, in <module>
File "ctypes\__init__.pyo", line 415, in __getattr__
File "ctypes\__init__.pyo", line 340, in __init__
WindowsError: [Error 126] The specified module could not be found

Adub
13th August 2008, 21:19
What have you done recently on yours system? Have you done a fresh install? Or have you removed any software recently?

Dreassica
13th September 2008, 22:13
Woudl it be possible to write framenumbers or ranges to a designated txt file in combination with a python script?
I'm trying to filter single frame flashes that usually get missed by mvdegrain using conditional reader/writer.
That works fine, but it's kind of a hassle to have to switch to a text file to write down the framenumbers.
It would be handy if i could do it with the press of a button in avsP, via assigning a hotkey to a python script addon.

Zarxrax
14th September 2008, 04:36
You can get the current frame number by using avsp.GetFrameNumber()
I don't know enough about python to tell you how to output that to a file though. I'm sure it's possible, however.

You can use the following macro to output the framenumber to a window:
frame = avsp.GetFrameNumber()
avsp.WriteToScrap('\n%i' % frame)

Then when you are done, just select it and then copy paste to a file.

MoUCLAs
24th September 2008, 22:27
hello, i am trying to compare my source and the encoded mkv. I open both with avsp but when i choise on specific frame i get different frames to each of them.. Also whan i press next frame it goes 3-4 frames not 1. Why is happening this?

nurbs
24th September 2008, 23:25
What command do you use to load the videos? DirectShowSource isn't necessarily frame accurate.

mikeytown2
25th September 2008, 01:28
Try one of these filters to load your vid
http://avisynth.org/mediawiki/External_filters#Source_Filters

It's where I get alternatives to DirectShowSource() (http://avisynth.org/mediawiki/DirectShowSource)

MoUCLAs
25th September 2008, 17:17
for the mkv i use:
DirectShowSource("Encode_Video.mkv")

and for the source i use:
MPEG2Source("Source_video.d2v")
LoadCplugin("yadif.dll") Yadif()
Crop(2,16,-2,-16)
Spline36Resize(640,336)

What else can i use?

edit: I saw now the second post. I will look one for the mkv. thanks

edit2: ok it worked. I use:
FFmpegSource ("encoded_video.mkv")
It just needed to add in the avisynth plugin directory the FFMpegSource.dll , downloaded from here:
http://ivtc.somestuff.org/new/
Thanks boyz once more

nurbs
25th September 2008, 17:24
FFMpegSource is frame accurate on mkv.

torpare
12th October 2008, 10:29
I tried out using VirtualDub as external player for previewing, but decided I preferred the internal preview. There seemed no way to revert other than by retracing my steps (ie removing the path to VDub from the box labelled 'External player' in 'Program Settings -> General tab'). So that's what I did.

Ever since, every time, a blank preview window comes up. I can't see any way to restore the internal preview. No doubt I'm missing something obvious but it isn't obvious to me!:confused:

Can anybody please tell me what I should be doing that I'm not?

EDIT
Please ignore this (I have a lot to learn).

flebber
23rd January 2009, 15:53
I cannot seem to start avsp 2.02. I receive an error when I attempt to run avsp.exe.

Traceback (most recent call last):
File "run.py", line 1, in <module>
ImportError: No module named os

I am on windows xp sp3. Anyone had this before ?

Sagekilla
23rd January 2009, 20:55
Sounds like something went wrong with your installation. Only reason that (should) pop up is that, exactly as the error message says, a module is missing. Try downloading it again and copying over the lib folder.

flebber
24th January 2009, 00:25
I have done that with no luck. Should it matter that I have a current install of python 2.6.1 on my pc ?

Sagekilla
24th January 2009, 08:40
Your installation of python shouldn't matter at all, since (I'm not 100% sure on this yet) the working python code should be run out of /lib/ and no where else. I have Python 2.5.2 though, so I could be wrong.

tekNerd
25th January 2009, 19:29
Hey, guys.
Mine worked just fine. I installed python3 for something and now it doesn't work anymore. I mean, it starts as a process, but there is nothing else, plus this process has no threads.
After all, does the python installation has anything to do with it?
(Avs 1.3.4 does work)

Strike that. I reinstalled avisynth and works now. Bo!

Leak
25th January 2009, 20:43
I installed python3 for something and now it doesn't work anymore. I mean, it starts as a process, but there is nothing else, plus this process has no threads.
After all, does the python installation has anything to do with it?
To quote Wikipedia...

Version 3.0 (http://en.wikipedia.org/wiki/Python_(programming_language)#Version_3.0)

Python 3.0 (also called "Python 3000" or "Py3K") was designed to break backwards compatibility with the 2.x series in order to repair perceived flaws in the language. The guiding principle was to "reduce feature duplication by removing old ways of doing things".

Sagekilla
25th January 2009, 21:25
@Leak: That shouldn't matter though since if AvsP was compiled in a similar way to how I compile my programs, then the modules needed to run should be entirely self contained within the AvsP directory. Nothing outside of that should be loaded or required.

Zarxrax
11th May 2009, 23:04
I was wondering if anyone has kept a list of updated filter definitions beyond those that are included in avsp?

spyOne
6th June 2009, 02:21
Hi

I dont get image in avsp when loading a m2ts file, only thing i get is a black screen and no error's.

tried graph file (.grf)
tried DGAVCDecode (.dga)
and tried also DirectShowSource("C:\.....\00057.m2ts")

No error's just a black screen, also refreshed image and no luck.

Using avisynth 255.

spyOne
6th June 2009, 02:35
Hi

I dont get image in avsp when loading a m2ts file, only thing i get is a black screen and no error's.

tried graph file (.grf)
tried DGAVCDecode (.dga)
and tried also DirectShowSource("C:\.....\00057.m2ts")

No error's just a black screen, also refreshed image and no luck.

Using avisynth 255.
Solved, changed avisynth version from 255 to 258.:)

MADAJ
8th July 2009, 19:32
anybody knows why I get this error?
although just a few plugins are installed
it crushed when I added medianblur.dll
and I REALLY need this dll

Traceback (most recent call last):
File "AvsP.pyo", line 5804, in OnMenuVideoRefresh
File "AvsP.pyo", line 8822, in ShowVideoFrame
File "AvsP.pyo", line 9256, in UpdateScriptAVI
File "pyavs.pyo", line 186, in __init__
File "avisynth.pyo", line 117, in Invoke
WindowsError: exception: access violation reading 0x6D65746F

fvisagie
14th August 2009, 12:25
Hi Authors and All,

Last night I dipped my toes in AvsP and like everyone else I am very much impressed. Well done!

There are a couple of things I haven't figured out yet that I was hoping you could help me with, please.

Let's say the scenario is I'm working on a large amount of holiday footage, meaning I'll be discarding most material.

1. I work through the footage, using the Trim editor to add Trims to Keep. After a while my time for today is up and I need to stop and save my project. So I click Apply and save. Now the video preview shows the results of my editing. How do I change the video preview's context back to the full source to resume editing?

2. After a while I've collected many Trims and need to refresh my memory by previewing a particular one. How do I do that?

3. Especially with holiday and documentary movies much of the footage contains off-camera speech (narration usually). I found using an external player for audio and then transferring frame references back to AvsP to be very cumbersome and inaccurate. What easy way is there of reviewing audio in AvsP?

If what I'm hoping for isn't possible in AvsP, please be kind enough to suggest an alternative workflow that will work for this kind of scenario?

Many thanks,
Francois

Gavino
14th August 2009, 20:52
1. I work through the footage, using the Trim editor to add Trims to Keep. After a while my time for today is up and I need to stop and save my project. So I click Apply and save. Now the video preview shows the results of my editing. How do I change the video preview's context back to the full source to resume editing?
Just comment out the Trim line added by the editor.
2. After a while I've collected many Trims and need to refresh my memory by previewing a particular one. How do I do that?
Not sure exactly what you mean, but you can perhaps use the bookmarks feature for this.
Note that you can always temporarily alter the result of the script by commenting out parts or adding a 'return' at some intermediate point.
3. ... I found using an external player for audio and then transferring frame references back to AvsP to be very cumbersome and inaccurate. What easy way is there of reviewing audio in AvsP?
The AudioGraph (http://avisynth.org.ru/docs/english/externalfilters/audiograph.htm) plugin can help with correlating the sound track with frames.

fvisagie
15th August 2009, 15:10
Not sure exactly what you mean, but you can perhaps use the bookmarks feature for this.
Note that you can always temporarily alter the result of the script by commenting out parts or adding a 'return' at some intermediate point.

Say the constructed timeline looks like this:

a1 = OpenDMLSource(...)
a2 = OpenDMLSource(...)
...

clip1 = a1.Trim(...)
clip2 = a2.Trim(...)
clip3 = a1.Trim(...)
...

return clip1 + clip3 + clip2 ...


After a while there's a long list of Trims and I can no longer remember exactly which Trim in the return statement returns which footage.

What is the quickest way of sampling in random order the contents of individual Trims/clips? E.g. sample clip3's contents, sample the contents of clip1, sample the contents of clip2 and now you have a good idea of that part of the timeline?

The AudioGraph plugin can help with correlating the sound track with frames.

Although that helps somewhat, it doesn't provide the complete answer for my footage, unfortunately. I use Aegisub's spectrograph when transcribing speech and although that helps, background noise in most footage is sufficiently white noise-like to make it impossible to visually distinguish speech.

It seems the only solution really is to have audio playback - preferably with video - in AvsP so that I can insert Trim points at the various cursor positions. Can some AVS user function do this, and what would be its basics?

fvisagie
15th August 2009, 17:32
To recap, the footage I work with contains lots of off-camera speech which needs to be considered when cutting.

Using an external player for rendering audio and then manually transferring frame references back to AvsP turned out to be very cumbersome and inaccurate.

Also, background noise usually makes it impossible to visually distinguish speech with e.g. AudioGraph.

Therefore I'm left unable to work with audio in AvsP and it seems I won't be able to continue working with it, much to my regret.

However, I thought my experiences might be of some value to the developer(s), hence this feature suggestion for adding audio rendering, preferably with synchronised video playback.

Kind regards,
Francois

AlanHK
15th August 2009, 18:52
Therefore I'm left unable to work with audio in AvsP and it seems I won't be able to continue working with it, much to my regret.

AvsP can't play video, let alone audio -- it just displays the results frame by frame. To add that would be a considerable job, and seems unlikely. (Has development stalled, by the way?)

I might suggest VirtualDubMod, which incorporates a simple AVS editor (one of the mods to the straight VirtualDub). This can insert Trims in the AVS for selected ranges.

Or set VirtualDubMod to be AvsP's "external player" and use both.

Gavino
15th August 2009, 19:16
After a while there's a long list of Trims and I can no longer remember exactly which Trim in the return statement returns which footage.

What is the quickest way of sampling in random order the contents of individual Trims/clips? E.g. sample clip3's contents, sample the contents of clip1, sample the contents of clip2 and now you have a good idea of that part of the timeline?
You could set a bookmark at each splice point on the timeline and cycle through them with F2. (I think using the Trim editor sets them automatically.)

Regarding your audio issue, I take it the main problem is you want to cut based on the audio content and it's tedious finding the exact frame that corresponds to your desired cut point.
Here's a cheap and dirty solution that might at least help: add this to the end of your script (where it can easily be commented in and out):
ShowFrameNumber()
AssumeFPS(framerate/4, true)
Then when you play in an external player it will play at 1/4 speed, showing the frame numbers as it goes, which may make it easier to find the frame you want. (I said it was cheap and dirty. :))

fvisagie
17th August 2009, 09:57
I might suggest VirtualDubMod, which incorporates a simple AVS editor (one of the mods to the straight VirtualDub). This can insert Trims in the AVS for selected ranges.

Or set VirtualDubMod to be AvsP's "external player" and use both.

Using both proves to be cumbersome, even including displaying frame numbers (as Gavino also suggested, thanks).

Another complication is that the source is DV AVI containing DATECODEs that need to be preserved. Of course with any project where AVS does the final rendering this won't happen automatically. Extracting DATECODEs with DVInfo is presenting its own niggles - output isn't fully suppressed when DATECODEs are absent, and of course the issue for a newbie like me of getting it all programmed to work correctly in a complex editing project.

The simplest solution for now turned out to be straight VirtualDub - it provides synchronised real-time video + audio playback, all cutting can be done in a single interface, and it supports direct copy of unmodified frames, preserving their DATECODEs.

Thanks to all for your contributions and suggestions, I sincerely appreciate it.

maxhondur
17th August 2009, 10:15
Well, it seems like you're all set to go, but just for posterity's sake (and the fact that I love avsp), nine lines of text, ie the below AVSP macro

################
import time
trimmed = avsp.GetSelectionList()
originaltext = avsp.GetText()


avsp.SetText(originaltext+"\ntrim"+str(trimmed[0]), index=None)
avsp.SaveScript()
avsp.RunExternalPlayer(executable = 'C:\\some\\where\\mplayerc.exe' )


time.sleep(1)

avsp.SetText(originaltext, index=None)
avsp.SaveScript()
#################


should get you what you want, roughly? if you're in trim editing mode, and have two select points, call on the macro to play media player classic, and it'll play back the trimmed file. You can then adjust the trim points frame by frame as necessary, call the macro again, etc.

Two notes - I'm not a good coder, hence the code is pretty sloppy, but at the same time, it took about 3 minutes to write this up :p

Gavino
17th August 2009, 11:45
if you're in trim editing mode, and have two select points, call on the macro to play media player classic, and it'll play back the trimmed file.
Cool.
How would I change this to play back from the current frame position (outside of the trim editor)?

maxhondur
17th August 2009, 12:00
Probably just replace trim command to 'getframenumber'

######
import time
trimmed = avsp.GetFrameNumber()

originaltext = avsp.GetText()


avsp.SetText(originaltext+"\ntrim("+str(trimmed)+',0)', index=None)
avsp.SaveScript()
avsp.RunExternalPlayer(executable = 'C:\\some\\where\\mplayerc.exe')


time.sleep(1)

avsp.SetText(originaltext, index=None)
avsp.SaveScript()
#####

should work, worked on my machine

It got even more sloppy because I just cut and pasted stuff from my previous post :p

Gavino
19th August 2009, 01:31
Thanks for that, maxhondur - a very useful addition, especially when you add a keyboard shortcut.

For my use, I removed the two avsp.SaveScript() calls since I prefer not to overwrite the original file with temporary changes I may have made. (The player will then be invoked on temporary file preview2.avs)

PsiRadish
21st September 2009, 08:57
Request: Upload the source for the v2.0.2 bugfixes (http://avisynth.org/qwerpoi/AvsP_v2.0.2_bugfix3.zip). I'm having very poor luck finding a functional Python (2.5) decompiler :(

canuckerfan
24th September 2009, 01:26
Just wondering if anyone else is having issues with AvsP when using conditionfilter+conditionalreader? Whenever I exit after using these scripts AvsP never fully closes and reaches 50% cpu. It's not that big of a deal since I just end-task it but wondering if anyone else gets this too?

Gavino
24th September 2009, 11:54
Does this happen every time you use ConditionalReader/ConditionalFilter or does it depend on some additional factors such as for example
- length of input clip?
- size of file read by ConditionalReader?
- other filters used in script?
- number of tabs open in AvsP?

If you can reproduce the problem with a simple script and ConditionalReader input file, post it here.

canuckerfan
24th September 2009, 12:07
Does this happen every time you use ConditionalReader/ConditionalFilter or does it depend on some additional factors such as for example
- length of input clip?
- size of file read by ConditionalReader?
- other filters used in script?
- number of tabs open in AvsP?

If you can reproduce the problem with a simple script and ConditionalReader input file, post it here.
Okay. I finally got the chance to test this and it has occured.

-clip length = 266124 frames (a little over 3 hours)
-size of file read was 52 bytes (it had to process only 2 frames)
-no other filters used (except crop): actually, here's the entire script:
SetMemoryMax(768)

avisource("G:\Hindi Movies\Temp\DCH_ELITE\step26b.avi")

AddBorders(0,2,0,2)
Filtered = RemoveNoiseMC(rdlimit=41,rgrain=1,denoise=0,sharp=true)
ConditionalFilter(Filtered, last, "ABC1")
ConditionalReader("failed3-rd41.txt","ABC1",false)
Crop(0,2,0,-2)## 2 frames processed in this pass
-only 1 tab open (the one encoded)

espy2
26th September 2009, 12:35
AvsP's "Tools > Encode the video" runs H264.exe but I get the error message "unrecognised option: --progress".

Versions:
AvsP: 2.02
H264.exe: (reported by --version)
x264 0.76.1271M 496d79d
built by techouse on Sep 25 2009, gcc: 4.4.1 (x86.core2.Komisar)
Downloaded from http://x264.tk

Tried H264.exe on Pass-1 from commandline. When I removed "--progress" option it complained of "--no-psnr" option, then when that removed, the "--no-ssim" option.

Should I use some other version or variant of H264.exe? Or does AvsP need updating to reflect new version of H264?

Zarxrax
26th September 2009, 20:31
AvsP's support for x264 is outdated.

canuckerfan
15th October 2009, 09:22
Does this happen every time you use ConditionalReader/ConditionalFilter or does it depend on some additional factors such as for example
- length of input clip?
- size of file read by ConditionalReader?
- other filters used in script?
- number of tabs open in AvsP?

If you can reproduce the problem with a simple script and ConditionalReader input file, post it here.
Okay. I finally got the chance to test this and it has occured.

-clip length = 266124 frames (a little over 3 hours)
-size of file read was 52 bytes (it had to process only 2 frames)
-no other filters used (except crop): actually, here's the entire script:
SetMemoryMax(768)

avisource("G:\Hindi Movies\Temp\DCH_ELITE\step26b.avi")

AddBorders(0,2,0,2)
Filtered = RemoveNoiseMC(rdlimit=41,rgrain=1,denoise=0,sharp=true)
ConditionalFilter(Filtered, last, "ABC1")
ConditionalReader("failed3-rd41.txt","ABC1",false)
Crop(0,2,0,-2)## 2 frames processed in this pass
-only 1 tab open (the one encoded)

blazerqb11
25th January 2010, 01:21
I hope this is the right place to make a suggestion for the program. I was just dealing with a situation where I had to change a lot of file paths in avs scripts, and it made me wish AvsP had an option to replace a string in all open tabs instead of just the current tab. Any chance that could be implemented?

AlanHK
25th January 2010, 03:11
Any chance that could be implemented?

See the changelog at http://avisynth.org/qwerpoi/index.html
qwerpoi hasn't posted here or issued any updates for over 2 years, so it seems the project is dormant.

martin53
31st January 2010, 18:56
Since AvsP V2.0.2 would not run on my system with Windows 7, I recompiled it with Python 2.5.4 etc.

I called this build V2.0.2.1. It has no functional enhancements, it just works under (my) Windows 7.

Suggestions where this release can be published are welcome!

Sorry - I have no clue about Python or the functionality of AvsP. So please don't bother to ask me for enhancements.

It is not too complicated to get it running however. Just follow qwerpoi's doc: install Python (v2.5!), wxPython, Py2Exe and upx - that's all.

Floatingshed
1st February 2010, 14:38
I wonder if someone could tell me how to customise AvsP to select a source filter determined by the file extension.
e.g. I would like to open an ac3 file with nicac3source but AvsP always defaults to opening ac3 with directshowsource.
Thanks.

martin53
1st February 2010, 21:05
My standard .AVS file looks like this:
function GetScriptBasename() {
Try { assert(false) }
Catch(err_msg) {
err_msg = MidStr(err_msg, FindStr(err_msg, "(") + 1)
filename = LeftStr(err_msg, StrLen(err_msg) - FindStr(RevStr(err_msg), ",") - 4)
return filename
}
}
ProcessTemplate1(GetScriptBasename()+"")

This automatically determins the base name of the script. You guess right: the script base name is identical to the media file name that I want to open.
In the plugin directory, there is a file _myFunctions.avsi, containing the function ProcessTemplate1() besides other functions.

My ProcessTemplate1() itself is quite long. This is a stripped down essence:

function ProcessTemplate1(string name) {
function GetClip(string name) {
… …
Exist (name+".avi") ? AVISource(name+".avi") : last
Exist (name) ? DirectShowSource(name) : last
}
GetClip(name)
… …
}

You see that GetClip() tries to append various extensions to the base name of the script to find the file. As the last try, it just takes the base name itself. Remember that you can call the script myMovie.wmv.avs, so it would just open myMovie.wmv with DirectShowSource(). However, myMovie.avs would open myMovie.avi with AviSource()...

ANGEL_SU
6th February 2010, 17:39
I wonder if someone could tell me how to customise AvsP to select a source filter determined by the file extension.
e.g. I would like to open an ac3 file with nicac3source but AvsP always defaults to opening ac3 with directshowsource.
Thanks.
click Options->Extensin templates...

Zarxrax
12th February 2010, 18:39
Since AvsP V2.0.2 would not run on my system with Windows 7, I recompiled it with Python 2.5.4 etc.

I called this build V2.0.2.1. It has no functional enhancements, it just works under (my) Windows 7.

Suggestions where this release can be published are welcome!


There are a number of free file sharing sites you could upload it to. Megaupload, rapidshare, easyshare, zshare...

Tiberiust
13th February 2010, 20:14
@martin53
Several AvsP users finding it unuseable in Win7. Would be great if yu could sort it out....don't stop bcos of lack of encouragement :)

T

Gannjunior
2nd March 2010, 23:32
i'm using it under Windows 7 x64 and it works great!

ciao!

GibsonXXI
3rd March 2010, 11:57
Only thing about AvsP that I don't like is it's usage of the clipboard. In that it doesn't actually save changes to the clipboard like other apps. Close the program and try pasting a selection in a new instance to see what I mean.

That and it doesn't always automatically save changed files if you close the program without saving. In such instances it doesn't prompt you either. Only happened a few times, annoying nonetheless.

Otherwise, an indispensable tool.

doc_dvxm
22nd March 2010, 16:11
Hii There... I am using AvsP on Win 7 32 Bit platform and everything is fine..

I have to ask to develloppers: Can you add a shortcut for "Save image as..." - for example Shift + anything or Ctrl + anything?

Thanx in advance

tengo6dedos
22nd March 2010, 19:34
You will have better luck asking that in avspmod.

doc_dvxm
22nd March 2010, 21:04
You will have better luck asking that in avspmod.


Ok Thanx ...

bidmead
6th January 2011, 16:22
Gosh. This either means that AVsP has achieved perfection, or that a better Avisynth front end has turned up and everyone's migrated to it.

Or is this related to qwerpoi's disappearance? I lost contact with him in mid-2007. Does anyone know what's happened to him?

For me the AVsP/Avisynth combo remains absolutely the best movie editor of all time at any price. I'd love to get back in contact with qwerpoi.

--
Chris

szabi
19th December 2011, 17:38
Hi

How is it possible to insert more than one avi file in an avisource?

bye
szabi

Zarxrax
20th December 2011, 03:55
doc_dvxm: you can do this in avspmod, you just need to set up the shortcut under Options>Keyboard Shortcuts

bidmead: it seems qwerpoi is gone, but there is still a little bit of development going on, mostly thanks to Angel_Su.

szabi: you can join files together with ++
for example
AviSource("file1.avi")++AviSource("file2.avi")

bidmead
20th December 2011, 09:37
Yup, no sign of qwerpoi, alas. But the whole thing is now coming along nicely as AvsPMod over here: http://forum.doom9.org/showthread.php?t=153248&highlight=avspmod

--
Chris

Gavino
20th December 2011, 10:51
szabi: you can join files together with ++
for example
AviSource("file1.avi")++AviSource("file2.avi")
Since AviSource accepts multiple file names, you can also do
AviSource("file1.avi", "file2.avi", ...)
which seems more in line with the original question.

szabi
22nd December 2011, 19:20
Hi

Yeah i know it, my problem is this from menu: right click -> insert -> insert source only one file can be selected.

bye szabi