New CRT shader from Guest + CRT Guest Advanced updates

I’ve tried this new feature but it does nothing to eliminate de halos that show up when raising Gamma Correct or Bright Boost Dark Pixels. I’ve also checked the code, but it’s stuff I don’t understand.

Regardless, I’m happy with the preset I’ve arrived at on my last post. It has minimal ringing.

Anyway, thank you for the new release! :slightly_smiling_face:
Really looking forward for the stable release and documentation!

Actually, that convenience is now built into RetroArch as well (not sure what version, but it was not too long ago). Just make sure “Simple Presets” is enabled in the menu where you go to save shader presets.
The newly saved preset will reference the current preset you’ve loaded, with just the changed parameters, as per your example. It’s very handy!

EDIT: Sorry, I misinterpreted. I get what you mean now. My bad!

Wait, is that possible? I thought blending occurs because the NTSC signal has not enough horizontal color resolution to transmit that information. How can the TV reconstruct that information if it is not being transmitted?

If we look at NTSC-Adaptive, which I’ve been told is mathematically correct to the spec, it always blends, for example, the Sonic waterfalls.

Is my understanding of the NTSC signal wrong?

If we consider the shaders involved… Sonic waterfall is a 2-phase blend situation, where dithering is blended. NES and SNES games use 3-phase blending, also like on real HW, which doesn’t resolve dithering patterns.

There are major differences how the phase modes work and “ntsc-adaptive shader” is basically two prior shaders merged, one for 2-phase and one for 3-phase modes. So it’s a bit stubborn to have identicall parameter settings for two completely different situations. :slightly_smiling_face:

4 Likes

So, this bundle obsoletes all of the previous ‘advanced’ and ‘fast’ shaders. Does it also obsolete the previous crt-sm and dr-venom shaders? That is: can/should I just nuke the existing ‘guest’ folder in the repo and replace it with this one?

4 Likes

What @RealNC is talking about goes beyond what is already there including what can be done using simple presets.

His method preserves game settings even if the Core Preset Changes. Normally if you adjust croping for example in HSM Mega Bezel Reflection Shader and you save a Game Preset, those crop settings will persist as long as you don’t try to change the Core Preset to another one. If you wanted to change the Core Preset for a game that has a Game Preset saved, you would have to save it as a new Game Preset but all of your crop settings would be lost if you didn’t manually set them again before saving the new game preset.

2 Likes

I was thinking a lot about it.

It’s just this bundle for slang, perhaps i’ll add something else in the future and i don’t want there are too many presets.

Older versions are still available in the glsl repo.

Maybe it would be cool if the ntsc versions can be placed together with the other crt presets.

This leaves some non-working presets in the /presets folder and that’s it.

Anyway @hunterk, thanks in advance. :smiley:

3 Likes

Oh, sure. I was specifically talking about 2-phase NTSC and if it’s possible or not for a CRT to decode an un-dithered waterfall in 2-phase NTSC signal, as implied by @RealNC

Ah yes, you’re right. I see what you mean now. My bad!

2 Likes

The artifacting if we compare 3-phase and 2-phase is also different (default settings). 3-phase merges fields by default, leaving mostly static color artifacts. 2-phase temporal blending is quite neutral, but there is a lot of colorplay with moving scenes and screenshots, luma artifacts from sharpening are more pronounced. Default settings also involve a lot of fringing, which does temporal blending, but introduces spiked artifacts on moving scenes.

If we return to ntsc anti ringing, here is a nice example:

normal:

temp1

with anti ringing:

temp2

An advice how to perhaps setup some phase related presets:

With 2-phase ntsc adaptive sharpness works very well, since the ability to resolve dithering patterns isn’t affected.

With 3-phase there more options, including ntsc resolution scaling, together with mentioned sharpening.

Just some explanations until documentation is ready. :grin:

3 Likes

I’m not an expert. Whenever a CRT produces a sharp image through composite or RF with less artifacts and less blending, people usually mention “comb filters”. Example:

(Direct link to raw video file: https://v.redd.it/qevhw3728hu51/DASH_720.mp4)

This isn’t even composite. It’s RF. Yet the blending looks like what ntsc-adaptive looks like with increased NTSC resolution.

The user had initially posted this after he repaired the caps on the TV:

And someone asked him to post a recording of the waterfall.

3 Likes

I use my presets in S-Video mode because, in general, I don’t like NTSC temporal artifacts. I do like the other NTSC color blending artifacts, though.

Ah, I see the difference in your example there. Great!

But I don’t mind that much ringing in the normal picture. It’s very subtle and looks like it’s accurate to how NTSC works on a real CRT.
The problem I had with my presets was that increasing Gamma Correct or Bright Boost Dark Pixels exaggerated the ringing much beyond that, to the point of it being very distracting, and this new setting doesn’t work in that scenario.

Here’s a pretty bad example with some Gamma Correction and Bright Boost Dark Pixels with NTSC anti-ringing disabled:

image

And now with NTSC anti-ringing enabled:

image

There’s practically no change, so this problem is somewhere else in the way Gamma Correct is processed. But you already explained it a few posts back, so maybe it’s just intentional.

Regardless, from what I can see in your example, it’s a great new setting for those that want to slightly reduce the NTSC ringing. Thank you very much! :slightly_smiling_face:

Hmm. I watched the raw video a few times but it’s a bit hard to see. But it looks to me that the vertical bars of the waterfall are perfectly blended, like in NTSC-Adaptive.

In NTSC-Adaptive, as soon as you raise the NTSC resolution scaling parameter by a single notch, the vertical bars in the waterfall start to be visible. And correct me if I’m wrong, but I was under the impression that any NTSC resolution scaling value above 1.0 is beyond spec, and inaccurate to real CRTs and consoles.

Now, I’m not saying it’s not possible. And I might be wrong about NTSC resolution. I’m just saying that in that particular video the columns seems perfectly blended to me. But it would be cool if there were a video or photo of a more close-up shot. Link me up if you find any!

1 Like

Doesn’t look like that to me. It looks partially blended since I can see vertical lines between the water drops, just like I get with raised NTSC res.

2 Likes

I think I made it the way I wanted!!.. What Do you think? :sweat_smile:

5 Likes

Can you share this preset?

2 Likes

I second this motion!

1 Like

Looks pretty good to me!

1 Like

What can cause some kind of ringing, or more like wider color artifacts, is trying to do gamma linearization on a picture that went through YIQ conversion and was modified before returning to RGB.

I was using this picture where it was really visible when trying to deal with that:

maglordh-210522-214424

3 Likes

Could be, yeah.
There are vertical water ripple patterns even on a fully blended waterfall, though. Other games, such as Aladdin that make use of solid blocks of dithered colors would be easier to see. And more close-up shots would be nice. But you might be correct. It’s a bit hard to see though.

And also, maybe increased NTSC resolution scaling is within spec. Because I’ve seen shots online where the waterfall is not dedithered on S-Video modded Mega Drives, while S-Video mode on NTSC-Adaptive dedithers them completely. I’m trying to investigate that, but I found no documentation about the NTSC shader, and the code itself is not commented.

Looking good! Preset please!
I wish I could benefit from those low-brightness presets.

Could that be what’s happening with Gamma Correction and Bright Boost on this shader?

2 Likes

WOHOO! Thanks @guest.r and @hunterk :confetti_ball: :partying_face:

Easy shader updates for everyone!

4 Likes

It’s more like blue is mixing with red and green, creating a brighter, less saturated and more luma intensive situation. It’s quite ntsc specific and can be avoided with some tweaking.

1 Like

Thanks, I will post it later tonight :grin:. The pics get darker, don’t know why. But on screen looks better and brighter… Maybe it can work with 1080p too…

2 Likes

Newest versions are now in the official libretro slang-shaders repository. Older presets and versions are not available any more, but you can still download them at the first post of the thread.

Big thanks to @hunterk for helping with this. Also thanks to all participating/watching in this thread.

There are still some things on the TODO list… dunno 100% about the schedule. :smiley:

9 Likes