DVDのバックアップを取るには

個人が所有しているDVDを、個人のみが使用するPC(Ubuntu)に、無料でバックアップする方法を紹介します。

概要

UbuntuのPCで市販DVDのバックアップが取得できるようにします。
バックアップは、いわゆるVIDEO_TSか、ISO形式のファイルで取得できます。

作業の大まかな流れ

  1. 市販のDVDの再生に必要なパッケージ(libdvdcss2, libdvdcss-dev)をインストールします。
  2. バックアップを実行するコマンドをインストールします。
  3. バックアップしたファイルをVLCメディアプレーヤで再生してみます。

パッケージのビルドとインストール

端末を起動して、次のコマンドを実行します。

$ sudo apt update
$ sudo apt install libdvd-pkg

下の画面が表示されます。
「”sudo dpkg-reconfigure libdvd-pkg”を実行することにより、自動的にソースファイルをダウンロードしてビルドし、さらにインストールしてくれるよ。このあとやってみてね」といったような意味が書かれています。
スペースかEnterキーで次の画面に遷移します。

自動的にアップデートするかどうかを尋ねているので、どちらかを選択します。

ソースのダウンロードが完了したら、下のコマンドを実行してビルドします。

sudo dpkg-reconfigure libdvd-pkg

下の画面が表示されるので、[yes]を選択します。

バックアップコマンドのインストール

以下を実行して、バックアップを作成するコマンドをインストールします。コマンドのバージョンを表示することにより、インストール結果を確認します。

$ sudo apt install dvdbackup
$ dvdbackup --version
dvdbackup 0.4.2
 < 略 >

DVDドライブのマウント

DVDドライブにDVDをマウントします。

いよいよバックアップ

以下のようにdvdbackupコマンドを実行します。

dvdbackup -M -i <DVDデバイスのパス> -o <バックアップディレクトリ>

ここで、オプションの意味は以下の通りです。

  • -M … DVD全体をバックアップします。
  • -i … DVDデバイスのパスを指定します。
  • -o  … バックアップファイルを作成するディレクトリを指定します。

-iオプションに指定するDVDのデバイスを調べるには、DVDをマウントした状態で、次のコマンドを実行します。

$ mount | grep sr
/dev/sr0 on /media/linux/SILAMBS_JP type udf (ro,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,uhelper=udisks2)

上記の出力結果から、/dev/sr0だとわかります。

具体的には、次のコマンドを実行します。これでカレントディレクトリにバックアップが作成されます。

dvdbackup -M -i /dev/sr0 -o ./

バックアップが完了すると、DVDタイトルのディレクトリが作成されます。更にその下のディレクトリが「VIDEO_TS」となります。

$ ls ./
'xxxxxxxx Jp'  ← タイトル
$ cd xxxxxxxx\ Jp/
$ ls
VIDEO_TS

バックアップを再生してみる

dvdbackupコマンドの実行が終了したところで、再生してみます。ここでは、VLCメディアプレーヤーを使用します。

VLCを起動し、[メディア]>[ディレクトリを開く]をクリックします

バックアップしたディレクトリのタイトル名か、あるいはVIDEO_TSディレクトリを指定します。

バックアップからの再生が成功しました。

ISOイメージファイルに変換する

ISOイメージに変換するには、genisoimageというコマンドを使用します。すでにインストールされているので、バージョンを確かめてみましょう。

$ genisoimage --version
genisoimage 1.1.11 (Linux)

以下のように実行します。

$ genisoimage -dvd-video -udf -o xxxxxxxx.iso ./xxxxxxxx\ Jp/

ここで、オプションの意味は以下の通りです。

  • -dvd-video … DVDビデオ準拠のUDFファイルを生成します。
  • -udf … UDFをサポート対象とします。
  • -o … ISO9660イメージで出力するファイル名を指定します。
  • 引数の最後は、VIDEO_TSが入っているタイトル名のディレクトリを指定します。

genisoimageの実行は、dvdbackupと比べて高速です。ISOイメージファイルが作成されました。

$ ls
'xxxxxxxx Jp'   xxxxxxxx.iso

ISOイメージの方も、VLCで再生できることを検証してみます。
[メディア]>[ファイルを開く]をクリックします。

先ほど作成したISOファイルを指定し、[Open]をクリックします。

ISOイメージからの再生も成功です。

さいごに

Windows PCからWSL(Windows Subsystem for Linux)で動作するUbuntuでバックアップするという方法も考えられます。これが実現すると、WSLで作成したバックアップをすぐにWindowsから視聴することができます。
しかし、WSL環境にマウントしたデバイスをlibdvdcssが認識できるかどうかが疑問です。
今後機会があれば、試してみたいと思います。