re youtube playback:
the only solution is
youtube-dl, because it's the only one that is being updated often enough to keep up with youtube changing their api all the time to prevent people watching their videos with anything but their own interface.
that said,
mpv will use youtube-dl if it finds it, and quite a few media players can use mpv as a backend. e.g. smplayer.
oh, and youtube-dl needs to be updated constantly, there's no use installing it from the repo. one can download
a self-contained youtube-dl that has a -U option to update itself.