For the past year, I've been living without Adobe Flash Player, meaning I could not watch videos/play music on most sites or use some web applications, that still use it. This was due to several reasons:
- Due to it's performance issues, I was unable to watch even the lowest quality videos without stuttering.
- It made my favorite browser crash constantly.
- Security issues and privacy concerns
- Being closed source, which is a solid reason on itself.
And what can I say, I don't miss it, thanks to youtube-dl (I find the project name a bit misleading (although Youtube has the most support) and a new user might simply overlook all the power he/she is given.), a small commandline application that is capable of downloading videos from Youtube and more than 300 other sites (the list is constantly growing). youtube-dl provides the URL of the video/stream, so you can play the video without downloading to (if your player supports it).
Being a CLI application, youtube-dl allows you to intergrate it into scripts, bash aliases and with other applications. For example, I wrote this little script to play the video in the current website (if there is a video, and the URL/website is supported by youtube-dl) by simply typing
mpv in dwb (mpv is also the player I use, check it out):
If your favorite website is not supported, you can file an issue for it to be added, or, if you know some Python, try to implement it yourself. The hardest parts of doing that are reverse engineering the method the website in question uses to hide (if it does so) the video URL from the user and writing reliable regular expressions, which are used to extract information from the website (if you, like me, are not a Regex guru). There are full developer instructions on youtube-dl's GitHub page. I also recommend reading this tutorial by Filippo Valsorda, which also shows how to reverse engineer a video website.
Note: If you do try youtube-dl, be sure to compare your CPU usage when streaming the same video in your media player and using flash!