These few questions on "Codecs guide" are really very helpful in solving most of the problems facing you in watching videos on your computer, I copied them to my blog for fear of getting deleted
The original link is:
http://www.codecguide.com/faq_display_issues.htm
Q: | I have troubles displaying RealMedia files on my secondary monitor |
A: | Rename your file to .rmvb. Then MPC will use DirectShow instead of the RealMedia framework to play the file. |
Q: | When I play the video full-screen, the screen goes black while the audio continues normally. |
A: | This problem may occur if you have the WindowBlinds or ObjectDock programs installed. Disable those programs. If you have a NVIDIA graphics card, then you could try to update its drivers. |
Q: | Some videos files look "washed out" and colors are not vivid |
A: | This is caused by wrong luminance levels. Solutions can be found here. If luminance levels are wrong, then black is displayed as dark gray and white is displayed as very light gray. Colors look very dull. |
Q: | What are luminance levels? |
A: | Digital video is typically encoded in a YUV
format. YUV is a family of color spaces (YV12, YUY2, etc), that encode
color information (chroma) separately from brightness information
(luma). There are two standards for the encoding of luma. For standard-definition TV the standard is BT.601. For high-definition TV the standard is BT.709. Luma values fall in a range. Unfortunately this range is not always the same. There are two commonly used ranges: 0-255 (aka PC levels) and 16-235 (aka TV levels). When converting a YUV colorspace to RGB, the correct standard (BT.601 or BT.709) must be used and the correct range (TV or PC levels) must be used. The above is not always done correctly. It can go wrong with certain combinations of video renderers, video resolutions, and graphics driver settings. The most common thing to go wrong is that the video renderer outputs TV levels instead of PC levels. |
Q: | How can I correct wrong luminance levels? |
A: | There are several methods for correcting luminance levels. We have listed them below in order of recommendation. All methods assume that you are outputting the video to a PC monitor or LCD TV, meaning a device that needs full range luminance (0-255). If you are using an old CRT TV or projector, then read the comments at methods 2 and 3. Method #1: Adjusting graphics driver settings NVIDIA Since version 177.84, the NVIDIA drivers have an option for configuring the luma range. You can find the option here: NVIDIA Control Panel -> Video & Television -> Adjust video color settings -> Select "With the NVIDIA settings" -> Advanced tab -> Set Dynamic Range to "Full (0-255)". ATI The ATI driver requires a Registry tweak. With the tweak applied, the driver will convert TV levels to PC levels for SD resolution video. It already does that by default for HD video. Several ATI driver tweaks can be found at: avsforum. The UseBT601CSC setting is the one related to luminance levels. Note: the above tweak only works with driver version 9.1 and older. ATI removed it in 9.2 and newer. Method #2: Pixelshader in Media Player Classic A pixelshader is a small program that runs on your graphics card and processes some graphic data. In this case each frame of your video. Media Player Classic has a special pixelshader called "16-235 -> 0-255" for converting TV levels to PC levels. This shader only adjusts luma values. Use the [SD] variant of the shader if luminance levels are only wrong for videos with low resolutions. Use the [SD][HD] variants if the levels are always wrong. Some requirements for the pixelshaders in MPC:
Forcing ffdshow to output in the RGB32 colorspace can help prevent luminance level issues. Downside of this method is that doing this conversion increases CPU usage. To force RGB32 output in ffdshow, you should uncheck all colorspaces except RGB32 on the Output page in ffdshow configuration. It is also recommended to enable "High quality YV12 to RGB conversion". There are additional options on the RGB conversion page. Recent versions of ffdshow will automatically use the correct settings, so you don't need to worry about them. If you are outputting to a CRT TV or projector (or any other device that expects TV levels as input), then you need to adjust the setting under Output levels on the RGB conversion page. It is configured by default to output to a computer monitor. LCD TVs usually also expect PC levels, just like a computer monitor. Some TVs have an option to choose between Full and Reduced range. Tip: the Profiles/Presets feature in ffdshow can be used to create different sets of settings. You can even auto-load profiles based on conditions like resolution of video format. You could for example create a profile specifically for HD resolution video, and use the 'standard' profile for low resolution videos. Method #4: Levels filter in ffdshow video decoder ffdshow has a special filter for adjusting (luminance) levels. To correct wrong luminance levels for a PC monitor or LCD TV you need to convert to PC levels. To correct wrong levels for a CRT TV, you need to convert to TV levels. To convert from TV levels to PC levels use 16-235 as input range and 0-255 as output range. To convert from PC levels to TV levels use 0-255 as input range and 16-235 as output range. Method #5: Monitor settings Some monitors can be calibrated to assume a certain luminance level as input. Read its manual for the details. Method #6: Resize in software If wrong levels occur only with SD video resolutions and not with high resolutions, then another solution would be to resize the video to your screen resolution before sending it to the video renderer. For example ffdshow can be used for resizing the video. |