Image flickers when using VLC or any streaming content on Chrome
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
Image flickers when using VLC or any streaming content on Chrome
When I use Chrome on Linux, the image flickers, for lack of a better term. It isn't always that noticeable, but when there's a lot of abrupt/fast camera movement, it's like the top half/third of the picture isn't quite where the lower part of it is. Most of you probably know what type of flawed image I'm talking about.
In Windows, it doesn't do this at all. Not on Netflix, Hulu, Amazon, or VLC. All of these ways of viewing video do this on every distro of Linux I have(such as Mint, Ubuntu, and Manjaro) even though I keep them very updated.
Is there something I failed to install or configure? Pretty sure it wasn't doing this 2-3 months ago. I'd love to be able to not boot into Windows to view content, as I try to minimize use of it anyway for the sake of good ol' speed and stability.
Any help on this? I'm going insane having to use Windows all the time simply because I can't watch Netflix etc. on Ubuntu lately without good display. I should be able to provide other details about my system promptly if I left anything out. Thanks to anyone who has any tips!
You likely do not have GPU acceleration enabled. Or your video player is trying to use the lower viable play option.
$ glxinfo | grep -i direct
Check that you're using accelerated drivers first. The fb or vesa drivers are pretty slow if you don't have a fast computer. And make sure you have certain things installed. Like in debian stable (jessie / v.8)
# apt-get install libsdl2-2.0-0 libgl1-mesa-glx
You may also need to set some environment variables like SDL_AUDIODRIVER and SDL_VIDEODRIVER before launching your browser. YMMV.
Yes! I'd forgotten the term, but it's tearing for sure. Thanks for the reminder.
Is the VLC setting "hardware accelerated decoding" under codecs? I just set that to "video acceleration" which I'm guessing is the right one.
Disabling compositing sounds like something I could try if nothing else works, but I must admit I have no idea how to do that now.
OK, since it's the one I use the most I'll focus on Mint, especially since what will fix this in Mint will likely fix it in Ubuntu as well, anyway.
Output for that command is:
07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Curacao XT [Radeon R7 370 / R9 270X/370 OEM]
Subsystem: ASUSTeK Computer Inc. Device 0464
Kernel driver in use: fglrx_pci
07:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]
Subsystem: ASUSTeK Computer Inc. Device aab0
Kernel driver in use: snd_hda_intel
System specs, as displayed by screenfetch in Mint:
OS: Mint 17.3 rosa
Kernel: x86_64 Linux 3.13.0-37-generic
Shell: bash 4.3.11
DE: Cinnamon 2.8.8
WM Theme: BlackIce (BlackIce)
GTK Theme: BlackIce [GTK2/3]
Icon Theme: Mint-X
Font: Noto Sans 9
CPU: AMD FX-8350 Eight-Core @ 4.335GHz
GPU: AMD Radeon R9 200 Series(NOTE: as stated in my 2nd post, this specifically is a Radeon R9 270X.)
RAM: 1699MB / 15947MB
I should mention that while I've used Linux for 2.5 years, I'm still fairly green since I mostly just learn what's necessary to get media/games/browsers running properly(and customize a few things) so setting environment variables isn't something I immediately recognize the process for. I tend to bookmark solutions once I've fixed a problem, but my knowledge of much beyond copy/pasting necessary commands and maybe a few settings I know how to tweak in the GUI is still pretty limited.
Thanks for the replies!
edit: I know we're focusing on one player for now, but what will fix tearing on VLC is likely to also fix that on Netflix, right? It's browser-based, but the acceleration itself would fix both, I'm guessing.
If you've got Mesa in there, you're doing it wrong. Or your install is at least. The AMD driver replaces the libGL.so library. If it's Mesa, then you're NOT using AMD's libGL.so. Mesa provides 3D support in software, when the hardware (or driver) does NOT provide 3D. Which could account for your performance issue on an otherwise beefy machine. The proprietary driver also includes a driver module (fglrx.ko) that will likely go away if you didn't use the distros package management and the kernel got updated. Which requires you to re-install the proprietary driver with every kernel update. Or more rare, update to X as there's also a ???_drv.so for X that goes along with the driver stuff.
In debian the dpkg-divert command lets you see when a file is provided by multiple packages. And helps to manage which you prefer. But not that useful if you installed things without using the package management system.
$ dpkg-divert --list
Most of my systems are old enough that the radeon driver works well. Which does use the Mesa version of libGL.so.
$ lsmod | grep -i radeon
$ lsmod | grep -i fglrx
Although I'm not sure if the new crimson driver renames any of the parts. YMMV, adjust accordingly.
Shadow 7, here's the output of those commands in order:
server glx vendor string: ATI
server glx version string: 1.4
server glx extensions:
client glx vendor string: ATI
client glx version string: 1.4
client glx extensions:
Output for dpkg -divert --list:
diversion of /usr/share/man/man1/pod2latex.1.gz to /usr/share/man/man1/pod2latex.bundled.1.gz by libpod-latex-perl
diversion of /usr/bin/pod2latex to /usr/bin/pod2latex.bundled by libpod-latex-perl
diversion of /usr/share/man/man8/update-icon-caches.8.gz to /usr/share/man/man8/update-icon-caches.gtk2.8.gz by libgtk-3-bin
diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash
diversion of /usr/sbin/grub-install to /usr/sbin/grub-install.real by lupin-support
diversion of /usr/share/dbus-1/system-services/org.freedesktop.systemd1.service to /usr/share/dbus-1/system-services/org.freedesktop.systemd1.service.systemd by systemd-shim
diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common
diversion of /bin/sh to /bin/sh.distrib by dash
diversion of /usr/sbin/update-icon-caches to /usr/sbin/update-icon-caches.gtk2 by libgtk-3-bin
"radeon" command didn't give any output, which I guess means it just did what it's meant to do. I'm guessing I should try playing video again after entering these, or perhaps after rebooting as well?
"fglrx" command output:
fglrx 13510274 87
amd_iommu_v2 19054 1 fglrx
It was over a year ago now, but when I installed this GPU, I do recall manually using the GUI to select a driver, which turns out to be Driver Manager, which I just opened. For some reason it recommends the open source driver, which I recall can cause compatibility issues, particularly with games(at least on some distros.) My guess is that in this menu, the driver option "fglrx-updates" might allow for auto updates with package management, while plain fglrx might not. Is that accurate?
It looks like you're good to go on the fglrx driver. Still wondering if libGL.so is up to par. But the server/client strings suggest that it is good. If the tearing happens when using players, try some things.
The mpv player is basically an updated fork of mplayer (or mplayer2). See if that tears. Then try the other --vo= options. The "xv" one worked bitd for ati cards. At least if you wanted to scale the video on a slow computer. If that makes a difference you might try setting the SDL_AUDIODRIVER and SDL_VIDEODRIVER environment variables before starting your VLC. I've always found vlc a bit too needy for my available hardware.
If this is an older install that hasn't been updated you might have glibc versioning issues. A lot of opengl compat stuff between version 2.13 (debian wheezy / v.7) and 2.14. The only (sane) way around that was to upgrade to a more recent debian release, or run a different distro. I should probably check which distro you're running but kind of moot as long as it's recent.
Have you tried using other monitors and see if they have the same issue? More recent things have freesync and gsync and they're new-ish so compatibility is a bit of a gamble. You might try different modes / resolutions as listed in xrandr. If the tearing is an issue across all of those modes, I'd suspect the monitor. But just guessing as majority of my stuff is low spec'd and old. And most of my issues resolved by letting frames be dropped (--framedrop=vo).
i just had another look at op's original post.
are you saying you have tearing problems only on Chrome browser?
- if so, is it with all sites using flash video, or only netflix?
- can you disable flash video and try watching e.g. youtube videos with html5? does it flicker then?
I take it you have tried streaming via firefox and it also went ape*hit, only I have had it where streams did not work too well on Chrome but were ok on firefox- I have no idea why!
I mostly use FF, but it's such a nightmare to stream Netflix/etc. that I resort to Chrome for those purposes when needed. Interesting that FF worked well for you - I wish it did for me, as it's where my 1,000+ bookmarks are along with Roomy Bookmarks Toolbar!
@Shadow_7: Well, the player worked last time I checked now on Mint. Thanks! What most likely is what fixed it, though? I can't tell exactly which command got it going(honestly, I should have paid more attention while I was entering them so as to isolate the solution.) I'm also assuming this will work on any Ubuntu-based distro.
I think Hulu works as expected, but Netflix absolutely isn't displaying in HD(must keep using Windows for that at the moment.) Since this isn't the same issue as tearing, I can start a new thread if that's better for the purposes of these forums. Either way's fine.
Distros I'm running are the current Manjaro(it's rolling release,) Peppermint 6, Ubuntu 16.04, and Mint 17.3(which is the one the tearing issue seems solved on now.)
Never tried different monitors during this process, but I'll keep xrandr in mind if I need to fix stuff in the future(likely if these same commands won't instantly fix my other distros.)
@Ondoho: No, I had tearing issues on Chrome for sure, and I'm 90% sure FF was doing it too--I'm not sure, as I mostly watch streaming stuff on Chrome for the above reasons.
Problems are worst on Netflix now, though that's now seemingly just an HD problem as of this reply.
Not sure how to disable Flash, but I'm willing to try that.