06-19-2003, 02:33 PM
|
Free Member
|
|
Join Date: Sep 2002
Location: Northfield, IL
Posts: 102
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Here is a slight mod to the Optimal Script I have been testing:
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\MPEG2Dec3.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\decomb.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\GripFit_YV12.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\STMedianFilter.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\asharp.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\undot.dll")
LoadPlugin("C:\KVCD\LoadPluginEx\LoadPluginEx.dll" )
LoadPlugin("C:\KVCD\LoadPluginEx\DustV5.dll")
LoadPlugin("C:\KVCD\LoadPluginEx\Dup.dll")
MaxTreshold = 1.50
scd_trigger = 30 # Scene change trigger value.
nf = 0 # Current frame.
Mpeg2Source("J:\DVArchive\Export\The Simpsons - Homer the Heretic.d2v")
Limiter()
FieldDeinterlace()
undot()
asharp(2, 4)
GripCrop(480, 480, source_anamorphic=false)
GripSize(resizer="BicubicResize")
STMedianFilter(8, 32, 0, 0 )
MergeChroma(blur(MaxTreshold))
MergeLuma(blur(0.2))
ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf > 2.5 ? asharp( -(fmin((nf/30), 1)), 0 ) : \
TemporalSoften(2,7,7,3,2) ")
ScriptClip("nf > scd_trigger ? asharp( -2,0) : asharp(0,0) ")
GripBorders()
Limiter()
function fmin(float f1, float f2) {
return (f1<f2) ? f1 : f2
}
ConvertToYuY2
SpaceDust()
Dup()
Is there a better alternative? I am trying to encode animation from broadcast TV. The current optimal script produces visable artifacts in white that have black next to it. (i.e. Homer Simpson's eyes).
I had a great script that worked with Avisynth 2.08 but my master plan it to have ONE script with a couple of lines that can be turned on or off. The idea would be to have the majority of the script work for everything.
That is why I am starting from the Optimal Script. Using that premise are there any ideas on what filter or two could be added to get better compression and better sharpness?
I was using
BlockBuster(method="noise", detail_max=7, variance=0.5, seed=1)
along with Cnr2 and PixieDust. PixieDust takes too long so I am OK with SpaceDust.
I am using the LoadPluginEx so I don't mind using 2.0x filters but I want to minimize the conversion of the clip between ConvertToYuY2 and ConvertToYV12. According to what I read at the Avisynth site you can bascially convert 2-3 times and then there will be quality loss that is visable.
Knowing YV12 will be fastest I would like to use that to my advantage.
So... I am struggling with filter placement, filter selection and keeping as close to the Optimal Script as possible. (It works great for DVD source).
Grantman
|
Someday, 12:01 PM
|
|
Site Staff / Ad Manager
|
|
Join Date: Dec 2002
Posts: 42
Thanks: ∞
Thanked 42 Times in 42 Posts
|
|
|
06-19-2003, 02:42 PM
|
Free Member
|
|
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Hi Grantman,
If the cartoons are 29.97fps, try the current script but change the GOP size to 18.
If the cartoons were originally made as FILM, then you should add Telecide() and Decimate(), encode at 23.976fps and change the GOP size to 12.
-kwag
|
06-19-2003, 05:20 PM
|
Free Member
|
|
Join Date: Sep 2002
Location: Northfield, IL
Posts: 102
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
How can you tell for sure if something was originally film?
I did open it up in VirtualDub and check each frame. In a different post I displayed the pattern.
http://www.kvcd.net/forum/viewtopic....140&highlight=
Basically it was mainly progressive frames with an occational interlaced frame. Sometimes there would be 20 progressive frames in a row.
This was captured by ReplayTV as supposedly Interlaced. It was from Analog Cable. It is The Simpsons, SpongeBob, Pokemon & Yu-Gi-Oh.
I have only dove into The Simpsons.
I did not know cartoons were in FILM unless they were at the theatre?
BTW... What effect on the picture can I expect by changing the GOP to 18. After testing I want to know EXACTLY what to look for.
Thanks Kwag...
Grantman
|
06-19-2003, 05:25 PM
|
Free Member
|
|
Join Date: Jan 2003
Location: Puerto Rico
Posts: 423
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Hey man, you got the old replace Scriptclip the new line sould read like that;
Quote:
Quote:
Originally Posted by Grantman
Here is a slight mod to the Optimal Script I have been testing:
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\MPEG2Dec3.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\decomb.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\GripFit_YV12.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\STMedianFilter.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\asharp.dll")
LoadPlugin("C:\KVCD\Versions\AviSynth 2.5\plugins\undot.dll")
LoadPlugin("C:\KVCD\LoadPluginEx\LoadPluginEx.dll" )
LoadPlugin("C:\KVCD\LoadPluginEx\DustV5.dll")
LoadPlugin("C:\KVCD\LoadPluginEx\Dup.dll")
MaxTreshold = 1.50
scd_trigger = 30 # Scene change trigger value.
nf = 0 # Current frame.
Mpeg2Source("J:\DVArchive\Export\The Simpsons - Homer the Heretic.d2v")
Limiter()
FieldDeinterlace()
undot()
asharp(2, 4)
GripCrop(480, 480, source_anamorphic=false)
GripSize(resizer="BicubicResize")
STMedianFilter(8, 32, 0, 0 )
MergeChroma(blur(MaxTreshold))
MergeLuma(blur(0.2))
ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf > 2.5 ? asharp( -(fmin((nf/30), 1)), 0 ) : \
TemporalSoften(2,7,7,3,2) ")
ScriptClip("nf > scd_trigger ? asharp( -2,0) : asharp(0,0) ")
conditionalfilter( last, asharp(-2,0), last, "nf", ">", "scd_trigger" )
GripBorders()
Limiter()
function fmin(float f1, float f2) {
return (f1<f2) ? f1 : f2
}
|
|
|
All times are GMT -5. The time now is 02:58 PM — vBulletin © Jelsoft Enterprises Ltd
|