Log in

View Full Version : Fritz Photo


Pages : 1 2 [3] 4

Archimedes
30th September 2010, 18:03
Any chance you can add VCMohan's Seamer Resizer? http://forum.doom9.org/showthread.php?t=135735
I already have implemented this plugin in the past. But then I decide to delete it (make no sense for me, to use it). :D

However, it's easy to implement:

1. Copy the plugin to "Fritz Photo\plugins\Seamer" directory.
2. Copy the following scripts to "Fritz Photo\Templates\Seamer" directory (extension should be "avs").

TRSeamer.avs:
# ==============================================================================
# http://forum.doom9.org/showthread.php?t=135735
# ==============================================================================
x = 800
y = 600
peak = False
alt = False
# ==============================================================================
# x = True, False, Beginner, Desired width of output frame | int
# y = True, False, Beginner, Desired height of output frame | int
# peak = True, False, Beginner, Whether to use highs or lows as seam carving | bool, {False, True}
# alt = True, False, Beginner, Whether seams are to be affected alternately along width and height | bool, {False, True}
# ==============================================================================

LoadPlugin("plugins\Seamer\Seamer.dll")

Import("lib\FritzPhoto\FritzPhoto.avs")

isYV12() ? YV12toRGB32() : NOP()
TRSeamer(x=x, y=y, peak=peak, alt=alt)

WSSeamer.avs:
# ==============================================================================
# http://forum.doom9.org/showthread.php?t=135735
# ==============================================================================
x = 800
y = 600
peak = False
alt = False
# ==============================================================================
# x = True, False, Beginner, Desired width of output frame | int
# y = True, False, Beginner, Desired height of output frame | int
# peak = True, False, Beginner, Whether to use highs or lows as seam carving | bool, {False, True}
# alt = True, False, Beginner, Whether seams are to be affected alternately along width and height | bool, {False, True}
# ==============================================================================

LoadPlugin("plugins\Seamer\Seamer.dll")

Import("lib\FritzPhoto\FritzPhoto.avs")

isYV12() ? YV12toRGB32() : NOP()
WSSeamer(x=x, y=y, peak=peak, alt=alt)

Will be part of the next update.

Archimedes
5th November 2010, 11:19
Updated the plugins "SmoothAdjust" and "FFmpegSource2". Added the plugin "Seamer".

Terka
8th November 2010, 13:18
Archimedes,
what about the mvtools ;)
plz :)

Archimedes
21st January 2011, 00:25
Changed to version 2.6.0 of AviSynth. Fixed the chroma shift problem, when doing color conversions (from RGB32 to double sized YV12 and vice versa). :)

Added language support for the template directories and the parameters in script inspector (while the german translation for the template folders are ready, i need some time to finish the translation for the parameter descriptions).

Added "NLMeansCL" to the denoise section.

markanini
6th February 2011, 02:28
Eedi3 latest version doesnt seem to like avisynth 2.6? I keep getting an error about eedi3 failing to load. My dirty fix was replacing eedi3.dll w/ unknown older version.

Archimedes
7th February 2011, 14:21
Works fine here with the latest alpha release (http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/AVS%202.6.0%20Alpha%202%20%5B090927%5D/).

markanini
7th February 2011, 23:22
I'm using SET's lasest 2.6 MT build actually.

markanini
8th February 2011, 18:48
I guess I'll have to keep my old EEDI3 version as I'd hate to choose between MT functionality and FritzPhoto.

A question about the resize templates; is there any way to input decimal values instead of absolute values?

PS: Please consider adding a template for automttap3. In my testing scaling a megapixel original to web-size I found it resolved fine texture in a flattering way that spline and lanczos couldn't do.

PS 2: Same problem with warpsharp.dll, again replaced it with unknown different version from the attic of my harddrives to be functional...

Archimedes
10th February 2011, 00:20
A question about the resize templates; is there any way to input decimal values instead of absolute values?

PS: Please consider adding a template for automttap3. In my testing scaling a megapixel original to web-size I found it resolved fine texture in a flattering way that spline and lanczos couldn't do.
Will be part of the next update.

Same problem with warpsharp.dll, again replaced it with unknown different version from the attic of my harddrives to be functional...
Strange. Works also fine here. What error message do you get?

markanini
10th February 2011, 00:30
Will be part of the next update.


Strange. Works also fine here. What error message do you get?
:D


It's a generic "failed to load xyz.dll".

Archimedes
10th February 2011, 02:14
When you load the plugins outside of Fritz Photo (e. g. with VirtualDub), do you receive the same error messages?

markanini
10th February 2011, 03:02
Tried load both plugins in Avidemux AVS proxy and they failed to load in both cases. I'll uninstall SETs 2.6 build and install the vanilla 2.6 build and see what happens.

Archimedes
10th February 2011, 15:58
Here is the template (Fritz Photo script) for the automttap3 function.

1. Save the automttap3 function (http://forum.doom9.org/showthread.php?p=1211873#post1211873) to lib\automttap3\automttap3.avs in the program directory.

2. Save the following script to Templates\Resize\automttap3.avs in the program directory.

# ==============================================================================
# http://forum.doom9.org/showthread.php?p=1211873#post1211873
# ==============================================================================
Width = 800
Height = 600
mtaps3 = 1
thresh = 256
ss_x = 1.0
ss_y = 1.0
KeepAspectRatio = True
Oversize = False
ForceResize = False
# ==============================================================================
# Width = True, False, Beginner, Width | int
# Height = True, False, Beginner, Height | int
# mtaps3 = True, False, Beginner, Amount of taps | int
# thresh = True, False, Beginner, Threshold | int, [0, 256]
# ss_x = True, False, Intermediate, Horizontal supersampling factor | float
# ss_y = True, False, Intermediate, Vertical supersampling factor | float
# KeepAspectRatio = True, False, Beginner, Keep aspect ratio | bool, {False, True}
# Oversize = True, False, Intermediate, Ensures that the resized image is even or greater than width x height | bool, {False, True}
# ForceResize = True, False, Beginner, Force resize (enlargement mode) | bool, {False, True}
# ==============================================================================

LoadPlugin("plugins\GScript\GScript.dll")
LoadPlugin("plugins\MaskTools 2\mt_masktools-26.dll")

Import("lib\automttap3\automttap3.avs")
Import("lib\FritzPhoto\FritzPhoto.avs")

isYV12() ? GEval("""
if (ForceResize) {
fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize)
}
else {
Oversize == false ? Width < (last.Width / 2) || Height < (last.Height / 2) ? fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize) : NOP() : Width < (last.Width / 2) && Height < (last.Height / 2) ? fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize) : NOP()
}
""") : GEval("""
if (%%KeepAlphaChannel%%) {
fp_alpha = Crop(0, 0, -(last.Width % 2), -(last.Height % 2))
}
else {
NOP()
}
if (ForceResize) {
RGB32toYV12().fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize)
}
else {
Oversize == false ? Width < last.Width || Height < last.Height ? RGB32toYV12().fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize) : NOP() : Width < last.Width && Height < last.Height ? RGB32toYV12().fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize) : NOP()
}
if (%%KeepAlphaChannel%% && isYV12()) {
fp_clip1 = YV12toRGB32()
fp_alpha.ShowAlpha("YV12").PointResize(fp_alpha.Width * 2, fp_alpha.Height * 2)
fp_automttap3(Width=Width, Height=Height, mtaps3=mtaps3, thresh=thresh, ss_x=ss_x, ss_y=ss_y, KeepAspectRatio=KeepAspectRatio, Oversize=Oversize)
MergeARGB(last.PointResize(last.Width / 2, last.Height / 2), fp_clip1, fp_clip1, fp_clip1)
}
else {
NOP()
}
""")

function fp_automttap3(clip input, int "Width", int "Height", int "mtaps3", int "thresh", float "ss_x", float "ss_y", bool "KeepAspectRatio", bool "Oversize") {
KeepAspectRatio == True ? GEval("""
Width = (Oversize == true) ? Width + (Width % 2) : Width
Height = (Oversize == true) ? Height + (Height % 2) : Height
Width = (Oversize == false) ? (Round(Float(Width) * input.Height / input.Width) <= Height) ? Width : Round(Float(Height) * input.Width / input.Height) : (Round(Float(Width) * input.Height / input.Width) < Height) ? Round(Float(Height) * input.Width / input.Height) : Width
Height = Round(Float(Width) * input.Height / input.Width)
""") : GEval("""
NOP()
""")
Width = (ss_x > 1.0) ? Round(Float(Width) * ss_x / 2) * 2 : Width
Height = (ss_y > 1.0) ? Round(Float(Height) * ss_y / 2) * 2 : Height
Width = Width - (Width % 2)
Height = Height - (Height % 2)
input.PointResize(input.Width / 2, input.Height / 2)
automttap3(dx=Width, dy=Height, mtaps3=mtaps3, thresh=thresh)
PointResize(last.Width * 2, last.Height * 2)
MergeChroma(input.YV12ToRGB32().Spline36Resize(Width, Height).RGB32ToYV12(), 1)
}

3648 x 2736 --> 640 x 480, Spline36Resize >> (http://img715.imageshack.us/i/z3hs1n8ns1t0640x0480spl.jpg/)
3648 x 2736 --> 640 x 480, automttap3 >> (http://img140.imageshack.us/i/z3hs1n8ns1t0640x0480aut.jpg/)

markanini
10th February 2011, 17:02
Thanks Archimedes!
So I've been spending the last hour seeing if I can sort out my issues. Going back and forth between sf.net, XhmikosR and SEt 2.6 build and avisynth plugin directory renamed to avoid issue with incomatible plugins and autoloading scripts. I made the following findings:
Warpsharp works fine, just my plugins folder causing trouble I guess.
EEDI3 failes to load with all builds.

Archimedes
2nd March 2011, 21:43
Added drag-and-drop functionality to the AviSynth Scripts page (moving scripts from the templates to the job list and vice versa). Ordering the job list with drag-and-drop operations is also possible now.

Added "Refresh image before filtering with the selected script" and "Refresh image after filtering with the selected script" to the context menus in the preview windows. Should be self-explanatory. ;)

Archimedes
17th March 2011, 17:20
Simplified the resize templates and added the possibility to enter scaling factors (in percent). With the new parameter "Unit" you can define, whether the parameters "Width" and "Height" are treated as pixel or percent values.

I've also added the new "ResampleHQ" (http://forum.doom9.org/showthread.php?t=160038) plugin.

Archimedes
28th March 2011, 14:15
Added more encoding options for the JPEG format:

- Color Space (RGB, Grey Scale, YCbCr, CMYK, YCbCrK)
- Chroma Subsampling (4:1:1, 4:2:2, 4:4:4)
- DCT Method
- Optimal Huffman Table (more compression)

markanini
28th March 2011, 18:08
Nice to have more options to set. Thanks!

Archimedes
1st April 2011, 10:02
Some things I'd like to see in future...

- Steady preview, so you can see filter setting changes in realtime etc.
Viewing changes in real-time is a little bit problematic because a lot of AviSynth filters are very slow. TNLMeans, for example, need a few minutes to calculate. No way for viewing changes in real-time. That's why I prefere the solution with the refresh button.

Some things I'd like to see in future...

- Changing the zoom of the before/after compare shouldn't process the image again but rescale/crop a buffered filtered image (much faster)
I've changed that. Now it is possible to zoom in and out without processing the image again. Will be part of the next update.

Archimedes
8th April 2011, 13:15
- Changed zoom function in the preview windows. Now you can zoom in and out without processing the image again.
- Fixed a memory leak when processing AviSynth scripts.
- Added an additional crop page, where you can rotate and crop images in front of any filtering.
- Updated ResampleHQ plugin and script.

Terka
12th April 2011, 12:48
Archimedes, nice work in summary. Have one suggestion (besides mvtools implementing ;)): using key 'TAB' and 'SHIFT-TAB' to switch between values when editing parameters.

Thank you, T.

Archimedes
12th April 2011, 15:40
Changed and will be part of the next update. Tab and enter key now switch between the values. Thanks for pointing out that.

Archimedes
12th April 2011, 16:52
There you go. Will upload the package immediately.

Terka
21st April 2011, 15:19
Thank you!

Yobbo
15th May 2011, 14:35
This thing's stupid, I can never get it to work. I get "avisynth open error - there is no function ConvertToYV24"... If I try using ImmaRead I get "haven't sent MAGICK_HOME variable" blah blah. SO frustrating.

Archimedes
16th May 2011, 12:25
Program needs AviSynth 2.6 or higher and (when using the Immaavs plugin) an environment variable MAGICK_HOME = <Fritz Photo program directory>\dll\ImageMagick as described in the first post.

Archimedes
16th July 2011, 14:59
Updated the plugins Defish, ResampleHQ, NNEDI3 and SmoothAdjust and changed some templates. Added german translation for the parameter descriptions (need to be tested).

naoan
14th October 2011, 07:04
Hi, this is very useful app, but I got avisynth runtime error after processing 11 images and it always happen, any workaround for this?

markanini
14th October 2011, 07:18
Which Avisynth build are you running?

naoan
14th October 2011, 08:24
Latest 2.6 alpha (110525), it seems the problem is with dfttest, and it's not exactly 11 images before it crash. Sometimes I could process all intended files (was 46) sometimes it crash at only 9.

markanini
14th October 2011, 08:43
Try SETs 2.6 MT build.

naoan
14th October 2011, 09:04
I used that one before trying official build, it crash more often on Fritz Photo but never on normal encoding.

Archimedes
14th October 2011, 15:25
Did a quick test with 212 images from a digital camera (original resolution). No problems here (latest alpha release of AviSynth) with dfttest.

What is the task manager telling you while processing? Do you have enough memory?

naoan
14th October 2011, 16:37
Fritz use up to 100MB of memory, going down to 30MB and up again for each Image, I have 4GB of ram so it doesn't seems to be the problem. I just tried avisynth set build and it processed up to 31 image before throwing this error :

http://i.imgur.com/RflRa.png

My script is simple greyscale and dfttest, using sigma 256 since it's a comic scans, maybe that's the problem?

Archimedes
22nd November 2011, 14:56
Is dfttest the only case, where you get such error message? Try other plugins and make a test with no filtering (only graphic format conversion).

chainring
23rd November 2011, 00:51
I'm having a problem on Win7 x64 where none of the tabs have labels and most of the windows are blank. In the preview window, I have to hit "Refresh" before the images will show up. Anything special for running on 64 bit?

naoan
23rd November 2011, 16:35
Is dfttest the only case, where you get such error message? Try other plugins and make a test with no filtering (only graphic format conversion).

I just tried fft3dfilter and have the same problem as dfttest after some image. Lsfmod, Msmooth and plain conversion (jpeg to png) worked without a hitch though.

Archimedes
29th November 2011, 23:37
Fritz Photo run all AviSynth scripts in thread. If there is a crash, you normally will receive the same crash (the same error message) when starting the script outside of the program (e. g. in Virtual Dub).

Don’t’ know exactly, what the problem is here. I will provide you with another exe file for further testing.

Archimedes
29th November 2011, 23:46
I'm having a problem on Win7 x64 where none of the tabs have labels and most of the windows are blank. In the preview window, I have to hit "Refresh" before the images will show up. Anything special for running on 64 bit?
The program was developed with Borland Delphi 2005 Personal Edition (32 bit). Never tested it in a 64 bit environment. I will make some tests on 64 bit systems. ;)

Regarding the preview window, this is the normal behavior, you allways have to hit the refresh button, before seeing pictures.

chainring
30th November 2011, 07:57
The program was developed with Borland Delphi 2005 Personal Edition (32 bit). Never tested it in a 64 bit environment. I will make some tests on 64 bit systems. ;)

Regarding the preview window, this is the normal behavior, you allways have to hit the refresh button, before seeing pictures.Cool, thank you for looking into the 64bit thing.

I did try it in a Win XP 32bit virtual machine and all is good.

Archimedes
3rd December 2011, 13:54
I just tried fft3dfilter and have the same problem as dfttest after some image. Lsfmod, Msmooth and plain conversion (jpeg to png) worked without a hitch though.
Both filters (FFT3DFilter and dfttest) are using the FFTW library (but each another version). But do not know, wether it has to do with your problems. :D

However, here is a test (debug) version. Please copy the file to the program directory of Fritz Photo, start it and try again.

http://www.mediafire.com/?8c1ma68vzzip8z8

naoan
4th December 2011, 01:02
Both filters (FFT3DFilter and dfttest) are using the FFTW library (but each another version). But do not know, wether it has to do with your problems. :D

However, here is a test (debug) version. Please copy the file to the program directory of Fritz Photo, start it and try again.

http://www.mediafire.com/?8c1ma68vzzip8z8

Thanks, I'll report back after I've done testing.

markanini
19th December 2011, 16:21
Could you possibly add 'show' parameter to the Smoothadjust plugins, Archimedes?

Archimedes
28th September 2012, 12:35
- Tab sheet captions now visible under Windows 7, 64 bit.
- Added dynamic script environment switch to the ini file.
Delete or not delete the script environment variable after each AviSynth process, that's the question (it is deactivated now by default).
- Updated the plugins and changed some templates.

markanini
16th November 2012, 19:18
I still find your tool indispensable. Kindly requesting the addition of chroma kernel parameters in the ResampleHQ script.

chainring
17th November 2012, 05:09
Looks like Wikiupload has lost the files. Links in the first post are not working.

markanini
17th November 2012, 14:29
Here's a mirror of the exe installer:http://depositfiles.com/files/27azuxvr9

chainring
17th November 2012, 18:15
Here's a mirror of the exe installer:http://depositfiles.com/files/27azuxvr9
Thank you, markanini!

Archimedes
19th November 2012, 21:48
I still find your tool indispensable. Kindly requesting the addition of chroma kernel parameters in the ResampleHQ script.
Thanks. ResampleHQ script works in the RGB32 color space, so I’m assuming, chroma_kernel didn’t work for that.

Seems, WikiUpload has deleted my files. Will upload the files to another host.

Soulhunter
9th December 2012, 10:33
As hosting seems problematic, mind if I host it on my server?