Question / Help Deinterlacing mode descriptions

Unessential

New Member
I'm glad to see that OBS studio has a deinterlacing feature (It's been a while since i updated). However I cannot find any documentation or descriptions of the modes (searching here, or google)

Some of the modes -- Discard-- For example, is relatively self evident (I'm assuming it means it will just line double and ignore every "other" frame, or maybe not even line double , But others --"Retro"-- for example (?????) are not... I'm assuming it's optimized for retro games, but... *why* and *how*??

Can someone please provide or tell me where I can find the descriptions for all the modes how they work? thanks.
 

RiMax

New Member
Where did you find deinterlacing???

I need it so much and I can't find it anywhere. Running latest version.

LE: Found it. Really awkard and extremely counter-intuitive UI. Who on earth thinks about right-clicking the source for settings, when you have the settings gear button on the bottom?

Just put ALL settings in settings, not split into pieces all over the UI, one on button, one on right click, one on menu...
 
Last edited:

Unessential

New Member
@Suslik V https://wiki.videolan.org/deinterlacing#Disabled Starts what I was looking for. A description of the algorithm.... But "Retro" is still isn't listed there. I'm guessing "Retro" is "bob" and simply a line doubler after discarding? (i'm guessing that because it's the only one missing, and it's in the same order as the videolan wiki)

Basically, I know how most deinterlacing filters work, I just don't know the names of them I also generally know what generally works best in which situations and the drawbacks. I would prefer to do as little trial and error as possible, or worse - and more time consuming trying to visually analyse the filter by taking screenshots and comparing.

But yeah, I got the info I need Just want to confirm "Retro" is a line doubler after discarding a field. And maybe whoever is responsible for the guide can just copy and paste the description from the wiki into the guide.
 
Last edited:

Unessential

New Member
@Suslik V So I finally got around to using the deinterlacing modes. Most of the match up, but like i said, "Retro" isn't defined. I assumed it was "Bob" but it doesn't seem to be. I'm streaming some retro games with flickering characters (damage, invulnerability etc) and it's not displaying both frames. the sprites are either solid, or invisible.

I'm fine with using the other algorithems for most games, but for the ones with the flickering animation I do want the character to "flicker" instead of being blended / half transparent w/o flickering. currently for those games i'm just simply not deinterlacing...

And does anybody know precisely how the "retro" deinterlacing mode behaves? I'm still very surprised that such basic documentation isn't available.
 

Suslik V

Active Member
Exactly double frame rate and doubles lines (as Discard do). This is Bob or Discard 2x. Isn't right?

https://github.com/jp9000/obs-studio/blob/master/libobs/obs-source-deinterlace.c
Code:
    case OBS_DEINTERLACE_MODE_RETRO:
        return obs_load_effect(&obs->video.deinterlace_discard_2x_effect,
                "deinterlace_discard_2x.effect");

https://github.com/jp9000/obs-studio/blob/master/libobs/data/deinterlace_base.effect
Code:
float4 texel_at_discard(int2 texel, int field)
{
    texel.y = texel.y / 2 * 2;
    return load_at_image(texel, 0, field);
}

float4 texel_at_discard_2x(int2 texel, int field)
{
    field = frame2 ? field : (1 - field);
    return texel_at_discard(texel, field);
}
 

CL1fe

New Member
Good to see some info on deinterlacing. I have 1080i59.94 video and just cannot get deinterlacing to work. No matter what the setting I use I still see the lines.
I'm a little confused because OBS Classic works flawlessly with no problems with interlaced video. Really only wanting OBS Studio for the picture adjustment capabilities like brightness etc.
 

Suslik V

Active Member
@CL1fe , sure that the source is 1080? Is this value reported by Transform... dialog of the OBS Studio (Size field)? (check this, especially if you are using VLC Video source).
Adjustments of the sources possible through the Filters (see the link to the Help Guide posted above).
 

CL1fe

New Member
Thanks for the quick reply, I will check what is in there, will it affect the deinterlacing?
My only source is 1080i video camera, through an BMD Ultrastudio Mini Recorder that is set for HD -> SD, to OBS.
The base resolution in OBS Studio often shows up as 1800's x something.
 

Jared.DLP

New Member
YES!!! I've recently got multiple 1080i camcorders, and all I've seen online is that my capture cards and therefore OBS will NOT deinterlace... I was literally just now randomly playing with the instant replay plugin and right clicked my cam source while testing and FOUND the DEINTERLACE feature, then discovered the entire OBS handbook PDF.... SUPER SUPER AWESOME!!!

THANKS FOR SHARING!!! FOLLOWING/WATCHING!!! =-D
 

DayGeckoArt

Member
I'm also curious about what these methods mean. I can only find explanations of Yadif on the internet, and the explanations are vague and don't explain what it really does. I'm recording video from a device that is taking 1080p30 video and turning into interlaced for ouput, so it should be simple to deinterlace just by combining the two sets of lines into one frame. But which method does that? Yadif looks good but I want to use the objectively best method
 

DayGeckoArt

Member
I've been trying to find info and the best I could get to is that the method I need is WEAVE. This literally weaves two frames together to form a progressive frame. In this case that is perfect because the original content is 30p, so weaving the 60i back to 30p would be the closest to the original video.

The problem is OBS doesn't have that option. It has Retro, Blend, Linear, and Yadif. I can only find an explanation of Yadif and Blend. Nothing on the internet documents Linear or Retro
 
Top