Log in

View Full Version : AvsPmod 2.5.1


Pages : 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

LigH
10th June 2011, 07:24
Placing a control on top of another is not too hard, as you can see in the codecs table of ffdshow: It looks like a combobox would appear in the grid if you select a codec choice (e.g. for Xvid: disabled/libavcodec/Xvid), but in fact it is placed on top of the grid. Proof: Click it to make it appear, then use the mouse scrollwheel to move the grid below the combobox.

Renaming files in an Explorer control (a File Open dialog content is just that) is slightly different, that feature is already provided by the Common Controls foundation, I believe...

Mounir
11th June 2011, 22:27
I have a big problem today AVSP won't work, why it's a mistery, when i run it there is a pop up window which disapear quickly, see image below:

http://img839.imageshack.us/img839/4030/avspproblem.png

I've tried various versions of AVSP, same issue and i haven't changed a thing on my comp since yesterday

Dogway
11th June 2011, 22:29
Does avsp open at all? maybe is this (http://forum.doom9.org/showthread.php?p=1503119#post1503119) bug?

Mounir
12th June 2011, 00:42
I don't think i have XP this bug appeared out of nowhere really, still unresolved after a couple of boots & reboots

Mounir
12th June 2011, 01:00
Well i just found out it's in relation with a plugin for avisynth Didée gave to me

ANGEL_SU
12th June 2011, 05:20
Well i just found out it's in relation with a plugin for avisynth Didée gave to me
Could you tell me what plugin it is?

Mounir
12th June 2011, 13:03
GrainFactory3a.avsi for yuy2 support, if i put it i nthe plugins folder avsp crash if it's in a subfolder everything's ok

StainlessS
13th June 2011, 21:52
Just to let you all know, several Anti-Virus type scanners detect the "gdiplus.dll" as dodgy.
Scanned today via VirusTotal.com where 3 out of 42 scanners said the below:

Comodo UnclassifiedMalware
McAfee Suspect-AB!28F1F1AD2607
Rising Trojan.Win32.Generic.126013FE

Am uploading to Comodo for their perusal.

LigH
14th June 2011, 07:59
Probably rather typical behaviour-based false positives.

dragon_warrior
18th June 2011, 16:08
Everytime I start AvsPMod 2.1.8, it says

Error parsing GetSystemEnv_GetWorkingDir plugin parameters: unknown character 
Error parsing GetSystemEnv_SetWorkingDir plugin parameters: unknown character 
Error parsing GetSystemEnv_GetFileInfo plugin parameters: unknown character 

I've just reinstall the OS (Win 7 32-bit). What's wrong with AvsPMod?

Gavino
18th June 2011, 16:36
Error parsing GetSystemEnv_GetWorkingDir plugin parameters: unknown character 
This sounds like the problem I reported here:
With AvsP, this can occur if a function from an auto-loaded plugin is called from an auto-loaded .avsi file, eg
global AviSynthPluginsDir = GetWorkingDir()
It shows up as AvsP producing an error message "Error parsing <xxx> plugin parameters: unknown character <x>".
If it's the same thing, it's actually caused by a bug in Avisynth, fixed in 2.6.0 Alpha 3.

dragon_warrior
19th June 2011, 09:46
This sounds like the problem I reported here:

If it's the same thing, it's actually caused by a bug in Avisynth, fixed in 2.6.0 Alpha 3.

You're right. Works like a charm now. Thanks

RedDwarf1
20th June 2011, 22:46
This sounds like the problem I reported here:

If it's the same thing, it's actually caused by a bug in Avisynth, fixed in 2.6.0 Alpha 3.

It's good to see that someone found the cause of this bug because I had some personal experience of it and know how variably annoying it could be.

It's just a pity that I cannot use 2.6.0 Alpha 3 due to the lack of any multi threading support.

However, I congratulate you Gavino on your persistence on this matter, it did finally get a result.

wOxxOm
21st June 2011, 09:24
how about "Display aspect ratio" submenu (not necessarily as cluttered as virtualdub's)?
#~ Many of us work with anamorphic video and use temporary resize just for the previewing purpose.

RedDwarf1
22nd June 2011, 12:51
how about "Display aspect ratio" submenu (not necessarily as cluttered as virtualdub's)?
#~ Many of us work with anamorphic video and use temporary resize just for the previewing purpose.

That would be helpful because ATM temporary resizing is the only way to do it which is not ideal.

Dogway
22nd June 2011, 13:27
...which is not ideal.
Why not?
That would involve pixel interpolation blind to the end user, then they will start complaining about ringing, blurring, etc. Just use RatioResize() at the end of the script and problem solved, plus you'd know what you are doing.

wOxxOm
22nd June 2011, 13:38
@Dogway: your logic kills Zoom/Flip/YUVRGB as well. Why would an anamorphic zoom be any worse than usual zoom? Because of current pointresize method? People have used VirtualDub for over a decade (me included) and what, anyone had a problem with that?

There is a simple solution - an option to choose AvsP window zoom method - pointresize, bilinear, bicubic, etc. - this way a user could balance speed and quality.

Dogway
22nd June 2011, 13:47
You named it, zoom/flip doesn't do any (subpixel) interpolation, its nearest neighbor. RGB conversion is unavoidable, that solely depends on avspmod, but as you already know linear high depth color space conversion is a fairly new and heavy task. You can look into dither or resampleHQ for that matter.

wOxxOm
22nd June 2011, 13:59
@Dogway: I totally fail to understand your objection and even if there is one - all software players scale an anamorphic video using bicubic or worse methods and nobody dies. The same feature is suggested for AvsP which is used by savvy people, and it's a handy addition. I'd say it's pretty obvious that for many people it'd be at the very least as useful as various yuv->rgb modes or H/V flip.

Dogway
22nd June 2011, 14:10
@wOxxOm: What I want to say is that avspmod is not a playback software, its a debug software and as so, I want to see my naked results with clean pixels, not contaminated with blind conversions. How can you evaluate image sharpness, or ringing, or even noise using an interpolator over it? But in the hipothetically case you ever want that, just add a resize function at the end of the script. Now if you just want another user to confirm this, I'm not going to continue arguing. I just think its not a very clever implementation, and maybe software can be improved in other aspects, but it doesn't affect me if at last it gets implemented.

wOxxOm
22nd June 2011, 14:17
@Dogway: FYI checking sharpness and such is meaningless at 480p (common anamorphic video size) per se, only when you see it scaled to an average viewing resolution (surprise!) using an average scaling method (bicubic/bilinear). Anyway a debugging tool would be a lot more handy to use if it provided an on-the-fly ratio correction coupled with resizing method selection.

Dogway
22nd June 2011, 14:26
...coupled with resizing method selection.
https://github.com/chikuzen/ARDeformation

wOxxOm
22nd June 2011, 14:35
@Dogway: and what? There are lots of ways I can do it manually in a script, but the proposal is to enhance AvsP out-of-the-box.

Zarxrax
22nd June 2011, 16:13
Well, I can see both sides, but after looking at virtualdub's implementation, how can we make an implementation that's not so cluttered? As virtualdub shows, there are LOTS of different aspect ratios that people might want it to resize to. The only way to simplify it would be to simply not allow so many options. But then who is to say which aspect ratios are most important? We could add an option for the user to specify their own aspect ratio, but then that is adding even more complexity to a simple problem. On top of that, you have suggested that the user even be able to select which resizing filter is used.
With all of this its possible for the user to have to search through several menus looking for various items, when in the end all that had to be done was write 'LanczosResize(x,y)' at the end of the script.
At that point, you may as well have just used the resize calculator thats already present in Avsp.
I'm not really opposed to this idea, but let's think of a way to avoid complexity with it.

wOxxOm
22nd June 2011, 16:34
probably:
textfield in Options: Aspect ratios="4/3 16/9 2.35"
so a user can add needed ratios by a mere typing/copypasting from wikipedia's list.

an example of common ratios in textfield label (below the label e.g.)

resize method selector could be a combobox/radiobutton list - BTW this option would be great also in case a user likes to see zoomed video the way it will be viewed in a common player and doesn't care about by-pixel fidelity of pointresize.
probably a checkbox [x] use for 1:1 ratio zoom as well

ANGEL_SU
22nd June 2011, 18:40
@wOxxOm
I will not do this, because this may cause the source code very hardly to maintain. I realize it when I implemented 'no delay zooming' before.

Insteadly, I will improve "Macro" menu. You can use file name/structure to create a submenu with check items or radio buttons. And then, you can easily accomplish this purpose by yourself.

Zarxrax
22nd June 2011, 18:49
Thats actually a pretty good idea. If you do it through a macro, you can assign a keyboard shortcut to it, then its even easier than going through a menu.

wOxxOm
23rd June 2011, 08:01
Understood, but it won't help with ratio correction *on-the-fly without modifying avs-script*, however a nice addition anyway.

Not related to ratio, but to enhancing of the macro functionality: it'd be nice if more AvsP functions are exposed, such as those allowing to read script at arbitrary position (GetCurrentPos, WordStartPosition, WordEndPosition, GetTextRange) so that a keyboard macro like GoToFrameNumberUnderCursor would work without selecting the number first which is very cumbersome.

ANGEL_SU
23rd June 2011, 17:53
Understood, but it won't help with ratio correction *on-the-fly without modifying avs-script*, however a nice addition anyway.

Not related to ratio, but to enhancing of the macro functionality: it'd be nice if more AvsP functions are exposed, such as those allowing to read script at arbitrary position (GetCurrentPos, WordStartPosition, WordEndPosition, GetTextRange) so that a keyboard macro like GoToFrameNumberUnderCursor would work without selecting the number first which is very cumbersome.
I think macro function should not be too complicated. In fact, your requested functions are already existing somewhere. You can get the current script's handler like this:

script = avsp.GetWindow().currentScript

And then, hundreds of functions are available. See this link:
http://www.yellowbrain.com/stc/index.html

You can read 'Selection & Positioning' and 'Text setting and retrieval' firstly.

wOxxOm
24th June 2011, 19:29
insanely awesome, thanks... but avsp class has no GetWindow function - will it be added in future?

ANGEL_SU
25th June 2011, 04:27
... but avsp class has no GetWindow function - will it be added in future?
Sorry, i make a mistake. You can't call avsp.GetWindow() in macros, because it is only exposed for tools.

A tool script is very similar to a macro, except that you need to put .py file in 'tools' folder and define an entry function named avsp_run(). And then, write you code underneath this function.

e.g. a GoToFrameNumberUnderCursor.py will be like:

def avsp_run():
script = avsp.GetWindow().currentScript
cursorpos = script.GetCurrentPos()
startpos = script.WordStartPosition(cursorpos, True)
endpos = script.WordEndPosition(cursorpos, True)
frametext = script.GetTextRange(startpos, endpos)
avsp.ShowVideoFrame(int(frametext))

Anyway, in next version, GetWindow() will be available in macros.

wOxxOm
25th June 2011, 08:08
wow, thanks, a whole world of possibilities is already here! It indeed seems like there's no need to extend avsp macros class except for GetWindow().

p.s. at long last I've made PasteVideoCursorXY.py that pastes relative mouse coordinates into script :3 IMO this one and pasteColorAtCursor might be incorporated into AvsP.

Zarxrax
29th June 2011, 17:49
Really really big update here, but I'll just list the major points:

Version 2.2.0
- Reorganized several menus and changed some default settings to improve usability.
- Tabs can be repositioned and renamed.
- Scripts can be encoded without saving.
- Improvements to macros.
- When moving cursor on the preview, show pixel information even if the preview isn't focused.
- Frame number textbox can accept mm:ss format, and you can input -1 to go to the last frame.
- User sliders can have their values rescaled.
- MANY minor bugfixes and improvements

Info on the macro enhancements can be seen in the new examples and in the macros_readme.txt.

User slider values rescaling works by adding a + or - character to the sliders label.
Tweak([<"hue +", -180, 180, -180>]) > This will rescale the slider to use a value of 0 to 100 rather than -180 to 180.
Tweak([<"hue -", -180, 180, -180>]) > This will rescale the slider to use a value of -100 to 100 rather than -180 to 180.
This currently only works for user sliders inserted directly into the script (Edit>Insert>Insert user Slider)

Youka
29th June 2011, 18:43
One request:
I've done a filter, that can throw an error during frame filtering (in 'GetFrame' function). In MPC i'll see the error message, in AvsPMod, like in AvsP, i'm getting this error window:
Traceback (most recent call last):
File "AvsP.pyo", line 7380, in OnMenuVideoRefresh
File "AvsP.pyo", line 11075, in ShowVideoFrame
File "AvsP.pyo", line 11662, in PaintAVIFrame
File "pyavs.pyo", line 343, in DrawFrame
File "pyavs.pyo", line 321, in _GetFrame
File "avisynth.pyo", line 332, in GetReadPtr
ValueError: NULL pointer access
Possible to fix that?

Dogway
29th June 2011, 21:07
-Also I though about context highlighting, for example:
mask=mmask()
Here mask is a variable, there is no reason to be highlighted. The same when used as parameters. This can be paired with the last request from this post (http://forum.doom9.org/showthread.php?p=1506110#post1506110)

-Also changing tab name, changes script name¿?

-when using autocomplete just before a function, the loaded function substitutes the older one.

-when frame skippin or jumping, video doesn't update upon script changes (until you hit f5, it keeps processing the old version of your script) (on v.2.1.7.1)
Im aware this is fixed in 2.2.0 ticking "Refresh preview automatically" but that produces you can't click on video preview anymore if you don't want to render preview, in this way you can't also navigate inside the preview when in zoom mode, or click over to focus video, or simply closing the context menu, etc, it should be a separate option...

-avspmod at launch complains about SSIM.0.25.dll. What's the problem with this? the points? aren't they alphanumeric?

-avspmod still has a very unstable performing when taking out plugins. It just doesn't want to launch with next message:
[Sun Jul 10 14:38:23 2011]
Traceback (most recent call last):
File "run.py", line 6, in <module>
File "F:\AvsPmod\src\AvsP.py", line 13810, in main
File "wx\_core.pyo", line 7981, in __init__
File "wx\_core.pyo", line 7555, in _BootstrapApp
File "F:\AvsPmod\src\AvsP.py", line 13800, in OnInit
File "F:\AvsPmod\src\AvsP.py", line 4143, in __init__
File "F:\AvsPmod\src\AvsP.py", line 4857, in defineFilterInfo
TypeError: 'set' object does not support item deletion
However if I ticked back the check in the function of the function definition of these plugins, I could then take them out, and avpsmod could launch.

-crop editor doesn't allow input of more of 3 values.

-new feature: "Update avspmod". Useful for reloading plugins when you are taking them out/in, cleaning cache, or just for fixing the program UI drawing when it gets bugged due to any filter (without loosing actual project session)

-encoding creates a new script in my source folder

-Add to the video context menu, "copy avisynth error to clipboard"

-Can't go to time based input frame when video isn't cached.

-Can't go to frame from input frame box after having an avisynth error. It forces me to clean cache, really annoying and unconvenient when you are previewing synced tabs, a range of frames or just have a very slow script. (Actually this is another side effect of the 6th issue listed in this post)

-Customizeable yuv to rgb procedure (for when saving images or video preview, to take advantage of the newer filters) (You have converttorgb32, ResampleHQ, Dither, etc)

-Drag&Drop video preview to a tab to work over a cached source.

-Option to save image as "name of source"(+framenumber)

-When releasing video from cache, or losing focus on avspmod, frame input box refreshes (you lose whatever you wrote down there)

-Everytime you add a new version of the plugin, or replace them by an old one, even with the same filename, autocompletion keywords get reseted for that plugin.
Easy example: uncheck an autocompletion entry for a given plugin. Exit avspmod, move out plugin, start avspmod, exit avspmod, put back plugin, start avspmod, autocompletion resetted

-Ability to lock a tab (in order to avoid video preview update when misclicking)

-By default the preset input for autocompletion list (Tab hotkey) is overriden by Indent Selection (Also Tab hotkey) therefore it can be said it is a hidden feature. To enable it, change the Indent Selection hotkey/shorcut.

-Shortcuts are not stored in options.dat

-Options.dat cannot be imported succesfully until you manually edit the new avspmod version inside the file.

-new bug since the 15-12-11 update (and thus v.2.2.1 on). Open crop editor triggers the next error message:
Traceback (most recent call last):
File "F:\AvsPmod\src\AvsP.py", line 4497, in OnIdle
File "F:\AvsPmod\src\AvsP.py", line 8558, in OnMouseMotionVideoWindow
AttributeError: 'NoneType' object has no attribute 'LeftIsDown'

SubJunk
29th June 2011, 21:46
Thanks a lot for the update, repositioning tabs is something I meant to request :D

wOxxOm
29th June 2011, 22:56
- When moving cursor on the preview, show pixel information even if the preview isn't focused.
might be handy if the info is kept after pressing pane switch hotkey / typing - probably just add Line/Col at the start of custom statuses and make this combined statusbar shown permanently.

just found out that avs definition importer doesn't like comments /* */ inside function header

SubJunk
29th June 2011, 23:18
Seems like maybe this update changed the preview caching, it seems like the preview pane gets cached after the second time now instead of the first, e.g. I preview one tab, go to another one, then go back to the first one and it reloads, but after that second load it doesn't do it again.

Caroliano
30th June 2011, 02:24
Feature request: implement something like AVSMeter (http://doom10.org/index.php?topic=1817.0) in tools menu. Maybe a button somewhere down in the player. Maybe even a keyboard shortcut! And negative fps metering! :p

I often want to know how slow is my script, and how the changes I do affect the speed. Inside AvsP, I can only feel it imprecisely by FFing the video preview.

Thanks a lot for the update, repositioning tabs is something I meant to request :D
I wanted to say the same!

:thanks:

Zarxrax
30th June 2011, 13:34
Caroliano: there is an avs plugin that can be used for this purpose: http://home.pages.at/kassandro/AvsTimer/AvsTimer.htm

wOxxOm
1st July 2011, 13:22
definition importer also fails at parsing dither.avsi (awesome stuff (http://forum.doom9.org/showthread.php?p=1386559#post1386559) btw) because of this:
Function Dither_undef ()
{
return (Dither_undef2 ())

Function Dither_undef2 (val "undef")
{
return (undef)
}
}

Gavino
1st July 2011, 14:56
Function Dither_undef ()
{
return (Dither_undef2 ())

Function Dither_undef2 (val "undef")
{
return (undef)
}
}
The Avisynth parser (I think by a quirk more than by design) allows nested function definitions, but there's no point because all functions (even those defined inside another) have global scope.

In any case, the Dither_undef function can be written simply as
function Dither_undef () {}
(see here).

From v2.60, the internal function Undefined (http://avisynth.org/mediawiki/Internal_functions/Control_functions)() can be used.

Youka
1st July 2011, 16:55
One request:
I've done a filter, that can throw an error during frame filtering (in 'GetFrame' function). In MPC i'll see the error message, in AvsPMod, like in AvsP, i'm getting this error window:
Traceback (most recent call last):
File "AvsP.pyo", line 7380, in OnMenuVideoRefresh
File "AvsP.pyo", line 11075, in ShowVideoFrame
File "AvsP.pyo", line 11662, in PaintAVIFrame
File "pyavs.pyo", line 343, in DrawFrame
File "pyavs.pyo", line 321, in _GetFrame
File "avisynth.pyo", line 332, in GetReadPtr
ValueError: NULL pointer access
Possible to fix that?
*push*

wOxxOm
2nd July 2011, 18:53
It may be related to another error reporting issue:
AvsP instantly and silently closes after launching if any of .avsi autloading scripts has a syntax error.
The log is non-informative either: {...skipped...} File "AvsP.pyo", line 4972, in getFilterInfoFromAvisynth

Also, syntax highlighting is causing 0.5s delays when typing inside "quotes" or blockcommenting via Ctrl-Q, the avs-script has about 100 lines.

Also, with syntax highlighter disabled AvsP doesn't show video after being restarted, and throws an error:
File "AvsP.pyo", line 1572, in OnKeyUp
AttributeError: 'AvsStyledTextCtrl' object has no attribute 'nonBraceStyles'

P.S. How to set up a debug/compile environment for AvsP? I'd like to trace such issues myself so that it'll be fixed sooner.

ANGEL_SU
3rd July 2011, 20:49
... syntax highlighting is causing 0.5s delays when typing inside "quotes" or blockcommenting via Ctrl-Q, the avs-script has about 100 lines.
For conveniently tracing this, please upload your script.
... with syntax highlighter disabled AvsP doesn't show video after being restarted, and throws an error:
File "AvsP.pyo", line 1572, in OnKeyUp
AttributeError: 'AvsStyledTextCtrl' object has no attribute 'nonBraceStyles'
Fixed. Thanks for your report.

How to set up a debug/compile environment for AvsP?[/B] I'd like to trace such issues myself so that it'll be fixed sooner.
A standard way is to install Python firstly, and then install 2 of python module - wxPython and py2exe. Before double-clicking avsp.py to run the program, copy tools folder, macro folder, help folder and filterdb.dat into src folder. To make a distribution, just double-click avsp_build.py to build it.
Another simple way is just updating /lib/library.zip with the latest/mod py files and you don't need to install anything.

wOxxOm
3rd July 2011, 20:57
thank you, I'll _try_ to look into it myself :3, meanwhile a typical script looks like this (http://pastebin.com/iCDhcaGa), with a few hundred bookmarks (like this scenecut list (http://pastebin.com/UDvLiW07))

ANGEL_SU
3rd July 2011, 21:21
Ok, I see the problem. It seems to have the correlation with 'Incomplete string' of highlighting. Before solving this problem, please goto Options|Fonts and colors|Advanced and disable this option.

wOxxOm
3rd July 2011, 21:25
Ah, I just gonna have that option permanently disabled :) thank you

Yellow_
3rd July 2011, 22:03
Excellent!, latest version of AVSPmod will give a Video Preview on Linux under Wine, 2.2.0 is the first version to do this, awesome. Don't know what you did but great. :-)

But I'd also like to add a bug report, which started occurring after about version 2.1.0 again it's on Linux with Wine but I'd like to mention it, it's specific to brackets.

I get a crash if I delete a bracket, but only if that bracket is associated with a 'known' function ie highlighted light green like ConvertToRGB(), or LoadPlugin(...), deleting the last bracket causes AVSPmod to crash but it doesn't crash deleting a bracket off an unrecognised command, like FFmpegSource2, or Dither(...) again this is just on Linux under Wine.

On early versions of AVSPmod pre 2.1.0, on Linux with Wine deleting brackets doesn't cause a crash.

I appreciate that trying to bug hunt on Linux + Wine may be considered to be a step too far, but with video preview now working AVSPmod is even more usable on Linux. Thanks for the continued advances being made.

ANGEL_SU
4th July 2011, 11:11
Excellent!, latest version of AVSPmod will give a Video Preview on Linux under Wine, 2.2.0 is the first version to do this, awesome. Don't know what you did but great. :-)...
A mere coincidence. I know nothing about Wine.