Hello,
Hoping to get a more polite response here than the incredible rudeness I got from MPC-HC's repo owner after filing an issue on GitHub. I'm trying to pinpoint an issue and what it would take to solve it.
Well, here goes. I have material that is ripped from Blurays. European material at 25fps. You'll know the drill: Blu-rays not supporting 1080p25, it has been encoded as 1080i50 but every two fields are just one progressive frame when interleaved back together. There shouldn't be any visible traces of interlacing.
This doesn't go well with my favourite player, MPC-HC. What seems to happen is that only the even fields get used, those get stretched vertically wth some interpolation to reduce the jaggies. It is possible to enable software interlacing on top of that to further improve the result but either way it isn't up to par with the original frame. The original frame I got by using FFmpeg with the separatefields filter and image output, and manually interleaving those fields.
What I tried:
- Use software deinterlacing: improves the result but still not as expected
- Use different software deinterlacing algorithms: still not as expected
- Use hardware deinterlacing: very broken on my AMD RDNA3 card, seemed to work once but before I could confirm it crapped out again
- Try MPC-BE which is similar in many regards: issue is the same
- Try VLC which is quite different: issue is not present
Attaching a short video sample and a couple images. You might need to zoom in, but there definitely are differences. Paying attention to the woman's left eye (right for the viewer), in particular the upper eyelid's definition and the inner eye corner, you should arrive at what I said about only the even (top) fields being used and interpolated by MPC-HC and MPC-BE.
Do others also experience the issue? What to do? Appreciate more thoughts!
Top field FFmpeg, vertically stretched with nearest neighbour:
[Attachment 94294 - Click to enlarge]
Bottom field from FFmpeg, vertically stretched with nearest neighbour:
[Attachment 94295 - Click to enlarge]
Manually interleaved frame from both fields:
[Attachment 94296 - Click to enlarge]
MPC with no or hardware deinterlacing:
[Attachment 94297 - Click to enlarge]
MPC with software deinterlacing (YADIF):
[Attachment 94298 - Click to enlarge]
+ Reply to Thread
Results 1 to 9 of 9
-
-
Not sure whether I fully understand your processing, but even though the Blu-Ray is flagged as interlaced one should not deinterlace its progressive (PsF) content. So no point in fields separation and re-weaving or similar. Just treat and play it as progressive 25fps. Don't force deinterlacing with your player (e.g. MPC-HC setting)
-
I did not want to study all the screenshots, as I didn't know exactly what to look for.
However, if I use these filter settings in MPC-HC on my PAL interlaced MP4 video's, it will not deinterlace and will play them at 25 fps.
[Attachment 94310 - Click to enlarge] -
Right, PsF, that's the term I couldn't think of. But I completely agree and this is exactly what I am trying to do. And what isn't happening with MPC-HC (or -BE). I tried those deinterlacing settings to see if and what they would do and if any of them would result in the original progressive image. They don't. Turned off I get a vertically interpolated image, turned on I get a vertically more interpolated image. What I think you mean with my "processing" with FFmpeg and manual interleaving: that was just with one frame and to definitively confirm that the progressive frame exists and that it really is a software issue.
I have now found that the decoder, LAV, has yet another deinterlacing setting called "Deinterlacing Mode" where overriding the automatic modes with "disabled" makes the PsF content look as intended. I don't know what this setting actually does as the decoder also offers a separate software deinterlacing setting. At least this is a workaround.
Are there any flags on the stream or container level that would help with detecting PsF content?
[Attachment 94311 - Click to enlarge] -
Ah, I see there were more replies between my loading the page and posting my last reply. Thanks also to The_Doman and jagabo. Indeed that setting makes it behave as intended. One would hope that there is a way for the decoder to autodetect PsF content, be it on its own or helped by container or stream flags.
-
I believe there is no regular flag to detect if PsF content is used.
Detect Progressive Segmented Frame PsF video
Yes, it is quite confusing and obscure—depending on the filters used—to truly disable de-interlacing in MPC-HC.
I had to search around and verify with my own interlace test clips to find and set the settings right.
An easier, simpler global option would be really useful.
Especially for my TV programs recorded from DVB-C cable here (Netherlands/Ziggo).
Because these days many TV programs are produced in 25fps and broadcast in 25PsF.Last edited by The_Doman; 9th Nov 2026 at 18:25.
-
Normally, the decoder weaves the two fields together before passing the frame to the renderer, telling it the frame contains interlaced video. The render then deinterlaces the frame for display. That decoder setting forces the decoder to flag the frame as progressive so the render makes no attempt to deinterlace.
-
I just checked, the Matroska specification does have the FlagInterlaced flag for video tracks, with definition: "specifies whether the video frames in this track are interlaced". I'm not 100% sure, but I'd say that the frames are not interlaced. But setting that flag with value 2 (progressive) does not change behaviour with MPC-HC. It does convince FFprobe and FFmpeg that it is progressive but apparently LAV chooses to ignore the flag.
Indeed.
Did they really finally get there? Took them long enough. Might be worth dusting off my HDHomeRun again.
Since the renderer AFAIK only supports hardware deinterlacing, which is utterly broken on my AMD card, I doubt that the renderer is doing much here. I did try with both MPC-VR and EVR with custom presenter, no difference. I'm quite confident that what I am seeing without the decoder override is the bottom field being discarded and the top field being vertically stretched with some interpolation. I say this because the inner eye corner of the woman's left eye (right for the viewer) seems larger in the top field than in the bottom field, and what I am seeing with MPC-HC without the override is the size from the top field, not an average. Also important: this is equally true when using software deinterlacing from the decoder.Last edited by JeMoederHeetHenk; 9th Nov 2026 at 19:57.
Similar Threads
-
Interlaced MP4s flagged as progressive
By Mr Chris in forum Newbie / General discussionsReplies: 10Last Post: 12th Jan 2026, 05:42 -
MPC-BE - video stutter in AV1 encoded files
By Ygramul in forum Software PlayingReplies: 0Last Post: 4th Sep 2025, 07:32 -
Santiag for progressive to interlaced?
By marcorocchini in forum Newbie / General discussionsReplies: 25Last Post: 23rd Jul 2025, 10:05 -
Correcting interlaced cuts in a progressive video.
By AstroSeedP in forum RestorationReplies: 9Last Post: 12th Jan 2024, 15:23 -
Restoring Interlaced master that should have been progressive
By Jan Tokki in forum RestorationReplies: 7Last Post: 20th Jul 2022, 16:30



Quote