Transcoding optical media in Linux
Obstacle Course
Linux has never been the first choice with multimedia users, although the free operating system offers various software for multimedia applications, including tools for collectors of video DVDs and Blu-ray discs that allow you to back up your media to mass storage devices. Backing up is recommended, because optical data carriers do not age well, and mechanical effects such as scratches or cracks can damage discs and even make them unreadable.
In this article, I look at the HandBrake and MakeMKV tools for transcoding optical video discs. (See the "Not Considered" box.)
Not Considered
Under Linux, no other programs besides those discussed here support the transcoding of Blu-ray media. The dvd::rip [2] program is still around for converting video DVDs, but no one has developed it since 2010. The last major update of OGMRip [3], which was developed for the Gnome desktop, also dates from 2015. The Thoggen [4] DVD transcoder is still available for download but has not seen any updates since 2009.
Legal
If you want to play back self-mastered Blu-ray discs or convert them into other formats, you usually won't run into any problems. Often however, commercial discs will not play on just any old device because of integrated copy protection that restricts the reproduction of commercial optical media on computer systems. Fair Use (US) and Fair Dealing (UK) laws have allowed some form of copying, although the courts have retracted these allowances before under the influence of lobbyists [1]. In the US, ripping copyrighted works is not legal, except in a few educational cases, although the laws in other countries usually allow copying if you are backing up legally owned media or you are a single user creating versions for multiple devices (personal use exception). Wherever you reside, you should check the laws currently in effect.
Linux systems can mount these media like conventional removable media but cannot copy them in the usual way. Additionally, technical differences between video CDs, video DVDs, and Blu-ray discs require special devices to read data-intensive Blu-ray media. In this issue, I identify the applications that read and transcode these discs on Linux.
Technical
Video DVDs, Blu-ray video discs, and the now rare video CDs all have the same diameter and are optically scannable. Here the similarities end. For users, storage capacity is the clearest difference. Whereas video CDs usually have a capacity of around 700MB, video DVDs that follow the DVD-18 standard can store around 17GB. The significantly higher storage capacity not only makes it possible to offer significantly improved image quality, it also enables longer playing time. Moreover, video DVD supports the 16:9 picture format and is therefore far better suited to today's TVs and widescreen displays than the old video CD, which only supports the 4:3 format.
The Blu-ray disc outshines all of these media with a maximum storage capacity of 100GB. Not only can it accommodate very long blockbusters on a single disc, it also resolves the content in a far superior way. Movies on video CDs had a meager pixel resolution of 352x240 NTSC (352x288 PAL/SECAM), which improved to 720x480 (720x576) pixels with video DVDs. Blu-ray media, on the other hand, use Full HD resolution (1920x1080 pixels) and have many audio tracks. A successor is already waiting in the wings: Ultra HD Blu-ray, which accommodates 4K videos with up to 3840x2160 pixels.
The larger volumes of data come at a price: Blu-ray technology requires considerably more powerful hardware. A typical video CD data rate is around 1.5Mbps, with up to 10Mbps for video DVDs and a maximum of 288Mbps for fast Blu-ray drives. However, Blu-ray video discs limit the data rate to around 54Mbps.
To play high-resolution Blu-ray media smoothly, you not only need fast mass storage subsystems, but also powerful graphics cards. Because of the high data rates, the laser beams in Blu-ray drives use a shorter wavelength (405nm) than those in DVD (650nm) and CD (780nm) drives.
The significantly shorter wavelength of the Blu-ray lasers requires a far more complex drive structure, which makes it more expensive than a simple DVD device. For example, Blu-ray devices always have two laser diodes (Figure 1) to ensure downward compatibility. One is responsible for playing back (and recording in the case of burners) CD and DVD media; the other ensures compatibility with Blu-ray media.
Copy Protection
Commercial pressing of video DVDs and Blu-ray discs is usually accompanied by the addition of copy protection. Classic DVDs typically use the Content Scramble System (CSS), whereas Blu-ray media rely on the Advanced Access Content System (AACS) standard. The CSS system was broken 20 years ago because of numerous design flaws and weak symmetric encryption with short 40-bit keys.
To store the encrypted content stored on video DVDs on mass storage media, ripping tools first need to remove the encryption, which also applies if you want to store an identical copy of an encrypted video DVD on a recordable medium.
Additionally, commercial video DVDs also use regional codes that are intended to ensure you are only allowed to play the data carriers in question in certain countries. Some very old DVD players forced users to modify their region code settings in the firmware to play video DVDs with region codes other than the defaults.
The AACS method of HD video DVDs and Blu-ray video discs provides content with a 128-bit AES key. On the one hand, AACS introduces some innovations compared with the CSS method that make playback over networks more flexible. On the other hand, the system restricts the ability to play back on computer systems by means of drive verification with a drive-specific hardware key. If you want to play Blu-ray video discs with AACS encryption, you also need an AACS-certified drive and AACS-licensed software. These restrictions make it difficult to play commercial Blu-ray video media on Linux, because no AACS licenses exist that can be built into popular open source playback software.
As additional copy protection, all current Blu-ray players integrate the Blu-ray+ technology developed a good 10 years ago that consists of a small virtual machine that executes a Java applet. It checks whether someone has changed the firmware or the hardware-specific keys of the player. If they detect such a modification, the affected devices simply refuse to play commercial Blu-ray discs.
As manufacturers are constantly developing the process, the devices need regular firmware and key updates. The Blu-ray discs themselves also have an integrated Media Key Block (MKB) which, in combination with the other cryptographic mechanisms of the AACS system, allows content to be decrypted.
The MKB does not vary from medium to medium, but it does have version updates. To the surprise of owners, this can lead to older software variants suddenly failing with new Blu-ray media.
Buy this article as PDF
(incl. VAT)