TS ファイルの字幕に対応した VLC を Ubuntu で使用する

https://github.com/nkoriyama/vlc-aribsub に VLC を TS ファイルの字幕に対応させるパッチがある。 Ubuntu 12.04 用のパッケージがあるので、Ubuntu 12.04 ではそれをインストールする。 Ubuntu 12.10 では vlc のソースコードにパッチを当ててコンパイルした。

Ubuntu 12.04 にインストール

https://github.com/nkoriyama/vlc-aribsub/wiki を利用させてもらう。 Ubuntu 12.04 用の deb パッケージをダウンロードする(私の環境には vlc_2.1.0-git_amd64.deb)。

apt-get remove vlc vlc-data

でもともとインストールされていた vlc を削除して

dpkg -i vlc_2.1.0-git_amd64.deb

でダウンロードしたパッケージをインストールする。 設定の表示を「すべて」にして https://github.com/nkoriyama/vlc-aribsub にあるように設定する。 https://raw.github.com/nkoriyama/vlc-aribsub/master/drcs_conv.ini をダウンロードして ディレクトリ ~/.local/share/vlc/arib に保存する。

Ubuntu 12.10 でパッチを当ててコンパイルして使用する

git clone git://git.videolan.org/vlc/vlc-2.0.git
cd vlc-2.0

でソースコードを取得して、あらかじめダウンロードしておいた full-patch-vlc-2.0-20121020.tar.bz を解凍する。

tar xvf full-patch-vlc-2.0-20121020.tar.bz

patches 以下にパッチがあるのでそれを適用する。

for f in patches/*.patch
patch -p1 < $f

専用のブランチを作って、そこに変更をコミットする。

git checkout -b aribsub
git add .
git commit -m "Apply full-patch-vlc-2.0-20121020.tar.bz2"

後はコンパイルする。

./bootstrap
./configure
make

できた vlc を実行する。

./vlc&

Ubuntu 12.10 のパッケージにパッチを当ててインストールする(失敗)

上記のように、コンパイルした vlc をユーザのホームディレクトリ以下に置いて使用しているが、 はじめは以下に記すように deb パッケージを作成しようとした。 次のように行ったのだが、なぜか字幕機能が使用できなく、うまくいかなかった。

コンパイルに必要なパッケージとソースコード

まず、コンパイル環境を整える。

sudo apt-get build-dep vlc

とするとなぜかエラーが出るので、手動で

sudo apt-get install libjack-jackd2-dev

をインストールする。

sudo apt-get build-dep vlc

でコンパイルする環境を整える。

mkdir vlc_aribsub
cd vlc_aribsub
apt-get source vlc

でソースコードをダウンロードする。

ソースコードにパッチを当てる

git init
git add .
git commit -m "Initial Ubunut lackage"

git のリポジトリを作って、変更を取り消せるようにしておく。

cd vlc-2.0.4

https://github.com/nkoriyama/vlc-aribsub/wiki から full-patch-vlc-2.0-20121020.tar.bz2 をダウンロードして

tar xvf full-patch-vlc-2.0-20121020.tar.bz2

で解凍する。

patch に -p1 オプションをつけて実行し、解凍したパッチを当てる。

for f in patches/*
patch -p1 < $f

不要なファイルを削除してコミットする。

rm -r patches
git add .
git commit -m "Apply full-patch-vlc-2.0-20121020.tar.bz2"

パッケージのパッチにする

dpkg-source --commit

で debian/patches 以下のパッチにする。

Enter the desired patch name:

には

full-patch-vlc-2.0-20121020.patch

と入力した。Description は適当に書く。変更をコミットしておく。

git add .
git commit -m "Create debian/patches/full-patch-vlc-2.0-20121020.patch"

libjack-dev を libjack-jackd2-dev に変更する

後で pbuilder でコンパイルするのだが、 そのときにうまくいかなかったので debian/control の

libjack-dev,

の部分を

libjack-jackd2-dev,

に変更する。おそらく、これは apt-get build-dep でエラーになったのと同じ問題。

pbuilder でのコンパイルがうまくいかなかったとき、 どこをどう変更するのが良いのかはわからないが、これでうまくパッケージは作成できた。

変更を git にコミットする。

git add .
git commit -m "Use libjack-jackd2-dev"

パッケージのバージョンを上げる

ここでは、Ubuntu のパッケージの現在のバージョンより大きくて、次のバージョンより小さいバージョン番号しておく。

dch -v 2.0.4-0ubuntu1+0aribsub1 -D quantal

で debian/changelog のテンプレートから編集して

vlc (2.0.4-0ubuntu1+0aribsub1) quantal; urgency=low

  * Apply patches of full-patch-vlc-2.0-20121020.tar.bz2

 -- USER NAME <mail@example.com>  Mon, 29 Oct 2012 16:35:11 +0900

のように書く。git にコミットしておく。

git add .
git commit -m "Update changelog"

dsc ファイルなどを更新する。

cd ..
dpkg-source -b vlc-2.0.4

これで

vlc_2.0.4-0ubuntu1+0aribsub1.debian.tar.gz  vlc_2.0.4-0ubuntu1+0aribsub1.dsc

という2つのファイルができる。git にコミットしておく。

git add .
git commit -m "Create vlc_2.0.4-0ubuntu1+0aribsub1.debian.tar.gz and vlc_2.0.4-0ubuntu1+0aribsub1.dsc"

これでコンパイルしてみる。

cd vlc-2.0.4
debuild -uc -ua

で deb ファイルができる。 これらをインストールすれば終わりなのだが、私の環境では fglrx が依存パッケージに加わり、 Ubuntu 12.10 で PPA から fglrx-legacy をインストールしてある環境だとインストールできなかった。 そのため、依存関係に不要なものが入らないように pbuilder を使ってコンパイルする。

pbuilder でパッケージを作る

必要なパッケージをインストールする。

sudo apt-get install pbuilder ubuntu-dev-tools

apt-cacher-ng をプロキシとして使用しているので、次のようなプロキシの設定を ~/.pbuilderrc に書く。

export http_proxy=http://localhost:3142/

quantal の環境を作る。

pbuilder-dist quantal create

dsc ファイルを指定してパッケージのコンパイルを実行する。

pbuilder-dist quantal build vlc_2.0.4-0ubuntu1+0aribsub1.dsc

うまくいけば ~/pbuilder/quantal_result に deb パッケージができている。

cd ~/pbuilder/quantal_result
sudo dpkg -i *.deb

のようにしてインストールすれば良いと思ったのだが、 実際に実行すると字幕機能がうまく働かない。 何が悪いのかはわからなかったので、結局、vlc はパッケージにはせずに使用している。

Tags of current page

, ,