Hi all,
It doesnt appear to be very well known, but all sixth gen consoles (DC, PS2, GC, XB) plus the Wii use whats called a "flicker filter" (Sometimes also refered to as a "deflicker filter") to 'blur' the lines on 480i video signals. The filters original purpose was to prevent fine details from 'flickering' up and down by one line when displaying in interlaced mode (480i) on a CRT TV.
To quote the GC/Wii SDK:-
Now with a progessive signal (480p) the flicker filter should always be disabled, since there are no interlaced lines to flicker. However Nintendo did something odd - they instead created a new video mode that deliberately 'softens' the picture when in progressive scan mode.
This post from the Beyond3D Forums explains it:-
Both the GameCube and Wii feature this flicker/softening filter, and certain games even allow you to turn the filter on or off in the options (Melee, Brawl and Pikmin 2 to name a few of them) On the GameCube you can use Swiss to disable the flicker filter, however on the Wii I have found no such option
Many backup loaders do give you the option to force the video mode, but they dont appear to give you the option to enable/disable the flicker/softness filter independantly. Is this something that could be added to backup loaders? Or is Wii homebrew 'dead' at this point?
Apologies for the length of this post, and thanks in advance for any help.
It doesnt appear to be very well known, but all sixth gen consoles (DC, PS2, GC, XB) plus the Wii use whats called a "flicker filter" (Sometimes also refered to as a "deflicker filter") to 'blur' the lines on 480i video signals. The filters original purpose was to prevent fine details from 'flickering' up and down by one line when displaying in interlaced mode (480i) on a CRT TV.
To quote the GC/Wii SDK:-
Flicker filters made sense at the time due to CRT TV's being the primary display type. However nowadays flat panel displays are the norm, and they have to deinterlace 480i signals - so now the flicker filter is in fact detrimental to the video quality as it just 'blurs' multiple lines together resulting in a softer blurred looking image.SDK_Advanced_GX said:18.3 Deflicker algorithm
Deflickering is typically used to solve two problems:
• To eliminate flickering of thin (one-pixel tall) horizontal lines for interlaced video display. A one-pixel tall
horizontal line will flicker at 30Hz as the TV interlaced video shows this line every other field.
• To perform simple antialiasing by rendering 480 lines at 60Hz in the frame buffer and deflickering to 240 lines
for interlaced display. This is basically 2-sample super sampling.
The vertical filter hardware is used for deflickering purposes, so antialiasing and deflickering are similar concepts.
Now with a progessive signal (480p) the flicker filter should always be disabled, since there are no interlaced lines to flicker. However Nintendo did something odd - they instead created a new video mode that deliberately 'softens' the picture when in progressive scan mode.
This post from the Beyond3D Forums explains it:-
dfi said:Ok, talking to a developer friend of mine, there are 2 specific wii/gcn API calls to turn on deflickering mode.
For interlaced displays, you call GXNtsc480IntDf().
For progressive scan displays, you call GXNtsc480ProgSoft().
Since anti-aliasing is really a side effect of deflickering and you don't actually deflicker anything in 480p, the api ends with "soft" in proscan, instead of "df" for interlaced displays.
Both the GameCube and Wii feature this flicker/softening filter, and certain games even allow you to turn the filter on or off in the options (Melee, Brawl and Pikmin 2 to name a few of them) On the GameCube you can use Swiss to disable the flicker filter, however on the Wii I have found no such option
Many backup loaders do give you the option to force the video mode, but they dont appear to give you the option to enable/disable the flicker/softness filter independantly. Is this something that could be added to backup loaders? Or is Wii homebrew 'dead' at this point?
Apologies for the length of this post, and thanks in advance for any help.
Last edited by Razor83,
, Reason: Corrected fifth gen to sixth gen