View Full Version : DeInterlacing, frameserving and filters?
php111
18th July 2008, 20:24
Hi everyone, how is everyone doing? I have some questions below.
1.) How do I DeInterlace using TomsMoComp? I will post normally what should have in a script.
LoadPlugin(for DGDecode.dll)
LoadPlugin(for TomsMoComp.dll)
MPEG2Source(for my .d2v)
Now TomsMoComp(what goes here?) I been told something like (0,5,0) or (0,5,1) Right?
Is DeComb similar to FieldDeInterlace? How do I write a script to frameserve? How do I filter with AviSynth? Well thank you for any replies!
neuron2
18th July 2008, 21:13
Read the relevant documentation. It's all very well described.
php111
18th July 2008, 21:16
Read the relevant documentation. It's all very well described.
Thank you for your reply. I did read the documentation.
You might want to look at this thread: http://forums.divx.com/forum/viewTopic.php?id=6067
I read the documentation but didn't go so well. I loaded them up with questions that they didn't reply back...Lol
neuron2
18th July 2008, 21:51
OK, let's copy over your last post from DivX forum:
Here we go........I mean business......
return clip.TomsMoComp(-1,5,1)
Of course replace the file and directory names with your own and supply the desired integer
values for parameters.
What parameters do I use?
TomsMoComp Parm list:
TomsMoComp(TopFirst, SearchEffort, VerticalFilter)
All the values are integer, 0=no, 1=yes:
TopFirst - assume the top field, lines 0,2,4,... should be displayed first.
The default is the supposedly more common BottomFirst (not for me). You may
have to bring it up in Virtualdub and look at a few frames to see which
looks best. (0=BottomFirst, 1=TopFirst)
What the hell do I do here? If you read the documentation, you would have seen this:
TomsMoComp Parm list:
TomsMoComp(TopFirst, SearchEffort, VerticalFilter)
All the values are integer, 0=no, 1=yes:
TopFirst - assume the top field, lines 0,2,4,... should be displayed first.
The default is the supposedly more common BottomFirst (not for me). You may
have to bring it up in Virtualdub and look at a few frames to see which
looks best. (0=BottomFirst, 1=TopFirst)
New - setting TopFirst=-1 will automatically pick up whatever Avisynth reports.
SearchEffort - determines how much effort (CPU time) will be used to find
moved pixels. Currently numbers from -1 to 30 with 0 being practically
just a smarter bob and 30 being fairly CPU intensive.
For Avisynth only, a value of -1 is supported. In this case the TomsMoComp
filter will not deinterlace but instead assume you already have progressive
frames but want to double the vertical size. I found by accident that this could
give slightly better apparent detail than regular scaling algorithms and is useful
for low bit rate captures that are hard to IVTC/deinterlace or where you have just
kept the even fields for some other reason. I'm considering making a DirectShow
version of this to be run at display time, or possibly adding it to ffDshow.
VerticalFilter - If turned on will very slightly blend each pair of horizontal lines
together. This loses only a small amount of vertical resolution but is probably
a good idea as it can somewhat hide remaining deinterlace artifacts and will
probably also make you clip compress a bit better. (0 = no filter, 1 = filter)
***
This explains what the parameters mean. The first specifies the field order of your clip. The second specifies the search effort. The third says whether you want the vertical filter enabled or not.
Example:
TomsMoComp(-1,5,0)
This gets the field order from Avisynth (but watch out, Avisynth can be wrong about it), uses a search effort of 5, and does not do vertical filtering.
So, is there something there that you do not undertstand?
php111
18th July 2008, 21:58
So let me get this right. If I am wrong then I don't understand.
On one line it would be exactly TomsMoComp(-1,5,0)
Next line TomsMoComp(1,-1,1) Right? Exactly like that?
OK, let's copy over your last post from DivX forum:
If you read the documentation, you would have seen this:
This explains what the parameters mean. The first specifies the field order of your clip. The second specifies the search effort. The third says whether you want the vertical filter enabled or not.
Example:
TomsMoComp(-1,5,0)
This gets the field order from Avisynth (but watch out, Avisynth can be wrong about it), uses a search effort of 5, and does not do vertical filtering.
So, is there something there that you do not undertstand?
neuron2
18th July 2008, 22:03
So let me get this right. If I am wrong then I don't understand.
On one line it would be exactly TomsMoComp(-1,5,0)
Next line TomsMoComp(1,-1,1) Right? Exactly like that? Um, no.
What in the document tells you that you need two TomsMoComp lines?
Here is a simple example:
MPEG2Source("file.dv")
TomsMoComp(-1,5,0) That's it!
php111
18th July 2008, 22:05
Um, no.
What in the document tells you that you need two TomsMoComp lines?
Here is a simple example:
MPEG2Source("file.dv")
TomsMoComp(-1,5,0)
That's it!
Cool. We are not done yet.
I have also asked about Frameserving and filters. How does frameserving and filters work?
neuron2
18th July 2008, 22:14
I have also asked about Frameserving and filters. How does frameserving and filters work? Read the available resources that describe these things. Then if there is something specific that you do not understand, ask about it here. We're not going to write all that material again for you!
Start with the Avisynth pages:
www.avisynth.org
php111
18th July 2008, 22:18
Read the available resources that describe these things. Then if there is something specific that you do not understand, ask about it here. We're not going to write all that material again for you!
Start with the Avisynth pages:
www.avisynth.org
I am not understanding this:
How do I use AviSynth as a frameserver?
Write a script using a text editor. Load your clip in AviSynth (see FAQ_loading_clips), do the necessary filtering and load the AVS-file in encoder/application X (must be an encoder or application which can read AVI-files (see also here).
How do I do the filtering? Is filtering simply another name for frameserving? It doesn't give examples on how to filter.
neuron2
18th July 2008, 22:25
To frame serve, you do this:
1. Install Avisynth.
2. Write a script. Here is a simple script to just open an AVI file:
AVISource("file.avi")
3. Open the script as if it was a video file in your application. For example, if you open the script in VirtualDub, you will see your video and be able to scroll around on the timeline.
That's frame serving. Using filters just involves adding lines to the script. For example, to filter with TomsMoComp, add the line as follows to your script:
AVISource("file.avi")
TomsMoComp(-1,5,0)
Or, here's another filter that makes the colors more saturated:
AVISource("file.avi")
Tweak(sat=1.5)
php111
18th July 2008, 22:27
Thank you for your help and time!
To frame serve, you do this:
1. Install Avisynth.
2. Write a script. Here is a simple script to just open an AVI file:
AVISource("file.avi")
3. Open the script as if it was a video file in your application. For example, if you open the script in VirtualDub, you will see your video and be able to scroll around on the timeline.
That's frame serving. Using filters just involves adding lines to the script. For example, to filter with TomsMoComp, add the line as follows to your script:
AVISource("file.avi")
TomsMoComp(-1,5,0)
Or, here's another filter that makes the colors more saturated:
AVISource("file.avi")
Tweak(sat=1.5)
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.