Abstract (Italiano): Scrivo questo articolo in inglese perché (ovviamente) la registrazione dei video della BBC interessa maggiormente le persone che parlano inglese. Se lasciate un commento, gentilmente fatelo in inglese.
Abstract (English): I’m writing this post in English because (obviously) recording BBC videos is mostly of interest for those who speak English. Also, a small note for native speakers, especially British people: I’m Italian and I’m mostly used to write using American spelling. For this reason, the post may contain mistakes or American words which may seem unusual. I’m sorry for that. If you find errors (apart from AE spelling) let me know in the comments.
I already wrote about downloading videos from the BBC and Hulu websites (in Italian), however it was about two years ago. Websites change and so does software, hence the suggested method of using
get_flash_videos does not work anymore.
I also wrote a generic article about downloading videos from websites (in Italian, too) that contains many different use cases and examples. One of my readers asked for clarification about recording iPlayer videos, so I tried again myself. I was able to apply some of the techniques of my post, together with a couple of clever tricks to find the maximum quality.
Since the process is a bit involved, I wrote a small software which automates all the steps and tells you how to start the recording immediately. This program is actually a so called user script, i.e. a piece of software that runs directly into your browser.
This article explains how to download and install the script. Then it shows you how to use it and what you need to do to record BBC iPlayer videos. Before we start, you need to be able to trick the BBC website into thinking you are living in the UK. If you are actually living there, skip the next section.
Pretending to be in the UK
The BBC iPlayer service is officially available only in the United Kingdom. The website will check your IP address and refuse access if you are trying to watch content from another country. To fix this problem, you need to use a technique to access the site through a server in the UK.
Usually the best tool for the job is a VPN service. VPNs are used to establish secure connections to private networks over the Internet, but may also be used to avoid geographical restrictions of websites.
There are many different VPN services. Most of them are paid (although cheap), while some are free. Among the free options, you can:
- create an account for Hola and use their Full VPN feature
- use VPNGate by choosing a node in the UK
I personally always use the Full VPN feature of Hola. Parameters and instructions on how to set it up are given on the My account page of their browser extension. Unfortunately instructions are given only for Windows and Mac, but you may just copy the parameters in the VPN wizard of your favorite Linux distribution.
Hola gives 1GB/month of traffic for Free accounts, however it’s very easy to get Premium months by inviting other friends to join. If you install Hola by following the link I provide, you automatically get 1 month of Premium. More than 1GB of traffic may be needed for long videos on the BBC website, such as documentaries.
I also wrote a Python script for easily using VPNGate by specifying only the desired country. You can check it out here. You may also try VPN OneClick, which lists UK among the servers. Regardless of what VPN service you choose, once it is activated, you are ready to go on and start recording videos from iPlayer.
To run the user script in your browser, you need to install an extension. This varies depending on your browser. The following are recommended:
- Firefox → Greasemonkey
- Chrome/Chromium → Tampermonkey
- Opera → Violent monkey
- Internet Explorer → change software and start using a real browser :P
After this step, you can click the following link to open the script page on Greasyfork. On the page that shows up, click on the Install this script button to complete the procedure.
You are now ready to start downloading.
The next time you open a video page on iPlayer, you’ll see that the script adds a box under it with some instructions and a command line. The pictures shows an example with this video:
The command line displayed in the gray box is a one-liner you can use together with
avconv. This is a software used to convert and record video files, which can be installed on any of the common Linux distributions such as Ubuntu. More informations are available on the official website. To start the download, carefully copy the entire content of the gray box (and nothing else) and paste it into a terminal window, then press Enter.
As you can see from both figures, the file is saved into a MP4 container and the name corresponds to the title of the video.
It should also be possible to download the software for Windows or Mac. On Windows you just need to create a new file called
download.bat (with Notepad, or any other editor) in the same directory of
avconv.exe and copy-paste the command line into it. After that, you click the bat file and it should start downloading. However, using those operating systems is not recommended nor endorsed.
I don’t give support to Windows or Mac users, since I don’t use those systems and they are proprietary software. If in doubt, just use Linux, or find a technician to help you with your OS. If you need help to follow this guide and you use Linux, of course leave a comment and we will try to figure it out together.
As an alternative to
avconv, you may want to try the recording features of VLC by just feeding it with the M3U8 URL that appears inside quotes. However, pay attention! You may accidentally enable video transcoding, potentially extending the time necessary to download and degrading the quality. For this reason I recommend you use
The script I developed allows to automate all the necessary steps required to ensure the highest possible quality during the downloading. In particular, the script does the following:
- find the configuration of the player for mobile phones
- get the list of M3U8 URLs for different bitrates
- look for the best available bitrate for desktop computers
- tweak and simplify the M3U8 URL for the best quality
- show the command line to the user
Performing the process manually is time consuming, error-prone and tedious if done multiple times. In this way it should be much easier for those who just want to record a couple of videos to watch them with a modern TV, on the train or keep them in a personal library.
Happy downloading! :)