[参考]
Build and install the dddvb driver under Linux (DVB)
Digital Devices社(独)から販売されている Max M4をUbuntuで使えたので忘れないようにメモ。
記事作成時点だとLinuxに入っているデフォルトのカーネルドライバ(ddbridge)が古くてMax M4は動かないため、手動で新しいバージョンのドライバを入れてMirakurunに設定するところまで書いておく。
あと面倒なのでBCASカードとかそこらへんは割愛してPT3やPLEX系から切り替える感じの手順。
カーネルをアップグレードするとドライバの再インストールが必要になるため注意。個人的にはそのうちにデフォルトドライバで使えるようになって解決する問題だと思ってるので放置してる。
確認環境
- Ubuntu 18.04.1
必要パッケージとかのインストール
必要パッケージのインストール
sudo apt install build-essential git dvb-tools
DVB用の周波数設定をインストール
cd /usr/local sudo git clone https://github.com/Chinachu/dvbconf-for-isdb.git #Max M4はどのチューナーでも地上/衛星どちらも受信できるので設定ファイルを一つで参照できるようまとめる cd /usr/local/dvbconf-for-isdb/conf/ cat dvbv5_channels_isdbs.conf dvbv5_channels_isdbt.conf | sudo tee -a dvbv5_channels_isdb.conf
ドライバをインストール
先にPCIスロットへ刺したMax M4を認識しているか確認
lspci |grep Multi #多分こんなのが表示される 06:00.0 Multimedia controller: Digital Devices GmbH Device 000a
makeしてインストール
cd /usr/local/src git clone https://github.com/DigitalDevices/dddvb.git cd dddvb make clean && make sudo make install
必要性がわからないけど参考元にあった呪文
たぶんデフォルトの古いドライバより新しく入れたものを優先させるための設定
sudo mkdir -p /etc/depmod.d echo 'search extra updates built-in' | sudo tee /etc/depmod.d/extra.conf sudo depmod -a
ドライバをロードして再起動
sudo modprobe ddbridge sudo reboot
DVBデバイスとして見えるか確認
ls /dev/dvb/ #こんな感じに見えるはず adapter0 adapter1 adapter2 adapter3
受信動作確認
アンテナを繋いだら実際に受信できるか確認
sudo dvbv5-zap -a 0 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P 14 #各オプションのざっくりした説明 # -a 使用するDVBデバイスの番号 0なら「/dev/dvb/adapter0」 # -c 周波数の設定ファイル指定 # -r DVBデバイスを録画できるようセットアップ # -P チャンネル名(チャンネル名は周波数設定から参照) # 地デジのチャンネルは地方によって変わるので注意、例は山形のNHK総合のつもり
実際に実行するとこうなるはず
「Lock」と出ていれば録画できる程度の感度が確保できてるみたい
$ sudo dvbv5-zap -a 0 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P 14 using demux 'dvb0.demux0' reading channels from file '/usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf' tuning to 479142857 Hz pass all PID's to TS dvb_set_pesfilter 8192 (0x00) Signal= -25.63dBm C/N= 0.00dB UCB= 0 Lock (0x1f) Signal= -32.93dBm C/N= 32.77dB UCB= 0 Lock (0x1f) Signal= -32.93dBm C/N= 32.67dB UCB= 0 DVR interface '/dev/dvb/adapter6/dvr0' can now be opened Lock (0x1f) Signal= -33.31dBm C/N= 32.67dB UCB= 0 preBER= 0 ^CLock (0x1f) Signal= -33.31dBm C/N= 32.87dB UCB= 0 preBER= 0
受信できてない場合はこんな感じ
$ sudo dvbv5-zap -a 0 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P 62 using demux 'dvb0.demux0' reading channels from file '/usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf' tuning to 767142857 Hz pass all PID's to TS dvb_set_pesfilter 8192 (0x00) Signal= -82.70dBm C/N= 0.00dB UCB= 0 (0x00) Signal= -82.32dBm C/N= 0.00dB UCB= 0 (0x00) Signal= -82.32dBm C/N= 0.00dB UCB= 0
Mirakurunの設定
インストール方法は割愛
設定を呼び出す
sudo mirakurun config tuners
以下のように書き換え
- name: MaxM4 types: - GR - BS - CS command: dvbv5-zap -a 0 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P <channel> dvbDevicePath: /dev/dvb/adapter0/dvr0 decoder: arib-b25-stream-test isDisabled: false - name: MaxM4 types: - GR - BS - CS command: dvbv5-zap -a 1 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P <channel> dvbDevicePath: /dev/dvb/adapter1/dvr0 decoder: arib-b25-stream-test isDisabled: false - name: MaxM4 types: - GR - BS - CS command: dvbv5-zap -a 2 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P <channel> dvbDevicePath: /dev/dvb/adapter2/dvr0 decoder: arib-b25-stream-test isDisabled: false - name: MaxM4 types: - GR - BS - CS command: dvbv5-zap -a 3 -c /usr/local/dvbconf-for-isdb/conf/dvbv5_channels_isdb.conf -r -P <channel> dvbDevicePath: /dev/dvb/adapter3/dvr0 decoder: arib-b25-stream-test isDisabled: false
Mirakurunを再起動
sudo mirakurun restart
あとは適当に動くか確認して使う
(おまけ)DVBデバイス番号の固定
他のチューナデバイスと共存する時にデバイスの割当番号が変わって慌てないように固定しておくための設定
cat <<'EOF' | sudo tee -a /etc/modprobe.d/ddbridge.conf options ddbridge adapter_nr=4,5,6,7 EOF #設定を反映するための再起動 sudo reboot
上記の設定だとadapter4~7になる
$ ls /dev/dvb/ adapter4 adapter5 adapter6 adapter7
コメント