This post is not to preach in support of the free exchange of ideas, as you can find that stated eloquently from many others. Rather, I want to give some practical advice.
A few years ago, I was visiting a country that is famous for having a “firewall” that censors access to arbitrary sites on the whim of whoever is running it. On that particular day, the blocked list included that fount of human knowledge, Wikipedia. In fact, here is a link to TOR’s description on Wikipedia, as an example of how prevalent it is for me to do so!
I installed a Firefox browser extension that automatically tried TOR if a URL was blocked. I don’t see that listed on currently supported extensions, but I see several proxy-switcher extensions that are generic. If you have TOR installed, then any of those would let you change your browser settings to use TOR, or back to normal settings, by clicking an icon on the status bar.
Since the list of available or favored extensions will be always changing, I won’t list the top results that I see today. Rather, just search for “proxy” in Firefox Extensions and look at anything that says it will Select, Switch, Toggle, etc. the proxy settings.
That would still require that TOR be installed first. If you look at TOR’s website, you will also find Tor Browser Bundle, in many languages. This will, with a single installer, automatically install TOR and a browser pre-configured to use it. It may be stored on a USB stick and hidden away, and used on any machine.
Finding “unpublished” Tor entry points is the best way to stay reliably connected to the whole world, without cost. New ones are added as they become blocked.
A VPN is normally used to connect your home PC to your office LAN. However, the same function allows you to privately connect to another machine for any purpose. Some companies sell accounts on computers located in friendly places such as Zurich, Amsterdam, Copenhagen, etc. If you set up your computer to log in to this as your “office”, you can use any networking software normally, and it goes through the friendly remote location.
These are sold for a variety of purposes, including aggregating bandwidth and caching content, for users in areas with poor connections. I would suppose some are set up specifically to combat censorship, in which case advertising them would just make them easy to block, so you’ll have to find out about them from someone who’s already on it. In general, the paid products I know about (assuming they are not themselves blocked) offer high quality of service and no loss of bandwidth (though increased latency), and a level of service and support that goes with being a professional product. Covert or free systems set up by activists might be more difficult to use and have low bandwidth. For example, if I were to set up such a server on my home PC and give the address and password to relatives somewhere else, then everyone using it would be going through my home PC and sharing my total bandwidth.
My original concern was to access Wikipedia, and if the page took a long time to get through TOR, I would just wait for it to load and then read the page when it finished. But streaming video is another story: If it loads slowly, you cannot watch it.
So, here is some advice for You-Tube, using a couple Firefox extensions.
Download the Video
Even with uncensored Internet access, I sometimes have problems with the network performance, which prevents me from watching a video. I originally supposed that pausing the player would let it read ahead, and I’d watch after it buffered most of it. But the Flash player they use does not work that way at all! If you pause, it stops reading from the network! It reads and plays one little chunk at a time, and does not buffer ahead.
What I really needed was to download the video file, and then watch it once I had successfully downloaded the whole thing. This is also useful when the You-Tube player has any other kinds of problems, such as wrong aspect ratio, refusing to go full screen, or sound out of sync. I download the file and play it on a more capable player.
Finally, for watching videos while traveling, including on a long flight, I needed to store several hours of content to watch without reliable network access at all. The Android player has a “preload” feature, but it doesn’t have controls to force preloading or tell me when it’s done so, and furthermore it checks the site again before playing the preloaded file, so it must have a connection anyway!
You-Tube does not provide a download feature on their web page. But, I found numerous Firefox extensions that provide this. Many of them are poor in various ways, or are built around server-based conversion features I’m not interested in. I wanted something that would just save the stream to a file, nothing more. I found exactly that with the extension called “Download YouTube Videos as MP4” by a user called ialc. This is based on a Greasemonkey script that you could run in a different browser, or adapt and change it to suit your needs.
I’ve used it for all the reasons I’ve explained, and find it simple and useful, and it just saves the file, without involving other servers or installing complicated software. I strongly endorse it. In fact, I am wary of any of the other extensions that offer You-Tube downloading.
Customize the You-Tube Page
Even if a video is provided as a file on another site, such as the author’s download page, it can be handy to access the You-Tube page anyway. In particular, you can read the description, read and respond to comments, and add your ratings!
So, if you access a You-Tube page on a connection that is too poor to watch video, with the intent of using the Download button described earlier, and adding your comments, you might still find that the network connection chokes when it starts to play automatically when the page is loaded.
I tried a few Firefox extensions for You-Tube, that improve or customize the page in various ways. I recall one feature was to “disable auto-play”, so it doesn’t start playing the video immediately when a page loads. I ended up not using those extensions, so I don’t recall exactly which one that was! But browsing through the extensions now, I see Stop YouTube AutoPlay by Nikola Kovacs, which is a single-purpose extension which does exactly that. It has an option for stopping autoplay on background tabs, so I may load that on my machine for everyday use. It’s terrible when the browser is restarted and all the tabs reload, and every one of them starts playing at the same time!
For simple changes to the You-Tube page, Greasemonkey scripts might be a better choice.
Maybe you can buffer, after all?
The SmartVideo extension by Ashish for Firefox will allow the player to buffer the video before you start playing. It also states, “you can opt to defer video initialization video until you click on it” which I think means that it won’t do anything at all (not play, not buffer) until you tell it to. This works for embedded players on other pages, too!
You-Tube Specific Proxy
In writing the previous section, I came upon this extension: ProxTube by Malte Götz. It appears to be ad-ware and was written because GEMA (Society for musical performing and mechanical reproduction rights in Germany) is making it difficult for You-Tube to provide service in Germany. I don’t know how well it works from other countries.