I’ve used VLC for more than 15 years. Even before I switched to Linux, I used VLC. It can play anything! However, they haven’t been making much progress lately, and their UI, the kitchen sink mentality isn’t helpful. Most of the time I really only need to play a simple video, and VLC is overkill. VLC redid the UI a few years ago in Qt. It’s ok, though it doesn’t look particularly good on Gnome, but I could deal with it because of the other benefits.
Last year I bought an Nvidia Pascal GPU (GeForce GTX 1070). It’s fantastic, and the Linux drivers are in really good shape. However, VLC had all kinds of issues using my GPU for hardware decoding (vdpau). Obviously any modern quad core CPU can handle 1080p h264 at 60fps, but why waste CPU cycles when I have such a good GPU. On VLC, using vdpau would create a 3-4 second lag every time I skipped around in the video. If I’m playing a video from start to finish, it isn’t too bad, but if I ever wanted to rewind, the experience was awful. I spent a long time trying to figure it out, but never could.
I had heard about and used mplayer, mplayer2 and mpv over the years, but they were powerful backends without a decent frontend. I recently heard of gnome-mpv. It sounded perfect. A nice, simple frontend GTK+ UI using mpv on the backend. I installed it and so far it’s really good. Look how clean that UI is!
To get hardware acceleration using vdpau I had to do two things.
Create a config file in ~/.config/mpv/mpv.conf with the following:
Then inside gnome-mpv, I just had to tell it where my config file was: