What's Wrong with YouTube

YouTube is a peculiar case. As of September 2020, it is possible to watch YouTube videos without running any nonfree software, even coming in via Tor, via some of the “Invidious” intermediary sites.

We recommend using LibreJS with them. The Invidious sites are not all alike: some won't let you in without nonfree Javascript code. Also, while most of the JavaScript code on those sites carries a free license, there is one file, handlers.js, which does not. LibreJS will prevent its execution, and watching videos still works.

There is also a free add-on for Firefox, called ViewTube, that permits direct access to watch videos on YouTube. It is preinstalled in the GNU browser, IceCat, and you can load it into Firefox. The free program youtube-dl is also available; it gets data out of the site's JavaScript code but doesn't run that code. But youtube.com is likely to block these means of access if you come via Tor.

As a result of these access methods, posting videos on YouTube does not currently put them off limits to the free world. That is good, and we hope it lasts, but we cannot count on them to keep working. The add-on broke once in 2019 because of some change in YouTube. That time, a corrected add-on was released after a few weeks. Next time, who knows? Thus, posting on YouTube is a fragile solution unless/until Google commits to supporting libre access.

Please don't use the host name youtube.com (or its aliases) to refer to a video on YouTube. Instead, refer to one of the Invidious intermediary sites that accepts visits via Tor (test it!). That is fail-safe: if anything breaks, your link will fail, rather than lead people to run nonfree software.

What else Was Wrong with YouTube

This is what we formerly said, until 2019, about YouTube as a place to post videos or refer to videos.

  • Normal use of YouTube involves use of nonfree software.
    • In the HTML5 mode, it involves running a nonfree JavaScript program. For some videos, it also requires the nonfree Adobe DRM software that has been incorporated into proprietary browsers and Firefox, but not into the GNU browsers including IceCat.
    • In the (deprecated) non-HTML5 mode, it involves use of Flash Player, which is nonfree. It even tells users to install Flash Player.
  • Without the nonfree software, you can't even see the YouTube pages. Nowadays, without running the nonfree JavaScript code, the browser window appears blank.
  • YouTube tries to stop people from downloading copies. The nonfree JavaScript code for some videos does not allow the browser to save a copy. This is a form of DRM.
  • There is a free program, ytdl, which can download the video for some YouTube pages, but there is no complete free software solution for access in a browser.
  • “ContentID is exactly the thing YouTube claims it doesn't do: privately mediating ownership of [publications] without involving the law.”

One thing about YouTube that is not a moral strike against it is nonfree software on YouTube servers—if there is any. We as possible users of YouTube can't tell whether the servers run any nonfree software, because that has no effect on us—therefore it doesn't do any wrong to us.

If there are any nonfree programs running on YouTube servers, they mistreat Google by denying Google control of that aspect of its computing. We hope that Google will reclaim its freedom by ceasing to use those nonfree programs, if any. But those programs do not mistreat the users of YouTube, so they are not a reason to refuse to use that service.

It is also possible that all the software running on YouTube servers is free—either published free software or private unreleased free software.

To post a video without requiring nonfree software to view it, you can place the video as an Ogg Theora or WebM file on an ordinary web site. If you are concerned there will be a lot of download traffic, you can seed a torrent and suggest people download through that.

Another way to publish videos on the web using free software is GNU MediaGoblin. Ideally you will set up your own server, or run one for your family and friends, but you can also post on public servers.

Please contribute to GNU MediaGoblin if you can.