Skip to content
hiranotaka edited this page Apr 14, 2021 · 30 revisions

vlc-arib

VLC media player の派生版で、各種 ARIB 規格 (文字符号化方式ARIB-STD-B24、アクセスコントロールARIB-STD-B25等)に対応させたものです。

このレポジトリは、VLC 2.2.x の派生版で、現在メンテナンスは行っておりません。 VLC 3.0.x の派生版は、 こちら をご参照ください。

aribcam ストリームフィルタとの違い

2014 年 10 月に上流にマージされた aribcam ストリームフィルタは PES フィルタの制御に対応していないため、 2016 年 2 月現在 Linux DVB デバイスでは動作しません。

当派生版はストリームフィルタではなくデマルチプレクサの一部として CAM を実装することで、 PES フィルタの制御に対応しています。

ソースコードの入手

vlc-arib は現在 git で管理されています。開発マシンに git をインストールした上で次のコマンドを叩いてください。

$ git clone git://github.com/hiranotaka/vlc-arib.git

これは、一度目のみで、二度目から vlc-arib ディレクトリにて次のコマンドで更新できます。

$ git pull git://github.com/hiranotaka/vlc-arib.git

詳しくは git のマニュアルや github.com のマニュアルを参照してください。

VLC 2.2.0-git をベースにした開発は master ブランチで, VLC 2.2.x をベースにした開発は 2.2 ブランチで行っています。

通常利用は 2.2 ブランチがおすすめです。 2.2 ブランチに移るには、

$ git checkout 2.2

としてください。

pull request がもしあれば master ブランチのほうにお願いします。

ビルド

まず、ビルドに必要なパッケージをインストールします。 Debian では、

apt-get build-dep vlc
apt-get install libpcsclite-dev

で大丈夫です。

bootstrap します。

./bootstrap

configure します。 vlc-arib の機能を利用するには必ず —enable-arib は付けて下さい。

./configure --enable-arib

そして make します。

make -j4

テスト

ファイルから読み込む場合は、

./vlc /path/to/foo.mpeg

DVB デバイス (ISDB-T) から読み込む場合は

 ./vlc isdb-t://adapter=1:frequency=557142857

DVB デバイス (ISDB-S) から読み込む場合は

 ./vlc isdb-s://adapter=0:frequency=1318000000:ts-id=0x40f1

少なくとも30 秒以上、十分なデータを食わせてから [Tools]-[Program Menu] メニューを開くと EPG データが表示されているかと思います。

繰り返し試すには、プレイリストを作っておくと便利です。

#EXTM3U

#EXTINF:0,NHK東京 総合
isdb-t://adapter=1:frequency=557142857

#EXTINF:0,NHK BS-1
isdb-s://adapter=0:frequency=1318000000:ts-id=0x40f1

という内容のファイルを拡張子 .m3u8 で作り、

./vlc /path/to/foo.m3u8

とします。

また、 DVB デバイスから読み込み、画面に表示させずにファイルに保存することもできます。

 ./vlc -I dummy --run-time=10 --sout=file/ts:/path/to/bar.mpeg isdb-s://adapter=0:frequency=1318000000:ts-id=0x40f1 vlc://quit

既知の問題

番組の変わり目で音声が断続的に切れるようになる

本家 VLC の問題と思われます。一旦音声を disable にして enable して下さい。

ニヶ国放送で主音声・副音声が同時に聞こえる

本家 VLC の問題と思われます。

開発方針

Debian / Ubuntu パッケージの作成

私は対応しませんが、Debian ソースパッケージにパッチはそのまま当たると思います。

Windows での動作

パッチは受け取りますが、一切のテストは出来ません。

上流にパッチを投げない理由

現在のコードは —enable-arib 付きでビルドすると日本語以外の符号化方式を殺すなど副作用があります。当面改善する予定はありません。