valadaptive / ntsc-rs

Free, open-source analog TV + VHS effect. Standalone application + plugin (After Effects, Premiere, and OpenFX).
Other
237 stars 4 forks source link

Add PAL and SECAM color system emulation #69

Open VexorionReal opened 3 months ago

VexorionReal commented 3 months ago

As in the title.

Degamisu commented 3 months ago

Wouldn't this defeat the whole NTSC part of NTSC-RS? Good idea, but would it be a hz difference and resolution that can already be adjusted?

0x5066 commented 3 months ago

Personally I don't see much of an issue, because I'm sure that there's a handful of people out there also wanting to emulate PAL/SECAM systems for authenticity

Degamisu commented 3 months ago

Personally I don't see much of an issue, because I'm sure that there's a handful of people out there also wanting to emulate PAL/SECAM systems for authenticity

What would be the differences besides the ones i listed though?

LucianoTheWindowsFan commented 2 months ago

Personally I don't see much of an issue, because I'm sure that there's a handful of people out there also wanting to emulate PAL/SECAM systems for authenticity

What would be the differences besides the ones i listed though?

Color spaces. While NTSC uses YIQ, PAL (including the 60hz PAL-M system used in Brazil) uses YUV and SECAM and the Argentine PAL-N variant use YDbDr. The better seems to be PAL, as with SECAM, we get the so-called "SECAM fire", whereas NTSC had the tinting issue, so PAL seems to be perfect (in fact, in Italy there was a dispute regarding adopting SECAM or PAL, but the latter was ultimately adopted and Italy, alongside the also-PAL Spain, introduced color broadcasts in 1972).

Additionally, whereas the color in NTSC and PAL is amplitude-modulted, SECAM color is frequency-modulated, therefore making the ghosting (known on ntsc-rs as "ringing") only noticeable on luma, and not chroma like the other color systems.

Degamisu commented 2 months ago

Personally I don't see much of an issue, because I'm sure that there's a handful of people out there also wanting to emulate PAL/SECAM systems for authenticity

What would be the differences besides the ones i listed though?

Color spaces. While NTSC uses YIQ, PAL (including the 60hz PAL-M system used in Brazil) uses YUV and SECAM and the Argentine PAL-N variant use YDbDr. The better seems to be PAL, as with SECAM, we get the so-called "SECAM fire", whereas NTSC had the tinting issue, so PAL seems to be perfect (in fact, in Italy there was a dispute regarding adopting SECAM or PAL, but the latter was ultimately adopted and Italy, alongside the also-PAL Spain, introduced color broadcasts in 1972).

Additionally, whereas the color in NTSC and PAL is amplitude-modulted, SECAM color is frequency-modulated, therefore making the ghosting (known on ntsc-rs as "ringing") only noticeable on luma, and not chroma like the other color systems.

interesting! although I'm not sure what different color spaces would look like, I do know that the frequency-modulated signals should have a higher definition, right?

LucianoTheWindowsFan commented 2 months ago

Personally I don't see much of an issue, because I'm sure that there's a handful of people out there also wanting to emulate PAL/SECAM systems for authenticity

What would be the differences besides the ones i listed though?

Color spaces. While NTSC uses YIQ, PAL (including the 60hz PAL-M system used in Brazil) uses YUV and SECAM and the Argentine PAL-N variant use YDbDr. The better seems to be PAL, as with SECAM, we get the so-called "SECAM fire", whereas NTSC had the tinting issue, so PAL seems to be perfect (in fact, in Italy there was a dispute regarding adopting SECAM or PAL, but the latter was ultimately adopted and Italy, alongside the also-PAL Spain, introduced color broadcasts in 1972). Additionally, whereas the color in NTSC and PAL is amplitude-modulted, SECAM color is frequency-modulated, therefore making the ghosting (known on ntsc-rs as "ringing") only noticeable on luma, and not chroma like the other color systems.

interesting! although I'm not sure what different color spaces would look like, I do know that the frequency-modulated signals should have a higher definition, right?

Instead, frequency-modulated signals have better reception, with less ghosting.

As states, YIQ (NTSC) has the tinting issue, YUV (PAL) seems to be perfect besides oversaturation on poor signal reception, and YDbDr (SECAM) produces red and blue snow, often known as the "SECAM fire".

LucianoTheWindowsFan commented 1 month ago

More detailed differences:

LucianoTheWindowsFan commented 1 month ago

More detailed differences:

  • Color subcarries (in Mhz) / Color spaces / Technical details:

    • NTSC: 3.579545 (on the software code, it's "315000000.00 / 88.0") / YIQ

    • The one currently included in the software. It's the one used in the entire Americas (excluding French Guyana, Argentina, Paraguay, Uruguay and Brazil), as well as Palau, Japan, Myanmar and the Philippines. It was never adopted in Europe and Africa, due to one major disadvantage: the infamous tinting issue (on poor signal reception, the video signal's hue varies).

    • PAL (most variants, including PAL60/NTSC443): 4.43361875 (on the software code, it's "390158450.0 / 88.0") / YUV

    • The de facto video standard in Europe, Africa, Asia and Oceania. It fixes the tinting issue by instead only giving saturation issues on poor signal reception. For that, the phase of the V channel is reversed every line (hence the name PAL, standing for "Phase-Alternating Line") to cancel minor phase errors in the reception process, at the cost of having half the vertical chroma resolution.

      • A variant named PAL-S exists, which ignores the phase fixes, therefore giving the so-called "Hanover bars" (with even lines having the reversed V channel used for fixing the issue), and therefore bringing back the tinting issue that made NTSC infamous.
    • PAL-M: 3.575611 (on the software code, it's "314653778.0 / 88.0") / YUV

    • Basically PAL, but with a different color subcarrier (and also uses 480i60, like NTSC and PAL60, though in the software, that can be manually configured, with the framerate configurable for images, and on videos, reflects the video's actual framerate). Used in Brazil, as to avoid exporting NTSC TVs, which could be expensive during PAL-M's introduction in 1972 due to high import taxes at the time.

    • PAL-N: 3.58205625 (on the software code, it's "315220950.0 / 88.0") / YUV

    • Basically European PAL (even with the same resolution and refresh rate), once again with a different color subcarrier. Used in Argentina, Paraguay and Uruguay.

    • SECAM: 4.4336... (on the software code, it's "390162666.0 / 88.0") / YDbDr

    • It was the de facto video standard for Eastern Europe, most of which later switched to PAL in the '90s. It was also used in some Middle Eastern countries, as well as a few Asian countries prior to the '90s, and French overseas territories. Odd lines contain the Db channel, whereas the even lines contain the Dr channel, therefore having half the vertical chroma resolution, like PAL. It notoriously fixes the tinting and saturation issues, and is also unique for its frequency-modulted chroma signal, therefore only making ghosting noticeable on the luma signal. This, at the cost of giving the so-called "SECAM fire" (basically red and blue snow).

      • In Metropolitan France and Monaco, the SECAM-L variant was used, which had positive video modulation (just like the monochrome-only System A, C, E and F systems, with System E being used for black-and-white television in those two countries until its discontinuation in the 1980s), therefore giving black snow. Discontinued with the digital television transition in 2011.

I have made a fork named "pal-rs", but the only changed are in color space and chroma subcarrier, as it still has tinting issue simulation and still has the full vertical chroma resolution.