View Full Version : HDV deinterlace
cupoftea
5th April 2005, 19:18
Hello all,
Can anyone advise what the best way to deinterlace HDV 1080i (1440 wide by 1080 tall, 50i) footage from a Sony FX1E is?
Also am I right in thinking that deinterlace and then resize (e.g. to 576 lines for DVD) is likely to give much better progressive scan quality than the other way round?
I am currently using Premiere and the Cineform AspectHD codec to edit, so both the original .m2t (mpeg transport file) and the Cineform intermediate avi are available.
I am a novice user of virtualdub and avisynth (which I think are fantastic!)
Thanks in advance for any suggestions
Matt
Guest
5th April 2005, 19:37
No, due to forum rule 12, we cannot advise on what is best, and you should not be asking. You can ask what people recommend and what they think the pros and cons are. But such material has been covered zillions of times. Please use search and read the guides!
You cannot resize before deinterlacing, unless you enjoy ugly banding artifacts.
Any of these may serve your purposes: FieldDeinterlace, KernelDeinterlace, LeakKernelDeinterlace, TomsMoComp, TDeint.
Why don't you try them and find out for yourself what works best for your application? In the process, you'll learn how these different filters operate, and how they make different tradeoffs.
cupoftea
6th April 2005, 09:07
Neuron2, thanks for that reply.
I'm adjusting my query to what people recommend (I didn't mean to suggest with the careless "best" form of words that there is always / ever a best solution!) given the further context which follows.
My best candidate so far is smoothdeinterlace (which I was intrigued that you didn't mention..?), and I am getting better attuned to the interlace artefacts (and indeed those of the various de-int processes) but I would still appreciate any thoughts from people who are more experienced than me.
I have of course searched under the relevant terms, and all of the material I've found relates to deinterlacing broadcast material captured using a TV card. Hence the question about camera-captured HDV. (The answers may be exactly the same but I'm not sure..).
In addition the material I've found seems to be focused on re-encoding to e.g. DivX - my aim is a little different, which is to get as high quality a progressive scan picture as possible.. Again the answers may be the same but I'm not sure..
If this area has been covered a zillion times before then apologies of course - I know what the forum rules are there for.
Regards
Matt
Guest
6th April 2005, 14:21
Doesn't smoothdeinterlace double the frame rate? You didn't mention that you wanted a double rate output.
What is the end target for your deinterlaced result? I.e., what will you play it on?
cupoftea
6th April 2005, 23:02
I had been using smoothdeinterlace with doublerate=false.
The main visible (to my eye) artefact is a slight halo around the area that is deinterlaced. It seems like it might correspond to the border of the deinterlaced area in the previous field (?). At the moment tomsmocomp seems to avoid this the best, but I think that may be down to the default settings - haven't had time to do much tweaking of the settings within the filters. It disappears when I lower the threshold of kernel-d-i and leak-k-d-i, so are there any downsides to using a low threshold?
More context: shooting a short film in black and white on an FX1, and the ultimate output is possibly a film print (if the film does miraculously well :-)) or more likely a full resolution avi or wmv file for burning to dvd or streaming over a (n inter)network. At this stage I am really experimenting (we haven't finished shooting yet) to see what kind of quality is possible, in particular because when I first saw the combing having just bought the camera, I was rather disturbed...
Thanks for your input (and the filters..) and apologies if these are still idiotically basic questions
Matt
eswrite
6th April 2005, 23:11
I had been using smoothdeinterlace with doublerate=false.
I just tried this out as well, and of all the de-interlacing techniques I've been trying out prior to re-sizing, this one seems to work out the best. See http://forum.doom9.org/showthread.php?s=&postid=635674#post635674. Any idea whether setting doublerate=false and using ChangeFPS(59.94) will cause loss of audio sync?
EDIT: I'm also concerned about the requisite YV12->YUY2->YV12 round-trip. Could I at least avoid the last YV12 conversion? I'm unclear as to whether YUY2 is DVD-MPEG2-compliant.
Guest
7th April 2005, 05:02
@cupoftea
After long experience, I've learned it is a waste of time to speculate about your video. The only way I can assist you is if you upload an unprocessed source clip to my server and notify me of its filename.
@eswrite
You're engaging in thread hijacking. Make your own thread.
Mug Funky
7th April 2005, 07:05
hmm... black and white HDV. not too much grain, i suppose.
hope you're shooting with your shutter set to 1/50, because that's an obstacle in the way of film-look right there, even after deinterlace. film has more motion-blur than video is capable of with it's short exposure times.
for deinterlacing, i'd give Tdeint a try, but for a source that big it's really not going to matter what you use - err on the side of more combing, i'd say, as if you resize with lanczos there wont be noticable banding (well, none that i've noticed in my limited experiance) so you'll be pretty safe from artefacts on the DVD version.
cupoftea
7th April 2005, 10:19
Thanks Mug Funky for comments on shutter speed (all 1/50 afaik so far) and deinterlacing. You're right, the DVD resizes do already look great, more concerned about what will look best if we get to a film print and, more likely creating a "reference" full-res progressive version for streaming / downloading and burning HDDVD/BluR as and when.
Grain: do you mean, "you may want to add simulated grain later"..?
I will try and upload some footage, Neuron2; thanks.
Matt
trbarry
10th April 2005, 14:17
Can anyone advise what the best way to deinterlace HDV 1080i (1440 wide by 1080 tall, 50i) footage from a Sony FX1E is?
Not necessarily best but since you are substantially downsizing you might also try my YV12InterlacedReduceBy2() filter for something very simple and fast. It will reduce your clip to 720x544 (or 540?). A few weeks ago I also added an option for full 60 (or 50) FPS output.
see www.trbarry.com/Readme_YV12InterlacedReduceBy2.txt
- Tom
cupoftea
11th April 2005, 12:28
Thank you Mr Tom, will try it asap. But I'm more interested in a resolution-_preserving_ deinterlace (i.e. at 1080 lines).
Matt
(on holiday for a couple of weeks as of Wed 13/04/05)
trbarry
11th April 2005, 13:24
No, you wouldn't want to use it then. I thought from your first post you were going to resize to only 576 lines at DVD rez and going straight to 720x544 would be a good simple way then.
- Tom
Kika
11th April 2005, 16:02
@cupoftea
I'm just curious. Why you want to deinterlace the Video?
Oh, and by the way: Why not using KernelBob or TDeint instead of SmoothDeinterlace?
hanfrunz
11th April 2005, 19:38
hello,
i am not a big friend of all these deinterlacers, i can see artifacts very often. I like the method of throwing away one field. Yes you loose resolition, but for me it just looks "best" :)
avisource("myvideo.avi")
separatefields()
selecteven() #or selectodd()
lanczosresize(1920,1080) #or any resizer you like
just my two cents.
hanfrunz
scharfis_brain
11th April 2005, 19:59
then you should search for your glasses :p
i am not a big friend of all these deinterlacers, i can see artifacts very often. I like the method of throwing away one field. Yes you loose resolition, but for me it just looks "best"
:stupid: :D :D :D
Keep it simple and you can't go wrong :D
regards
Simon
PS And you get to have more time down the pub and the encodes finish quicker and ... :D
Kika
11th April 2005, 21:36
@hanfrunz
You are dropping one field? Even if the source isn't interlaced?
And if you are dropping a field on true interlaced source, you will not only loose half of the resolution of still areas, you will loose also half of the movement.
OK, that's your decission, but for me, the result of your way isnt anything i can call HDTV.
hanfrunz
12th April 2005, 19:52
@kika
if the source is progressive, i don't deinterlace of course.
And i like the "film"-look of 24p/25p or 30p. I don't like 50 or 60i. But if you like that "video"-look you should use an interlacer. Or just playback with 50/60 fps and resize the single fields.
hanfrunz
JnZ
16th March 2006, 16:51
Hello all,
Can anyone advise what the best way to deinterlace HDV 1080i (1440 wide by 1080 tall, 50i)...
Matt
If the source is 25i (50 flds/s),then you may try this:
For 50fps output:
LoadPlugin("DGDecode.dll")
LoadPlugin("BT709toBT601.dll")
mpeg2source("yourblabla.d2v")
#crop(0,0,0,-8) - if you see 8-pixel gray bar below in video
#BT709toBT601() - if src is BT.709
SeparateFields().Bob()
Crop(.....)
LanczosResize(x,y)
For 25fps output:
LoadPlugin("DGDecode.dll")
LoadPlugin("BT709toBT601.dll")
LoadPlugin("TomsMoComp.dll")
mpeg2source("yourblabla.d2v")
#crop(0,0,0,-8) - if you see 8-pixel gray bar below in video
#BT709toBT601() - if src is BT.709
TomsMoComp(1,5,1)
Crop(.....)
LanczosResize(x,y)
Or try advanced deinterlacers like mvbob.
ToS_Maverick
16th March 2006, 18:39
JnZ, your 50fps output method is great!
although it's quick and dirty, it suits most of my not-so-HQ tasks ;)
dukey
16th March 2006, 19:32
do an even or odd field deinterlace on it
then resize to 720x544
You will be left with perfectly progressive video. 50fps hdtv res video will be a bastard to playback unless u've got uber hardware :p
i think in avisynth u can simply do this with
reduceby2 :)
ToS_Maverick
16th March 2006, 19:44
@ontopic: if you plan to release your video on DVD you could keep it interlaced and only resize it like this:
SeparateFields()
LanczosResize(720,288)
Weave()
you'll get a 720x576 25i video, which you can use on a dvd.
scharfis_brain
16th March 2006, 19:51
ToS_Maverick: this resizing method will reduce your final effective resolution to 288 instead of 576 and will make your image bobbing up and down on your TV. This is cause by a vertical misalignment introduced by this method. (search the forums for this term if you want to know more)
the preferred method of resizing interlaced video is this:
xxxsource("blah.xxx")
bestbobdeinterlaceravailable()
converttoyuy2().lanczosresize(704,576)
assumetff()
separatefields().selectevery(4,0,3).weave()
JnZ
16th March 2006, 19:52
Methotds, how to handle 25i HD is many, depends which of every us like. Especially, if we don't want HD as output.
I think, 25i video should be stored like 25i, or 50p for fluency, because if src is 25i, it sounds like very high motion in it.
EDIT: I give up this round, I'm not good qualified to indoctrinate people :)
Mug Funky
17th March 2006, 07:35
jnz: separatefields().bob()????
that will give you 100fps output at half the input height.
half 1080 = 540, so dropping a field and resizing up will give you an alright result very fast. but it's suboptimal to say the least.
if you want to increase the speed of deinterlace/resize to SDTV, then try:
xxxresize(720,last.height)
myFavouriteDeinterlace()
xxxresize(last.width,576)
this speeds things up some, and doesn't hurt quality (much). it's also nice if you're doing field-matching (IVTC), because in theory it doesn't hurt quality at all, and may increase matching accuracy (60i HDV doesn't appear to include pulldown flags, so fields will be munged on challenging footage).
@ hanfrunz: i challenge you to spot deinterlace artefacts after resizing down to SDTV. the benefit very much outweighs the possible artefacts.
communist
17th March 2006, 08:03
separatefields().bob()????
that will give you 100fps output at half the input height.
Hmm yeah thats what I thought too. I just checked this with a DV source, and the output is 50fps @ full height / width (720x576).
scharfis_brain
17th March 2006, 11:50
separatefields().bob() and a plain bob() should not differ at all, cause bob() looks for the assumefieldbased() / assumeframebased() related flag first.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.