tetsu31415.log

androidなどのことを書き綴っていこうと思います。

DD Max M4を買ってArch Linuxでセットアップした

はじめに

PC向けのTVチューナーはいろいろなメーカーが製造していますが、 ドイツのDigital Devices社のMax M4はいろいろな放送波に対応しており、安定もしているようです。 ただ、とても高いです。
これまではUSB接続のチューナーを使っていましたが、チューナー不足になることがたまにあったので、 複数ch対応のチューナーを検討していました。 5月に期間限定で5%クーポンがあったので(5ch情報)購入しました。

最近、真ん中の端子がF型コネクタにリニューアルされたようです。 f:id:tetsu31415:20210602000829j:plain

購入

DD社のサイトから購入しました。 EURでの支払いは36000円程度、配送業者(DHL)への支払いは2800円でした。 だいたい1週間程度で届きました。

品目 価格
Max M4 251.26 EUR
クーポン5% 12.56 EUR
配送手数料 28.72 EUR
輸入消費税 1,700 JPY
立替納税手数料 1,100 JPY

セットアップ

環境

配線

DD Max M4には5つの端子があります。 地上波(ISDB-T)及びCATV(ISDB-C)は真ん中の端子に接続することで、4チューナー利用可能です。 衛星放送では、残りの4つの端子を使うようです。

今回は真ん中の端子のみに接続し、地上波の受信を行います。

チューナーセットアップ

ドライバインストール

チューナーのドライバはLinuxカーネルには組み込まれていないので、 DD社の公式ドライバをインストールする必要があります。
参考: Build and install the dddvb driver under Linux (DVB)

Arch Linuxでは、AURにあるパッケージ(dddvb-dkms)でインストールできました。

ドライバをインストール後、再起動するとドライバが認識されます。

$ lspci -v
(中略)
04:00.0 Multimedia controller: Digital Devices GmbH Device 000a
        Subsystem: Digital Devices GmbH Device 0050
        Flags: bus master, fast devsel, latency 0, IRQ 95
        Memory at b0600000 (64-bit, non-prefetchable) [size=64K]
        Capabilities: <access denied>
        Kernel driver in use: ddbridge
        Kernel modules: ddbridge

また、/dev/dvb/配下を見るとアダプタが4つ認識されていることが確認できます。

$ ls /dev/dvb/
adapter0  adapter1  adapter2  adapter3

受信確認

DVBv5 Toolsのコマンドを使って受信状態を確認していきます。 Arch Linuxでは、v4l-utils パッケージにコマンドが含まれています。

一般ユーザでチューナーをオープンするには、videoグループに追加する必要があります。 下記のコマンドなどで追加できると思います。

$ sudo gpasswd -a $USER video

dvb-fe-tool コマンドでは、チューナーの情報を取得できます。 オプションで-a 0を指定するとadapter0の情報を取得できます。

$ dvb-fe-tool -a 0
Device M4 (/dev/dvb/adapter0/frontend0) capabilities:
     CAN_2G_MODULATION
     CAN_FEC_1_2
     CAN_FEC_2_3
     CAN_FEC_3_4
     CAN_FEC_4_5
     CAN_FEC_5_6
     CAN_FEC_7_8
     CAN_FEC_AUTO
     CAN_GUARD_INTERVAL_AUTO
     CAN_HIERARCHY_AUTO
     CAN_INVERSION_AUTO
     CAN_MUTE_TS
     CAN_QAM_16
     CAN_QAM_32
     CAN_QAM_64
     CAN_QAM_128
     CAN_QAM_256
     CAN_QAM_AUTO
     CAN_QPSK
     CAN_RECOVER
     CAN_TRANSMISSION_MODE_AUTO
DVB API Version 5.11, Current v5 delivery system: ISDBT
Supported delivery systems:
     DVBC/ANNEX_A
     DVBC/ANNEX_B
     DVBC/ANNEX_C
     ISDBC
     (null)
     DVBT
     DVBT2
    [ISDBT]
     DVBS
     DVBS2
     ISDBS
Frequency range for the current standard:
From:             950 kHz
To:               865 MHz

dvbv5-zapコマンドで放送波を受信してみます。 このコマンドでは、設定ファイルが必要になります。 dvbconf-for-isdb レポジトリ内の conf/dvbv5_channels_isdbt.conf を使用しました。

adapter3で物理チャンネル25を受信する例は下記のようになります。 Lockと表示されれば正常に受信できています。 物理チャンネルがわからない場合はdvbv5-scanでスキャンできます。

$ dvbv5-zap -a 3 -c dvbv5_channels_isdbt.conf -r -P 25
using demux 'dvb3.demux0'
reading channels from file 'dvbv5_channels_isdbt.conf'
tuning to 545142857 Hz
pass all PID's to TS
  dvb_set_pesfilter 8192
dvb_dev_set_bufsize: buffer set to 6160384
       (0x00) Signal= -52.53dBm C/N= 0.00dB UCB= 0
Lock   (0x1f) Signal= -54.83dBm C/N= 31.27dB UCB= 0
Lock   (0x1f) Signal= -54.83dBm C/N= 31.27dB UCB= 0
DVR interface '/dev/dvb/adapter3/dvr0' can now be opened
Lock   (0x1f) Signal= -54.83dBm C/N= 32.07dB UCB= 0 preBER= 0

これで放送波が受信できることを確認できました。
まだ買ったばかりですが、今のところは安定して動作していそうです。