Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add PAL and SECAM color system emulation #69

Open
VexorionReal opened this issue Mar 21, 2024 · 9 comments
Open

Add PAL and SECAM color system emulation #69

VexorionReal opened this issue Mar 21, 2024 · 9 comments
Labels
enhancement New feature or request

Comments

@VexorionReal
Copy link

As in the title.

@VexorionReal VexorionReal changed the title Emulating PAL and SECAM color systems Add PAL and SECAM color system emulation Mar 21, 2024
@Degamisu
Copy link

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
Copy link

0x5066 commented Mar 21, 2024

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

@valadaptive valadaptive added the enhancement New feature or request label Mar 21, 2024
@Degamisu
Copy link

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
Copy link

LucianoTheWindowsFan commented Apr 11, 2024

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 uses YUV and SECAM uses 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
Copy link

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
Copy link

LucianoTheWindowsFan commented Apr 13, 2024

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
Copy link

LucianoTheWindowsFan commented May 3, 2024

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.

@LucianoTheWindowsFan
Copy link

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.

@fukionline
Copy link

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.

should've seen it coming

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants