Log in

View Full Version : FieldDeinterlace and Telecide


pfxz
31st July 2008, 20:05
I am trying to deinterlace a video that is mostly telecined but there are portions of it that are apparently pure 30i.

I am using the Decomb plugin and I found out that I can use Telecide for most of the video, but the 30i parts work better with FieldDeinterlace. To avoid having to use 2 functions and therefore write 2 override files, I tried to adjust Telecide settings so it could achieve a result similar to FD(), but it didn't work.

Any ideas?
Thanks

Guest
31st July 2008, 20:22
What were your settings and how didn't it work?

pfxz
31st July 2008, 20:50
I am using Telecide(guide=1, post=2 (4 didnt work either), ovr="file.txt")

All other settings are default.

file.txt looks like:
300,400 +

I want to make it look like FieldDeinterlace() (using default parameters).

But it it doesnt seem to be deinterlacing anything. If I use show=true it says the frame is detected as progressive. Is that normal behavior for the override?

Guest
31st July 2008, 20:58
That's not normal. Can you post a link to the first 500 frames of your *unprocessed* stream? Also, give me your entire avisynth script.

pfxz
31st July 2008, 22:26
OK, this is really weird. If I turn off Telecide altogether, I cant see any combing! But if I turn it on the thing gets combed even though status says the frame is detected as progressive... In this case, Telecide shouldn't be doing any deinterlace right?

The problematic part is when Thanatos speaks (27248-27360) you can see combing in his mouth when Telecide is on. The script that generated the file is this one:

MPEG2Source("C:\encode\video.d2v",cpu=0,upconv=1, info=0) #ipp=true,
AssumeTFF()

Trim(27200, 27400)

#Telecide(guide=1, post=4, vthresh=56, dthresh=7, show=true, blend=false)
#FieldDeinterlace(full=true, threshold=20, dthreshold=7, map=false, blend=true, chroma=false, ovr="", show=false, debug=false)

# this makes it kinda jerky
#Decimate(mode=3,threshold=1.8)

# trying to make it look nicer
#Deflicker()
#FluxSmoothT()

ConvertToYV12()

Note: For the tests, I used only Telecide() or FieldDeinterlace. All others filters including Decimate were left off.

http://www.megaupload.com/?d=SLJ23KWO
(x264 lossless, 7.7mb)

pfxz
31st July 2008, 22:34
OK I got it; if I just use "27248, 27360 -" for the override it skips those frames. But I am still wondering:
- If the frame is detected as progressive then Telecide() should just leave it right?
- I am still trying to achieve the same effect of FieldDeinterlace() with Telecide(); for the credits roll part which I believe is 30i. FD() works much better than Telecide even though there is some residual noise.
- Wow is there a way to reduce the jerkiness after Decimate()? I didnt pay much attention before but looking closely it gets really bad some times.

By the way thanks for the filters... I've tested so many deinterlacers and spent so much time scrutinizing the encodes these past hours, its not even funny. Decomb gave me the best results so far; its just some details that need adjustments.

Guest
1st August 2008, 01:30
Your script uses MPEG2Source() but you uploaded an MKV.

If you want my help, give me the *unprocessed* source, as I clearly asked for.

pfxz
1st August 2008, 01:37
Hmmm... How can I split the original file though?

Because that just loads a DGIndex created file; the original source is actually VOB's.

Guest
1st August 2008, 01:49
Use DGSplit to cut off a piece of the start of the VOB. Set the desired size and then kill it after it writes the first segment.

Also, the MKV had ~200 frames but the override file talked about frames 300-400.

Let me be clear: I don't have the time to experiment to try to figure out your problem. You need to give me the things I need to duplicate your issue. I'm the author of these tools, so I can give you definitive answers, but not if you make me grope around.

I can use the file you uploaded *if* you give me the script and override file that works with it and demonstrates the problem.

pfxz
1st August 2008, 13:29
Hi neuron2,

This file:
http://www.megaupload.com/?d=4TFT9PK1

Has the splitted .vob, the .d2v, the .avs script and the overrides I am using. There are some comments in the .avs.

I would like to know how to make Telecide() output the same as FieldDeinterlace(). Also the best way to Decimate (or reduce to 24fps) without inducing jerkiness.

Thanks ;)

Guest
1st August 2008, 13:58
The big problem is that you have anime with lots of duplicate frames. That makes it very hard for pattern guidance to lock to a good 3:2 pattern. I recommend not using guidance for such video. So remove guide=1.

The reason you have the big difference between Telecide postprocessing and FieldDeinterlace is because you have blend=false for the former and blend=true for the latter. Set blend=true for Telecide and they will be close to each other.

pfxz
1st August 2008, 14:13
Stupid me, I thought I was using the same settings for both.
Thanks a lot neuron :)

Now just one more question, do you have any advice on avoiding jerkiness after Decimate?
http://www.megaupload.com/?d=6ODSK81B

The horizontal pan right there looks really bad after Decimate.
Oh btw I had guide=1 there because I uploaded it before I saw your post. But it still looks good after Telecine with guide=1.

Guest
1st August 2008, 14:23
That section is rendered at 29.97 fps progressive. You cannot decimate it without making it jerky.

If your video has lots of these sections, you should consider leaving it at 29.97 fps (not decimating). Hybrid video is always challenging. You can use Google to research other ways to handle it.

http://www.google.com/search?sourceid=navclient&ie=UTF-8&rls=GGLD,GGLD:2005-08,GGLD:en&q=processing+hybrid+film+video+site%3aforum%2edoom9%2eorg

pfxz
1st August 2008, 14:47
Maybe this wasnt really a friendly video for my first encode. Heh :D

Since I plan to use MKV, I was thinking of using VFR. Do you have any thoughts on Decomb VFR? Or any recommendations on a decimate filter that can create Mastroska timecodes?

Nightshiver
1st August 2008, 15:27
Handbrake.... also read This (http://forums.animesuki.com/showthread.php?t=34738) and use the SEARCH button.

pfxz
1st August 2008, 16:33
Very interesting... Apparently there is no easy fix for this.
It seems like I'll have to either do timecodes manually for VFR or manually reduce the framerate for the 30fps scenes using some kind of motion compensation filter, and replace them in the video. That's a lot of dirty work...

Is it even theoretically feasible to create a filter that does this reliably and automatically?

Because if I use some sort of motion compensation on the entire video after I de-interlace and decimate it there is no way for the filter to tell which parts were supposed to be jerky from the ones that got jerky because of frame rate conversion, right? This should be especially hard for anime...

Guest
1st August 2008, 16:56
Just render the whole thing at 29.97fps and be happy.

pfxz
1st August 2008, 21:11
Just render the whole thing at 29.97fps and be happy.

That was a great idea, it will save me A LOT of time.

For comparison purposes, I just encoded parts of it with x264 and at 960 kbps the quality difference frame wise is practically the same but in the bigger picture 30fps looks much better. Not only that, it encodes slightly faster too (with all filters off, that is).

Silly me, I thought I would have a 20% quality loss without decimation. One of anime's idiosyncrasies perhaps?

Thank you again Mr. Graft.

pfxz
1st August 2008, 21:52
neuron, can I change the blend parameter in the override?
Oh yeah, and the ranges for all overrides are inclusive, right?

DigitalDeviant
1st August 2008, 22:50
Maybe this wasnt really a friendly video for my first encode. Heh :D

Since I plan to use MKV, I was thinking of using VFR. Do you have any thoughts on Decomb VFR? Or any recommendations on a decimate filter that can create Mastroska timecodes?

No, hybrid anime probably isn't a great source for a first encode but if you get it right then most everything else will be easy right :)

TIVTC (http://avisynth.org.ru/docs/english/externalfilters/tivtc.htm) is probably what your looking for. There is an example of how to use it for anime in 2 passes. You may want to look at the TFM and TDecimate docs too for advanced parameters like overrides.

Edit: Of course if it looks ok to you just leaving it 29.97 will save oyu time.

Adub
1st August 2008, 22:53
Have you looked into AnimeIVTC? I think it has a mode that might help you.

pfxz
1st August 2008, 22:56
Have you looked into AnimeIVTC? I think it has a mode that might help you.

AnimeIVTC uses Didée's MCBob if I am not wrong...
It is very slow. Seriously... I go from encoding at 20-40 fps to less than 0.5 fps.

Guest
1st August 2008, 22:57
neuron, can I change the blend parameter in the override?
Oh yeah, and the ranges for all overrides are inclusive, right? Please read the manual.

pfxz
1st August 2008, 23:02
Please read the manual.

This (http://neuron2.net/decomb/DecombReferenceManual.html) manual?
I read it many times, and I am positive that it is not there.

Guest
1st August 2008, 23:40
In the section on Overriding Decomb Decisions all the overrides are documented. Overriding blending is not mentioned, so it is not possible. That was easy, huh?

There is bit that says:

"You can set different vthresh values for different parts of your clip. For example, to set vthresh to 25 for frames 200 through 500, use:

200,500 v 25"

Isn't it pretty clear that ranges are inclusive? And wouldn't it be silly for them to be exclusive?

pfxz
1st August 2008, 23:45
In the section on Overriding Decomb Decisions all the overrides are documented. Overriding blending is not mentioned, so it is not possible. That was easy, huh?

There is bit that says:

"You can set different vthresh values for different parts of your clip. For example, to set vthresh to 25 for frames 200 through 500, use:

200,500 v 25"

Isn't it pretty clear that ranges are inclusive? And wouldn't it be silly for them to be exclusive?

Thats why I asked if it was possible to override blending because FieldDeinterlace has it on by default.

Yeah, it would be silly. I definitively need some fresh air.