VideoHelp Forum




+ Reply to Thread
Results 1 to 9 of 9
  1. Member
    Join Date
    Nov 2026
    Location
    Netherlands
    Search Comp PM
    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:
    Image
    [Attachment 94294 - Click to enlarge]


    Bottom field from FFmpeg, vertically stretched with nearest neighbour:
    Image
    [Attachment 94295 - Click to enlarge]


    Manually interleaved frame from both fields:
    Image
    [Attachment 94296 - Click to enlarge]


    MPC with no or hardware deinterlacing:
    Image
    [Attachment 94297 - Click to enlarge]


    MPC with software deinterlacing (YADIF):
    Image
    [Attachment 94298 - Click to enlarge]
    Image Attached Files
    Quote Quote  
  2. 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)
    Quote Quote  
  3. Member The_Doman's Avatar
    Join Date
    Feb 2004
    Location
    Netherlands
    Search PM
    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.

    Image
    [Attachment 94310 - Click to enlarge]
    Quote Quote  
  4. In MPCHC you can force the Deinterlacing Mode to Disabled (Progressive).

    In MPCBE you can force the Scan Type to Progressive.
    Quote Quote  
  5. Member
    Join Date
    Nov 2026
    Location
    Netherlands
    Search Comp PM
    Originally Posted by Sharc View Post
    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)
    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?

    Image
    [Attachment 94311 - Click to enlarge]
    Quote Quote  
  6. Member
    Join Date
    Nov 2026
    Location
    Netherlands
    Search Comp PM
    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.
    Quote Quote  
  7. Member The_Doman's Avatar
    Join Date
    Feb 2004
    Location
    Netherlands
    Search PM
    Originally Posted by JeMoederHeetHenk View Post
    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.
    Quote Quote  
  8. Originally Posted by JeMoederHeetHenk View Post
    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.
    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.
    Quote Quote  
  9. Member
    Join Date
    Nov 2026
    Location
    Netherlands
    Search Comp PM
    Originally Posted by The_Doman View Post
    I believe there is no regular flag to detect if PsF content is used.
    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.

    Originally Posted by The_Doman View Post
    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.
    Indeed.

    Originally Posted by The_Doman View Post
    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.
    Did they really finally get there? Took them long enough. Might be worth dusting off my HDHomeRun again.

    Originally Posted by jagabo View Post
    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.
    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.
    Quote Quote  



Similar Threads