Linux でCD/DVDを使うときのまとめ

以下はCentOS5.1の場合。DVDドライブは、/dev/hdc。

前準備として ffmpeg をあらかじめインストールしておく。手順は CentOS5 でffmpeg のインストールと動画の変換 - Sleepless geek in Seattle を参照。

  • isoイメージの作成
# mkisofs -R -J -v -o ファイル名.iso  ディレクトリ名
# mkisofs -R -J -v -o file.iso  data_dir
  • isoイメージのマウント
# mount -t iso9660 -o loop isoイメージファイル  /mnt/マウントポイント
# mount -t iso9660 -o loop file.iso /mnt/iso
  • isoイメージの焼き方(DVD)

growisofsコマンドを含んだdvd+rw-toolsをインストールする必要がある。

# yum -y install dvd+rw-tools  
# growisofs -Z /dev/hdc=eva.iso
  • isoイメージの焼き方(CD)
# cdrecord example.iso
  • 音楽CDからのWAVファイルの抽出
# cdda2wav コマンドをインストール
# yum -y install cdda2wav
# cdda2wav -L 0 cddbp-server=www.freedb.org -B
  • wavファイルから音楽CDの作成
# cdrecord -pad -audio dev=/dev/hdc wav/*.wav
  • wavファイルをmp3ファイルに変換
# lameコマンドをインストールしておく
# yum -y install lame
# 
# lame -V2 input.wav output.mp3
#
# 一括で変換する場合
# for i in *.wav; do lame -V2 $i.wav $i.mp3; done
  • mp3ファイルを一括でwavファイルに変換
# mpg123 コマンドをインストールする。
# yum -y install mpg123
#
# mpg123 -w output.wav input.mp3
#
# 一括で変換する場合
# for i in *.mp3; do mpg123 -w $i.wav $i; done
# cdrecord -v speed=2 dev=/dev/sr0 blank=fast
# wget http://handbrake.fr/rotation.php?file=HandBrake-0.9.2_i386.tar.gz
# tar zxvf HandBrake-0.9.2_i386.tar.gz
    • DVDをスキャンして、取り込みたいタイトル番号、音声番号を調べる。
# ./HandBrakeCLI --title 0 -i /dev/hdc
<前略>
Scanning title 19 of 20...
Scanning title 19 of 20...
Scanning title 19 of 20...
+ title 1:
  + vts 1, ttn 1, cells 0->21 (2759006 blocks)
  + duration: 01:50:00
  + size: 720x480, aspect: 1.78, 23.976 fps
  + autocrop: 8/12/0/0
  + chapters:
    + 1: cells 0->0, 143245 blocks, duration 00:05:25
    + 2: cells 1->1, 120004 blocks, duration 00:04:31
    + 3: cells 2->2, 135877 blocks, duration 00:05:22
<中略>
  + audio tracks:
    + 1, English (AC3) (5.1 ch), 48000Hz, 448000bps
    + 2, Francais (AC3) (5.1 ch), 48000Hz, 384000bps
    + 3, English (AC3) (Dolby Surround), 48000Hz, 192000bps
  + subtitle tracks:
    + 1, English (iso639-2: eng)
    + 2, Espanol (iso639-2: spa)
    + 3, Francais (iso639-2: fra)
    + 4, English (iso639-2: eng)
+ title 2:
  + vts 2, ttn 1, cells 0->1 (103108 blocks)
  + duration: 00:05:17
<後略>

durationが一番長いのがメインの動画。
メインの動画を英語字幕、英語音声で取り出す場合は、以下のようになる。

# ./HandBrakeCLI --two-pass --audio 1 --subtitle 1 --title 1 -i /dev/hdc -o movie.avi

DVDをマウントする

# mount -t iso9660 /dev/hdc /mnt/dvd

空き容量の多いディレクトリに移動してからリッピングを開始する

# cd mywork_space
# vobcopy -m

リッピングが終わったらディスクを取り出す

# eject

生ディスクを入れて、DVD_DIRの下に"VIDEO_TS" がある場合状態で、growisofs コマンドで焼く。

# growisofs -dvd-compat -Z /dev/hdc DVD_DIR

プロテクトのかかっているディスクは多分焼けない。