Sony Megatron Colour Video Monitor

ah, I see: you never have the actual raw, low-res image available. No worries.

1 Like

Oh, the resolution is an integer so nearest neighbor scaled screenshot works right?

1 Like

Ah, yeah, this is what I was looking for:

https://i.imgur.com/DfH4CFO.png

That is, 1:1 360p, so Cactus can open it in RetroArch’s built-in imageviewer core and apply the shader on his end.

1 Like

I also see these misalignment patterns on my 4K display with certain resolutions and/or masks, especially on 480p graphics such as the map in silent hill or the game over screen in FFVII. Enabling Integer Scale Overscale helps, but you lose a few rows of pixels at the top and bottom

2 Likes

@MajorPainTheCactus

I have to thank you for this great shader.

The 300 TVL setting is the best phosphor imitation I have ever seen up until now and it indeed comes very close to a real lowres CRT. The reason I think is, that most shaders look too soft / blurry and therefore “fake”, while this shader with those well created, realistic looking masks looks sharp in an authentic and natural way.

Aperture Grille or Slot Mask in combination with 300 TVL looks very authentic and works great for lowres games. Shadow Mask for me does only work with 600 TVL setting or above, as with 300 TVL it is way to coarse.

It’s also great, that you ported it to Reshade which I have to test in the future, as there are some important emulators like Teknoparrot, Duckstation, Redream etc. which are not included in Retroarch and need good shader support.

The HDR versions of the shader work great and are bright enough on my OLED TV. I found out, that it’s very important to set both HDR luminance values correctly in the shader, so colors and brightness look right without clipping. I also use the 240p test suite to get the RGB and grey ramps look right.

On TV side 4:4:4 chroma enabled (HDMI input renamed to PC) and Windows 11 (HDR enabled, Retroarch also HDR enabled) is also important.

And the cherry on the cake is, that the shader is very lightweight. Like you wrote, it works even on an integrated Intel GPU. With other good shaders it was not possible without my RTX 3060 Ti to run games smoothly. And that your shader with the right settings even looks better in some ways than others is amazing.

I just have to compare the different presets, as I have noticed that there are some color differences between the various Sony PVM and JVC etc. presets. For now the Sony Megatron default and JVC D-Series presets look most realistic to me, color wise. But I have to compare much more till I have a definitive opinion about this.

You can be proud for what you achieved with this undemanding (hardware wise), yet great looking shader. Again, big thanks from my side, the Megatron shader is my first choice in the future. And btw, nice introduction story you wrote at the beginning of this thread :wink:

3 Likes

Here is an example what I mean with natural sharpness, which I could not achieve yet with another shader and what makes it standout:

Other shaders have always this “fake” looking softness, which I could not get rid off despite playing hours with the settings. I wonder what the reason behind it might be.

I read here, that this shader works on a “subpixel level”, which maybe the reason behind it…But honestly I have no clue, what this exactly means and what the difference in regards to programming in comparison with other shaders might be.

2 Likes

Can you share your Peak and Paper White Luminance settings please as well as state which TV model?

I’d like to start a database of settings from users who got things working and looking right to make things easier for new users and also to start gathering more data about how the shader works in the real world on various displays.

This is why.

1 Like

Yes, sure. I set the peak luminance at 700 and the paper white at 600. My TV is a LG 55GX OLED.

Normally the paper white should be much lower, as OLED’s normally don’t have that much brightness on full field white screens. But this setting works the best for me, as there is no clipping in the grey ramp in the upper parts near 100% white and below 600 the brightness slowly gets lower and the colors start to get duller. Paper white at 200 for example looks very bad.

So from what I understand here is, that accurate masks make the picture very dark and therefore most shaders optimize for brightness instead of accuracy. Black pixels between the phosphors do add sharpness if I think about it and this may be one of the reasons why the Megatron masks looks so realistic.

What I also realized is, that the distinct separation of black and used pixels does somehow generate this contrasty CRT glow which we are all after, without using any tricks (beside HDR brightness boosting from the TV side). The picture now has some depth and punch which I miss from other shaders too.

The Megatron masks are indeed very dark in SDR mode (unusable on my OLED) when compared to other shaders. But in HDR absolutely fine. Thank Goodness that HDR exists, otherwise there would be no way to have such an accurate CRT simulation.

The newer LG G3, which has almost double the brightness of my GX model, should be able to use black frame insertion for CRT motion clarity on top.

2 Likes

Ah Im glad youre enjoying and using it - great to here such good feedback. To be honest when I had the idea for using HDR to simulate CRTs I had no idea I was going to end up writing a shader for it. I just added HDR support to RA and then sat back for 6 months thinking someone else was going to harness it to make a stripped down shader but then no one did (kind of) and I thought well I may as well try.

I say ‘kind of’ as Ive been lead to believe you can get other shaders to look like this by turning off most of the bells and whistles and making the masks 100% and then switching on HDR in RA.

The really major thing we need now are TVs that are bright enough to handle back light strobing as well. Clarity in motion is really lacking. This shader should help in that as well as we can run this at high refresh rates and so hopefully get that clarity up if the brightness was there to support it. By the way try this shader on your mobile if you have an Android - on my one plus pro 8 it works a treat in SDR mode and in motion its the best LCD/OLED Ive seen.

2 Likes

Thanks!

This all seems very familiar to me.

Are you using HDR Game Mode or HDR Bright Mode in Picture Settings?

For me I think I used similar settings when using HDR Game Mode but I could have gotten away with much lower Paper White Luminance when using the HDR Bright Picture Settings.

Of course I wouldn’t game on any setting other than HDR Game but it’s clear that this setting is much darker than HDR Bright by default.

I think I managed to get things looking pretty decent. My only issues were the reds in Bonk’s Revenge looking more brownish, rust coloured than red and the blue High Score text looking a bit pale compared to virtually all other colours on the screen.

The thing is, other than those very specific things which, everything looked amazing!

I’m using an LG 55OLEDE6P by the way.

You can read this post to see what my last experience using the shader was like as well as some photos from that session.

2 Likes

I am using HDR game mode.

This is exactly the problem I have when I go low with the paper white value, red is brownish and overall colors look very bad.

Her is a comparison between paperwhite 200 and 600.

200 (notice how Cody almost looks like a zombie :grin:):

600:

The difference in colors in reality is even more obvious than on the picture, as the camera maybe compensating a little bit.

Absolutely, this is the most authentic shader I have tried yet, and I am playing with shaders and formerly scanlines over 15 years now.

As you guys mentioned before, the black pixels between the phosphors are one reason for it. A CRT tube acts similar if we think about it, but instead of black pixels it has the metal wires (Aperture Grille) attached to the glass inside the tube or the metal grid with those tiny holes (Slot Mask). Where the wires / grid blocks the light, the picture also gets black at this point, but now we do this digitally with switching off pixels to black. In conclusion this means, that CRT tubes also produce a lot of light which gets eaten up by the mask. Without the mask they may also produce over 500 nits on a full white screen instead of 100 nits.

2 Likes

Thanks. You should see how easy it is to get things looking perfectly using HDR Bright mode albeit at the cost of possible added latency.

At first I forgot my TV on HDR Bright and was able to use relatively a low Paper White value, more in line with what @MajorPainTheCactus usually recommends.

Upon realizing my error, I had to start over using the HDR Game setting.

This is exactly what I think is needed here, more discussion and collaboration so eventually users with similar displays would better know what to expect, learn about the little quirks and how to overcome them.

Are you able to use Manual/Pro settings? If so, you can try ISO 100/200 or as high as you need depending on if you’re capturing dark or light areas of the screen or depending on if you want to capture individual phosphors without natural blooming, Speed 1/60, Manual Focus makes it easier to get consistent quality and White Balance - whatever looks similar to what you see in real life.

I would have to agree that there’s a lot of potential here that seems to be untapped by the wider community.

Don’t forget you can “NTSCfy” your output using my Custom Blargg NTSC Video Filter Presets. I’m particularly proud of the latest 3rd Generation ones.

2 Likes

Wow, you also implemented HDR in RA? You are “clearly a person lordly caliber” as someone wrote in the reddit forum :grin: Honestly I would like to send you a little donation if you would accept this, because I am having so much jow with the shader. If you have paypal, you could pm me.

I will try it on my phone, but I only have a Samsung Galaxy S10e with 1080p resolution, which may not be able to produce the Aperture Grille mask accurately. I tried your shader with my 1080p Notebook display too, and all I get is blank pixels between the other used pixels, without any RGB phosphors.

2 Likes

My TV has a HDR setting, which has the name “Lebhaft” in german language (in english it may mean dynamic or bright as you mention). It’s the brightest of all HDR presets. But as I am happy with the brightness in game mode and I want to have as low latency as possible, I think I am fine.

Yes, I also would like to see more indepth discussions here about the shader.

I only use my Samsung Galaxy S10e phone for taking pictures and I think it has not the same capabilities as a dedicated camera. But for posting some comparison screenshots I think it’s fine.

Yes, and I also hope more people buy HDR screens and use 100% strength masks in combination with HDR, as this can be a very good substitute for CRT monitors.

In reality a bright OLED TV with accurate mask simulation and HDR can even look better than a CRT TV, as the contrast is better (many CRT’s have only a greyish glass layer to combat low brightness, which those masks inside the tube eat up). Black Trinitron’s from Sony are the only ones I know, which have black levels which are good enough for my taste.

Beside that CRT’s have geometry issues, which we don’t have too with OLED TV’s. Only the motion problem has to be managed, but with enough brightness and BFI this can be solved too.

Thanks, I will try it out!

2 Likes

I tried some Blargg Videofilters within Retroarch, but they don’t do anything when using the Megatron shader. I can activate them, but the picture looks the same as without.

2 Likes

I wasn’t suggesting nor expecting that you might actually want to play using that TV setting was just sharing my experience.

I think that has to do with the particular core or game. Possibly something about the pixel format being output so not all cores would support them.

Many do though for example Beetle PSX HW, SNES9X, Genesis Plus GX, Beetle PCE/Fast/SGX, PicoDrive to name a few.

For the ones which don’t support them, you can prepend the NTSC Adaptive Shader or use one of the Sony Megatron Color Video Presets which already has the NTSC Adaptive Shader integrated.

@GPDP1 has provided @guest.r’s more up to date version a few posts above.

2 Likes

Thanks, with the SNES Snes9x Core it works! And it looks good so far. The composite and S-Video versions can help to hide the limitations of lowres games pretty good, especially on a 55 inch OLED, which normally is way too big for 240p content.

The 4:3 diagonal is between 40 and 45 inch approx. which translates to a huge CRT. Normally I would play 240p games on a CRT with a max. diagonal of 25 to 29 inch, so games look not too crappy. This is why I am thinking about getting a second 27 or 32 inch 4K monitor. But the affordable monitors are all LCD and not OLED, which at the moment stops me from buying. Maybe in the future I will get one, when they get cheaper.

2 Likes

Oh no, no your feedback is reward enough but thank you for the offer! Im actually going to start a YouTube channel shortly (next few weeks), going through the rendering pipeline of modern games (D3D11 and 12) and profiling them (with a special tool Ive written). Explaining what part is doing what and which parts are fast and slow and why. Essentially have you ever wondered what actually happens behind the scenes when you choose ‘high’ or ‘low’ on a graphics option in a game. Hopefully I can shed some light on that for you. So be my first YT subscriber - its going to be bumpy ride. :rofl:

5 Likes

Oh wow, please let us now when you started the Youtube channel, I will be your subscriber :smiley: Now I will test out Reshade with your Megatron Shader :+1:

2 Likes

@guest.r, @hunterk Any chance we could see this available as a standalone NTSC Shader/Preset merged and included in the RetroArch repo?

2 Likes