Please show off what crt shaders can do!

Edit: Oops, yeah. Meant to say second image w/larger phosphors looks nice.

In terms of realistically emulating a CRT mask, the tighter mask is definitely preferable. I like the larger phosphors in this particular case because it more accurately matches the vertical resolution of the PSP screen at a resolution of 1920x1080. If you want to match the vertical and horizontal resolution, then you’d need something like the custom pattern I described above. It’s just a thought, though.

I checked out the new images and they look great on my iPhone with the brightness maxed out :slight_smile: Should get similar results on any decently bright TV.

1 Like

I think you see some slight rounding of the scanline edges even on a BVM, so you might consider just a hint of horizontal blur. Scanlines look nice though.

1 Like

Now I’m playing around with composite video shaders.

The presets in Tvout+interlacing are pretty great. You can easily swap interlacing for scanline-sine-abs or one of the other scanline shaders, and dotmask can go after that, if desired, if you set the scanline pass to the correct scale.

Question for the experts: what is the maximum that chrominance I/Q can be set to while still being composite video, given the limited signal bandwidth? I’ve been eyeballing this at 100-120, but it’d be nice to have something empirical to base this on.

I’d like to try creating presets for different types of filters used in TVs. Is there a way to edit the composite video emulation?

No comb filter- all the artifacts are present and horizontal resolution is limited to 260 lines

two line analogue comb filter- reduction of rainbow artifacts, improved horizontal resolution

three line analogue comb filter- same as two line filter, plus reduction of dot crawl and improved vertical resolution

2D three line adaptive comb filter: dot crawl almost completely eliminated and sharpness nearly identical to S-video

3D motion adaptive comb filter: basically identical to S-video

Here’s tvout+ntsc-256px-composite+interlacing, with interlacing replaced with res-independent scanlines and dotmask added after that.

EDIT: just realized I should have used the 320px version for Genesis, but oh well.

3 Likes

Is there any shader that can form the custom mask pattern you described? Would like to test it out.

And thanks for checking out the images. It already looks good at 50-60% brightness.

torridgristle’s blend overlay shader can do it. It’s in the reshade folder. Instructions are in the shader file :slight_smile:

This particular pattern isn’t included, but you can find a huge collection of masks in @hunterk’s mask effect shader snippet, which I posted a link to above (a few posts back).

edit: You might also consider using 50% black instead of 100% for the black lines between the triads, otherwise the black lines are over-represented and too much brightness is lost.

Since displays differ so much, I would suggest firing up Fudoh’s 240p test suite when adjusting brightness/contrast/color levels/gamma/etc. Make sure inner bars of the PLUGE are still visible (in a dark room), and all the bars are clearly visible in both color bars and grey ramp test patterns with no sudden jumps. Should be good to go after that!

1 Like

I’ve been reading this talk about CRT masks but I’m not very knowledgeable in the topic, specially on green-magenta phosphors for ~1080p resolutions.

Do you have any similar replacement recommendation for crt-royale slotmask (TileableLinearSlotMaskTall15Wide9And4d5Horizontal9d14VerticalSpacingResizeTo64) in 1120p and 1200p resolutions for snes and the like? I do get some vertical unevenness when using slotmask as opposed to aperture.

I think the Nyquist-Shannon theorem dictates that the maximum horizontal resolution should be around

3579545 / (525 * 30 * 2) = roughly 113

(divide the color subcarrier frequency by the number of lines and by the number of frames per second (not fields) and by 2)

But I could be wrong :blush:

This also applies to RF and S-video by the way, only component can surpass this limitation AFAIK.

2 Likes

@Doriphor

Nice info! Looks like I wasn’t too far off :smiley:

@Dogway

Unfortunately, even the tightest slotmask pattern really needs 4K and up to have a realistic TVL / dotpitch. At 1080p you’re better off using aperture grille or triad dotmask.

The magenta/green aperture grille gives you 540 TVL @ 1080p based purely on the number of RGB triads, and takes advantage of the subpixel structure to avoid color fringing and chromatic aberration (assuming standard RGB subpixels). You can use the aperture grille from lottes to reduce TVL to 360 (more in line with a consumer-grade CRT), but then you’ll get chromatic aberration.

Magenta/green dotmask works nice at 1080p but looks more like an old PC monitor. It’s nice for DOS games and such.

I’m going to get around to integrating your grading shader into my presets soon; I like what I’m seeing so far.

2 Likes

I’m not quite sure because color is quadrature amplitude modulated (QAM) in NTSC and the subcarrier doesn’t really vary in frequency so, not certain if Nyquist-Shannon has anything to do with it in which case it would be double the answer but I’m pretty sure I read somewhere that NTSC’s max horizontal color resolution is 112 or 113 and it seemed to fit so yeah. I don’t know for sure and I don’t want to mislead anyone :confused: :slight_smile:

1 Like

Thank you, by the way, I will be making some changes to my presets, swapping grade and the ntsc passes, and changing a few things in the ntsc shader like processing in video levels.

2 Likes

Here it is again.

https://filebin.net/6f381e0wz6dw0lvm

I should probably mention that it is crt-aperture that I have used. I have of course not coded the shader.

1 Like

Changing a few things in the ntsc shader like processing in video levels.

Could you elaborate on the ntsc changes some?

Actually, I’m sorry, but after a night of sleep: I was wrong. Sometimes the simplest answers are the best. The active video time for a single scanline * color subcarrier frequency :

52.6 microsecond * 3.579545MHz = 188.284067 is the max horizontal color resolution for NTSC afaik. For real this time, Coming from a rested brain. :stuck_out_tongue:

So far I’ve gotten 4 different answers to this question that all seem credible, lol.

So, to simplify things, what should YIQ be set to in TVout-tweaks to get composite video? What are the maximum values that composite video could support?

Just tested the Blend Overlay shader :

test1 100% Black

test2 50% Black

test3 Magenta Green

image Mask you posted earlier

image Mask you posted even further back

Your mask in Guest-Dr-Venom with the code provided by @guest.r

2 Likes

@DevilSingh Could you do a 50% black version of mask 4, the magenta green and black slotmask?

That was my personal favorite out of your screens but I think it could look nicer with that 50% black.

1 Like

Here

Untitled-1

It’s not my mask. It’s something @Nesguy came up with for me to test with PSP games.

1 Like

@DevilSingh Sorry I wasn’t clear on what I was wanting, I was asking for a screenshot using that mask, lol.

That was totally my fault, and yeah I knew @Nesguy made it.

1 Like

Are you using native res and upscaling w/integer scale?

Wondering why the lcd mask isn’t mapping to the pixels the way I thought it would :thinking:

1 Like

Untitled-1 50% Black

SoulCalibur Broken Destiny :

Crisis Core FFVII :

2 Likes