youtube-viewer (browse YouTube videos from a terminal or GTK UI) Youtube Viewer is a dedicated application for searching, viewing, and downloading Youtube videos, using wget for downloading and MPlayer for viewing. It has been written in Perl and plays videos from Youtube at the best quality available without using a flash player. ********* Note: Google has revoked the API key formerly used by youtube-viewer. To use this, you'll have to create a Google account and register for an API key. See /usr/doc/youtube-viewer-$VERSION/README.md for instructions. See https://github.com/trizen/youtube-viewer/issues/308 for more information. If you don't like this restriction, try using straw-viewer instead. ********* Optional dependencies: perl-gtk2, perl-File-ShareDir - for gtk2-youtube-viewer. perl-Gtk3, perl-File-ShareDir, perl-List-MoreUtils - for gtk3-youtube-viewer. perl-Text-CharWidth, perl-Unicode-LineBreak - for better formatting in the terminal. perl-Term-ReadLine-Gnu - for command editing/history in the terminal. youtube-dl [2] - if this is present, youtube-viewer will use it to detect available formats for the video. Counting optional ones, youtube-viewer has over 40 dependencies. To make life easier, there's now a "youtube-viewer.sqf" queue file included with this build, which includes everything listed above. [1] A small caveat about youtube-dl: youtube-viewer works without it, though occasionally it'll choose a lower quality than is available for some videos. However, if youtube-dl is present but outdated, youtube-viewer will fail to play videos at all! If you suspect this, remove youtube-dl and try without it. This build always includes the command-line client (youtube-viewer). For the GTK client (gtk-youtube-viewer), install perl-gtk2 and perl-File-ShareDir before running this script. If you have them installed but don't want gtk-youtube-viewer, you can set GTK=no in the script's environment. To force gtk-youtube-viewer to use your preferred terminal for downloading with wget and watching in a terminal, set TERMINAL in the script's environment (e.g. TERMINAL="xterm" or TERMINAL="urxvt"). When upgrading to 3.2.4, I had to remove my old config file to get the new gtk-youtube-viewer to work correctly. If you have issues after an upgrade: rm -f ~/.config/youtube-viewer/gtk-youtube-viewer.conf