Hello, and as always thank you in advance for any help . I've a Lenovo ThinkPad T430 2344BMU running Windows 7, with an Intel i7-3840QM quad-core processor, 16GB of RAM, and Intel HD 4000-NVIDIA NVS 5400M graphics. Unfortunately, I'm battling severe horizontal screen tearing when playing HD mkv-avc-aac files. This is the case for HD mp4-avc-aac files as well, so I don't think that the container is the issue. This screen tearing is prevalent using the Direct3D video renderer in VLC, SMPlayer, Media Player Classic Home Cinema, and KMPlayer (all installed, not portable, no installed codec packs). After months of experimentation I've learned that rendering the video with the Enhanced Video Renderer (available in MPC-HC and KMP) eliminates the tearing but also noticeably lowers the brightness of the displayed video (darker output even than the Direct3D renderer), which can be quite problematic depending on the video. I've enabled VSync in the NVIDIA Control Panel (and the players where possible), but to no apparent positive effect, and I've also set the refresh rate to 60Hz for the monitor and in the NVIDIA Control Panel. For the above four video players:
1) VLC: even if the screen tearing could be eliminated, there's no way to brighten the video.
2) SMPlayer: it's easy to brighten the video, but there's still screen tearing with the Direct3D renderer.
3) MPC-HC: the Enhanced Video Renderer eliminates the screen tearing, but the option to brighten the video has no effect.
4) KMPlayer: the Enhanced Video Renderer and the option to brighten the video seemingly can't co-exist.
Any reasonable suggestions for improvement are much appreciated. Also, I apologize for the curtness of this post. I've spent countless hours trying to find a solution without success, and I'm frustrated to the point of distraction. Thanks again for your time.
+ Reply to Thread
Results 1 to 23 of 23
Can you post a sample?
Since EVR works use that. Then go the the graphics cards setup applet and adjust the video proc amp (not the Desktop proc amp) settings to get the correct brightness levels. Also, enable the "With the NVIDIA settings" option. Make sure Dynamic Range on the Advanced tab is set to 0-255. Turn off Dynamic Range Enhancement, Color Enhancemnt, and any other "enhancement" settings you can find. All they do is screw up the picture.
Last edited by jagabo; 13th Sep 2014 at 11:16.
These are fine examples.
Media Control Panel (not the NVIDIA Control Panel)? In the Intel Graphics and Media Control Panel I killed all the enhancements I could find and set everything to "Application Settings" where possible, and now the brightness control works in MPC-HC . As I poked through these settings I realized that I'd been there months ago when first trying to solve the screen tearing on my then new laptop, but I hadn't been back since. It' great (thanks for that) that I can now use MPC-HC with EVR and brightness control. Of course, between the GUI's of MPC-HC, VLC, and SMP, MPC-HC would be my last choice . I'd honestly feel as if I won the Irish Sweepstakes if I could figure out how to eliminate screen tearing while rendering with Direct3D in VLC-SMP. Do you have any ideas? Every refresh rate I can find is set to 60Hz. In the NVIDIA Control Panel I've added smplayer.exe and vlc.exe but can select "High-performance NVIDIA processor" for smplayer.exe (vlc.exe doesn't allow for the option), but this doesn't appear to help in the least.
I know what Tearing is. I had also problems in the past with that. But I solved that issue.
I need a video file sample. I have to test it by myself
There's no specific file, flashandpan007, it occurs with any resolution Avc video in an Mkv container.
Laptops generally only have one refresh rate for their built-in LCD displays. 60Hz.
After months of experimentation I've learned that rendering the video with the Enhanced Video Renderer (available in MPC-HC and KMP) eliminates the tearing but also noticeably lowers the brightness of the displayed video (darker output even than the Direct3D renderer), which can be quite problematic depending on the video.
VLC isn't one of them.
I suggest you start with a levels calibration video. Try the AVI file in this post:
Or the MPG file in this post:
The first of those posts explains what you should see.
VLC exclusively because it covered my needs. When I eventually noticed VLC's deficiencies (screen tearing), I transitioned to KMP for its improved (EVR) playback, but kept VLC for its file association icon (the cone is classic, in my opinion). Since I somewhat recently noticed that rendering the video with EVR lowers the brightness quite noticeably, I went searching for an alternative to KMP for playback. I find the SMPlayer GUI almost more functional and customizable than the VLC GUI, but unfortunately both players are lacking when it comes to video rendering (limited to Direct3D). I agree that PotPlayer (based on KMP, from what I've read) is ridiculously bloated. Heck, it took me, literally, years to figure out KMPlayer's settings.
I checked the MPC-HC settings and the output range is 0-255. I sometimes connect my laptop to a TV to watch a movie; on these occasions should I change the output range to 16-255?
I'll attack your suggested level calibration video in the morning, and thanks for your help .
Last edited by LouieChuckyMerry; 15th Sep 2014 at 20:55.
jagabo: I read each of those threads twice, and downloaded the videos, but I'm embarrassed to type that I've no idea how to do anything productive with them. I don't have a television, and when viewed on my laptop I'm not seeing the low blacks or the high whites. Does that mean my monitor is poorly configured?
Make sure your Desktop proc amp is set so that you can see the full range of RGB from black (0,0,0), to white (255,255,255). The second image is good for that. There are many calibration images for that on the internet.
The desktop runs in RGB with a range of 0-255. Images displayed in a web browser, image editor, games, etc. all use the full 0-255 RGB range where 0,0,0 is full black, 255,255,255 is full white. There can be no blacks darker than 0,0,0, no whites brighter than 255,255,255.
Media players usually send YUV data directly to the graphics card. The graphics card then converts from YUV to RGB before sending the data to the monitor. As a normal part of that conversion (controlled by the video proc amp) Y levels from 16-235 become RGB 0-255. Y levels below 16 all become RGB=0, because Y=16 is defined as full black. Y levels 235-255 all become RGB=255, because Y=235 is defined as full white. The reverse is done in a video editor when converting RGB to YUV. RGB from 0-255 is converted to YUV from 16-235.
The YUV data stored on a DVD or Blu-ray disc has Y ranging from 16-235. Your DVD player or TV converts that YUV to RGB the same way the graphics card does, expanding the range to RGB 0-255. What you see on the TV screen is RGB 0-255.
There are a few exceptions to this. Some video formats use the full YUV 0-255 range. MJPEG, for example. Those formats require special handling when converted to RGB.
Thank you very much, jagabo, for an exceptionally concise and lucid explanation, I really appreciate it (and feel a bit less dumb, too ). Now, for the final push: am I correct in thinking that the avi and mpg levels files would be used to check monitors and tv's simply by being played back and viewed, and if blacks below 16 and-or whites above 235 are visible then the monitor or tv needs recalibration? I sometimes watch a video on a TV using my laptop with an HDMI cable; would playing the level file(s) this way be a viable means of checking if the TV is properly calibrated?
Many video players and TVs have "hi" and "low" settings. Ie, they can be adjust to receive/send full range (0-255) or limited range (16-235) signals. You want both set to the same range. If you adjust the TV for a device set to full range, then switch to a limited range device, the picture will be wrong on the latter device. And keep in mind that many TVs have different settings for each input. So adjusting one input may not effect all the others.
I usually start by setting the source and TV to neutral settings with all enhancements disabled. If applicable, adjust the TV's backlight so that full white is as bright as you want it to be. Play the levels video and verify that you can see the super blacks and super whites by adjusting the brightness/contrast controls on the TV. That way you know the source is putting out the full range. Then adjust the controls so that super blacks are all the same black, and the super whites are all the same white.
Thank you very much for the information, jagabo .
I check for matching levels like this:
Play a video with black borders such as a DVD with a wide-screen picture (encoded borders). The black borders should be black.
If you change a levels setting in the player or the TV and the picture gets darker but the black bars don't (they were already black) then the levels were already correct (ie they matched). If the black bars get darker because they were actually dark grey, then the levels were originally wrong.
Using the same logic, if you change the levels in the player or TV and the black bars go from black to dark grey then they were already correct (ie they matched).
The above assumes you're not changing the brightness/contrast drastically before adjusting the levels (ie I'd reset everything first and use a TV picture preset which doesn't mess with the picture) and it doesn't even come close to doing any sort of calibration. It's just a way to make sure the input/output levels at least match to begin with.
I set my TV to expect full range levels (0-255) on the PC HDMI Input. That effectively means it should look the same as the PC monitor which also expects 0-255. I'm not just referring to video, but also to Windows itself (it's full range).
In my case I have the video card set to over-ride the player and expand the levels to full range if required. If the player isn't expanding them, the video card will. In your case I think you wanted not to do it that way in order to maintain control over the brightness/contrast settings in MPC-HC. If the TV is set to expect full range levels (0-255) you can select 0-255 as the output for EVR in MPC-HC.
Or try MadVR. I'm pretty sure you can set the video card to expand the levels and MadVR's own brightness/contrast/gamma settings will keep working.
I own a Samsung TV and their option for setting the levels is called "HDMI black level". The choices are normal or low. It's a little counter-intuitive as standalone players all work with limited range video, so you'd expect setting the HDMI black level to "normal" would be limited range. ie normal for a TV. Wrong. "Normal" sets the TV to expect full range levels. "Low" sets it to expect limited levels. That's how Samsung do it.
If the TV input happens to be VGA the TV should behave like a PC monitor. You won't be given a choice to set the levels. It'll expect full range. Not all TVs have a setting for adjusting the expected input levels even when using the HDMI inputs in which case they'll be fixed at limited range. If the TV has a DVI or HDMI input dedicated to connecting a PC, I'd image it'll let you change the levels.
My only real laments with MPC-HC's are the inability to customize the size-location of the toolbar and its limited hotkey functionality with regards to subtitle resizing and positioning (a very convenient option for foreign films of various resolutions).
MPC-HC's toolbar buttons can be customised with "skins". I find using the toolbar to navigate with a mouse from the other side of the room not to be quite ideal, but you can at least make it a bit bigger. Customising it in respect to adding removing items isn't something I've ever worried about too much as you can access most things via a right click and there's lots of options for setting keyboard shortcuts.
I went from this
which admittedly is probably about as exciting as it gets, but there's skins with different buttons.
Can I ask a question? I've never owned a laptop with dual graphics (as yours appears to be.... Intel + Nvidia). How do you know which graphics are being used?
Last edited by hello_hello; 23rd Sep 2014 at 08:53.
MPC-BE (BlackEdition?), as it has all the functionality of MPC-HC (plus a bit more ) and is slightly more customizable. Plus, it looks cooler . I've you to thank for this, too, hello_hello, so thanks .
I tried MPC-BE a few times and it seems quite good. The dealbreaker for me has always been the behaviour when you left click on the video to pause it. Every player should allow you to pause and resume playback by simply clicking on the video, and when I'm ruler of the world it'll be compulsary, but anyway.... MPC-BE has that functionality but it's not reliable. Sometimes it just sits there ignoring click after click, sometimes it's fine, I'm not sure why..... I think it relates to the ability to also click on the video and drag the player to a different position on the monitor and MPC-BE doesn't know whether you're clicking to pause or clicking to drag..... or something..... but it really frustrates me.
Unfortunately the latest version of MPC-HC also allows you to drag the player by clicking on the video. Previous versions haven't (you needed to click on the title bar to drag it). Now it's ignoring the odd left click too. It's nowhere as bad as MPC-BE, but it does do it. I'm about to post in the MPC-HC thread over a doom9 to have a sook about it.
I think MPC-BE's mpeg2 de-interlacing is still as excruciatingly horrible as it was for MPC-HC before the switch to LAV for decoding, but I'd have to check, other than that though, they're pretty similar.
I haven't looked at it too carefully, but almost every second item in the changelog for the latest MPC-HC seems to relate to subtitles in some way. One of those being you can now load more than one subtitle at a time, apparently.....
Yeah..... the key shortcut options are pretty much the same as for MPC-HC. I conversed a little in the MPC-HC thread at doom9 and it turns out the mouse clicking behaviour was changed for the latest version even though it wasn't mentioned in the changelog.
It turns out the "left down" click setting for pause/resume works as it always has, but "left up" also allows you to click on the video and drag the player around the display etc. That's the "don't always know what you're doing" mode where some left clicks to pause/resume are ignored because MPC-HC thinks you're dragging. Switching to "left down" solved the problem.
If you never left click on a video to pause/resume playback it won't bother you, but I do it all the time and find MPC-BE quite frustrating because it ignores mouse click after mouse click. I reported the problem in the MPC-BE thread at doom9 a long time ago and I'm pretty sure others have complained but the developer doesn't seem bothered about it. I don't particularly want to change the pause/resume option to something else so I don't use MPC-BE.
Potplayer lets you set a left click to pause/resume playback and it works fine when you do, although I've always liked the way Potplayer displays the default mouse settings in it's options as "default operation", which doesn't offer the slightest clue as to what a particular mouse action does, but maybe that'd take the fun out of it.....