* TS→PS変換マシン [#e32a2a8a]

[[以前の日記>日記/2010-06-13/現在の録画環境]]にも書いたように,録画後の TS ファイルを PS ファイルに変換するのに Linux マシンを利用している.
が,変換中は Linux マシンの負荷が高くなり,他の作業ができる状態では無い.
というわけで,変換用の Linux マシンをエンコードマシン上の VMware player で実現することにする.

** VMware player [#o3d58886]

言わずと知れた仮想マシン実行環境.

http://www.vmware.com/jp/ からインストーラをダウンロードし,インストールする.

** debian lenny [#q82f83da]

http://www.debian.org/CD/netinst/ からネットワークインストール用 CD の ISO ファイルをダウンロード.
ISO イメージは実 CD-ROM に焼く必要は無い.

** VMware player 仮想マシンに debian をインストール [#z664407c]

VMware player を起動し,仮想マシンを作成し,debian をインストールする.
このとき,仮想 CD-ROM ドライブにダウンロードした ISO イメージを指定する.

なお,VMware 上の仮想ネットワーク設定は「ブリッジ」とする.

** squeeze にアップグレード [#mbb090c9]

インストールが終わったら /etc/apt/sources.list を書き換える.
- 現在のテスト版である squeeze にアップグレード
- www.debian-multimedia.org の apt line を追加

aptitude を起動し,パッケージをアップグレードする.

** 必要なパッケージのインストール [#je676c9f]

以下のパッケージをインストール

- samba-client
- smbfs
- winbind
- ffmpeg

** /etc/nsswitch.conf の書き換え [#oedf4e2d]

hosts 行を

 hosts:          files dns wins

と書き換えると,名前解決で Windows コンピュータ名を利用できるようになる.

** 変換スクリプト [#g276febb]

こんな感じ.
root 権限で実行する.

 #!/usr/bin/perl
 #
 # ts2ps: convert from MPEG-2 TS to MPEG-2 PS
 #
 
 $srcdir = '/media/m2ts';              # M2TS 共有を一時的に mount
                                       # するディレクトリ
 $srcshare = '//jr0bak-rec/m2ts';      # 変換元共有
 $destshare = '//jr0bak-xp/mpegconv';  # 変換先共有
 
 # get filenames
 
 `smbmount '$srcshare' '$srcdir' -o guest`;
 $? and die;
 @files= grep { s/\n$//g } `ls -tr1 $srcdir/*.m2ts`;
 `umount '$srcdir'`;
 $? and die;
 
 foreach $s ( @files ) {
         ( $sb = $s ) =~ s|.*/||g;
         ( $db = $sb ) =~ s/m2ts$/mpg/;
 
         print "$sb -> $db\n";
         `smbclient $srcshare -U guest% -c 'get "$sb" -' | \
          ffmpeg -i - -f dvd -vcodec copy -acodec copy - 2>/dev/null | \
          smbclient $destshare -U guest% -c 'put - "$db"'`;
         ( $? != 0 ) and exit 1;
 }
 exit 0;



トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS