Log in

View Full Version : How to get WMPlayer to proprerly play interlaced DivX videos?


Daft
14th August 2005, 01:15
Hi, my problem is that Windows Media Player will not play Divx encoded media that is interlaced as interlaced video, instead it plays it as progressive. This is apparent because the interlaced weaving is easily visable. This only happens with Divx video tho, if I playback unedited interlaced video captured from my miniDV camcorder it plays very smoothly and fluidly. It also plays MPEG2 interlaced video properly as well. Just for some unknown reason it doesn't play Divx properly and I happen to compress all my DV captured video to Divx while leaving interlacing in place. Is there a fix to this? Or should I be using another player? Please advise, thanks.

stephanV
14th August 2005, 12:04
I guess the DivX decoder doesn't contain a deinterlacer. Try ffdshow and its filters.

Daft
14th August 2005, 15:42
Sorry I'm a bit of a newb. Is this ffdshow a completely new codec (i.e. will I have to re-encode all my Divx videos) or does it / will it just help properly play interlaced Divx videos?

stephanV
14th August 2005, 15:50
ffdshow supports decoding of DivX/MPEG4 ASP. In addition you can use post processing/filtering to deinterlace your video.

BTW - The proper way of displaying interlaced material is using a display (e.g. a TV) that supports it. You might wanna consider deinterlacing your content before encoding it. Apparently what DivX is doing is just outputting the frames as you encoded them; there is nothing improper about that, it just sucks on computer displays. :)

Daft
15th August 2005, 00:53
Thank you StephanV, I tried ffdshow and it works! sorta.. I will try to explain this the best I can. The Divx video now plays as if it were a progressive source now, the same as if the video was encoded with de-interlacing. Although it looks better than before, it still is a bit choppy compared to raw DV video. I made samples to try and explain it better. The first video is ripped straight from the DV tape - no editing. Play these in Windows Media Player. Notice how smooth the motion is:
http://www.daftproductions.com/videos/motiontest_dv.avi [18mb] please "save target as".
This next video is the same but is encoded with Divx with de-interacing turned on. Notice how much choppier it looks:
http://www.daftproductions.com/videos/motiontest_divx.avi [3mb]

I would like the Divx videos (that preserved interlacing) to play as smooth as DV videos. I know this is possible because when I encode to MPEG2 and leave the interlacing it plays just as smooth. I hope you understand what I mean and I hope you can help me. Thanks again!

Bathrone
19th August 2005, 11:14
How are people *accurately* determining if their media is interlaced or progressive? Im getting what seem to be false reports from various tools - e.g. two tools on the same media contradicting each other to be interlaced and progressive.

stephanV
19th August 2005, 11:24
@Daft: Deinterlacing in most cases means losing half the temporal resolution, so its not wonder the video is not as smooth. You are turning 60 fields/s into 30 frames per second. The only way to keep the 60 fields is using (some sort of) a bob filter.

@Bathrone: There is no good way of automatically detecting if a source is interlaced. Tools mainly depend on flags that are set or not, and its not uncommon that flags are set wrong. Only trust your eyes.

mic
20th August 2005, 01:58
@Bathrone
(please pardon extra length -- hope explanation might help) :cool:
Interlaced video is every other line in a video frame -- a crt TV will update odds & evens alternately, so you get double frame rate updating of picture = smoother motion + older technology could handle updating half the lines. In video editing software you normally don't see 2 separate fields, but the result of 2 fields combined. If there is motion taking place between the time of one field to the next, then the odd and even lines will not match up. If you take a full frame interlaced video on your PC and play it on a TV, the odd & even lines again become 2 separate fields (why enlarging interlaced video is problematic).

Video can also be progressive, where each frame is like a photograph, not made up of alternating lines but a good picture, like a frame of film. As stephanV wrote, the only way to tell is if you look at individual frames, going through several of them to look for line to line mismatches.

Practically speaking, what this means as you've noticed, is don't rely on a video format to store interlacing info accurately. Most of the true progressive video you'll see is 24 fps film (not 23.976 ivt). There is a lot of De-Interlaced video, which is taking the 2 pictures (fields), each with missing data and putting them together to try and get a whole picture -- a lot of it is quite good, but not so good (as smooth) on your TV if it expects interlaced.

Progressive monitors like your PC uses rely on software routines to convert interlaced video to progressive on the fly. There are different opinions on whether the result looks better feeding your software player interlaced or deinterlaced video, and there's no doubt the player software used and it's settings have a role in how it looks. You can get different results telling software that de-interlaced video is interlaced or progressive. And Trivia: it's not unheard of to upsample video to double the fps or more for PC playback to get smoother motion.

jggimi
20th August 2005, 14:49
The issue is not DivX specific, but is about any interlaced content being played on a PC monitor.