PDA

View Full Version : From Capture Card to RV10


hellfred
21st January 2004, 20:45
Hi karl_lillevold, Sirber and co

My dream is to capture some films - mainly anime - form my capture card and to encode them into RealMedia files with the best quality possible. But as i am new to video processing, i need your help on some points.

The rough process shall look like this:
Capturing with VirtualVCR
Cropping - resizing - deinterlacing
DropDup and other filters like undot, sharpen, but i do not know what actually is necessary.
Compressing using Helix producer (rv10, anime) or VirtualDub (event. some movies?)

The capturing is working quite fine, only minor questions:
My capture card is a Philips SAA 7134 chip based card.
For capturing I use VirtualVCR (works better with the WDM-driver than VirtualDub). I take the full resolution available (PAL-B 720x576), need to crop a little bit on the left side and on the buttom and like to resize the resulting file from 712x572 to 640x480 afterwards.

First question:
I read that I420 aka YUV12 aka IYUV (4:2:0) is the standart colourspace used by helix producer and therefore to be prefered for capturing to avoid colourspace transformations.
But if i use AviSynth’s filters e.g. for deinterlacing, trimming or cropping, won't i add colourspace transformations as these file usually work with other colourspaces?
E.g.
cropping processes RGB, YUY2, YV12 (AviSynth v2.5 Docs/filters/crop.html)
BilinearResize takes ?
FieldDeinterlace (Decomb.dll) takes YUY2 and YV12 (http://neuron2.net/decomb/decombnew.html)
Dup takes YUY2 and YV12 (http://neuron2.net/dup/dupnew.html)
So doing all filtering in Helix producer, shall i stick to capturing in I420?
Using AviSynth, shall i use YV12 colourspace?

Second question - Order for AviSynth filters/ prefilters in jobfile:
I could not figure out whether Donald Graf's Dup filter and Karl Lillevold's videoDupFrameDropper filter need to be fed with progressive frames, or whether interlaced frames work, too.
It is about identifying frames that are equal, or next to equal, and drop them. Cropping should increase the amount of equal frames, but what about resizing ahead of dup / videoDupFrameDropper.
So what order should i use?
deinterlace - crop - dup - resize

Third question:
What is to prefer? Filtering using AviSynth or filtering using the helix prefilters only?
Is a mixture of both possible?
Reasons for using AviSynth:
The range of sophisticated filters available.
Cropping uneven numbers on the top and button (e.g. 3 and 5).
I am missing one filter in helix jobfiles: The possibility to cut out parts of the source like e.g. commercials. Up to now i am using AviSynth’s trim command.

(Though opening a file multiple times and specifying the beginning of the movie/anime after a commercials and the last frame just ahead of the next commercial does not look right, too.

video1 = AVISource("capture.avi")
video1 = Trim(video1, 3001, 26334)
video2 = AVISource("capture.avi")
video2 = Trim(video2, 30601, 78354)
video3 = AVISource("capture.avi")
video3 = Trim(video3, 102593, 0)
video = video1 + video2 + video3
return video

Is there another, better way with AviSynth?)

How to do it with Helix producer?

Possible reasons for using Helix filters:
No colourspace transformation necessary.
Prefilters that prepare the sources better for the real codecs (?)

Forth question:
RealAnime v2.0 uses some more filters.
Undot, sharpen, smooth, etc. Here is the list of filters it loads
in the AviSynth script:

LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\Convolution3DYV12.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\Decomb.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\Dup.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\FluxSmooth-2.5.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\MSharpen.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\MSmooth.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\UnDot.dll")
LoadPlugin("D:\STEFAN\REALANIMEV2.0.0\avs\asharp.dll")

OK, I will have to figure out what they do myself.

Yours
hellfred

Sirber
21st January 2004, 21:11
Q1: Producer do the colorspace convertion, so you can use YV12 in AVISynth whitout problem

Q2: "deinterlace - crop - dup - resize" is fine. Dup filter check for exact copy (or almost exact), and interlacement can interfere with the checking.

Q3: AviSynth is far better then producer for filtering.

Q4: Use RealAnime 1.70RC2, v2.00 is very unstable and not ready for production.

I hope those answers help :D

Kurosu
21st January 2004, 21:51
I420 is YV12 with chroma planes swapped (U<->V), so the color transform is lossless.

hellfred
21st January 2004, 22:28
@Sirbre
Originally posted by Sirber
Q2: "deinterlace - crop - dup - resize" is fine. Dup filter check for exact copy (or almost exact), and interlacement can interfere with the checking.

Q4: Use RealAnime 1.70RC2, v2.00 is very unstable and not ready for production.

I hope those answers help :D [/B]

Yes, thanks.
I never encountered any severe problems while using ReaAnime v2.0 - at least nothing that could not be mend using a text editor. But actually i mainly use the avs scripts and jobfiles it produces as samples and tuned them manually, till they fitted my desires. Regarding my filter choice, you could have guessed where i got my inspiration. :D
By the way: Thanks to its audience and AviSynth script generator HPG is very useful for this, too. Only that is little bit outdated, as it does not know about AAC or RV9-EHQ (not to mention RV10, or Matroska filewriter)

@Kurosu
Thanks for this information, it is in deed very useful. Now that the filter order and colourspace problem is solved I can start to work through the various filters that shall improve the image quality.

hellfred

Sirber
21st January 2004, 23:20
Originally posted by hellfred
@Sirbre


Yes, thanks.
I never encountered any severe problems while using ReaAnime v2.0 - at least nothing that could not be mend using a text editor.RealAnime 2.00 is outdated and buggy. With RealAnime 1.70RC2, you can script your own AVS script and use HE-AAC. Please check here:

http://forum.doom9.org/showthread.php?s=&threadid=56576