Raspberry Pi地デジ関連記事
※22.12.25追記:Raspbrry Pi 4をお持ちの場合、令和5年(2023年)版最新記事が御座います。
先日、USBストレージから、64ビット版Raspberry Pi OSを起動できるようにしました。
こちらの環境に、4番組同時...
以下、令和2年(2020年)以前の記事になります。
- 2020年最終版
- 32ビット検証
- Ubuntu 20.04.1添付のffpmegは使ってはダメよ検証
- DLNA配信


このような感じで、Raspberry Pi 4で64ビット(aarch64)OSを動かして、その上でMirakurun DVR Tuner Serverを動かしてみました。
Windows PCでVLCを実行、地デジ番組をストリーミング再生してみましたが、映像・音声・字幕ともに再生することができました。
64ビット環境での安定度は・・・Windows版VLCで再生した場合ですが、すこし不安定な印象もありました。後で別記事でご紹介するEPGStationを経由すると、安定して動作した感じです。
Raspberry Pi 64ビット環境版Mirakurunの構築手順を記録しておこうと思います。
ちなみに、Mirakurunの開発はdockerベースが主体になるそうです。この記事のインストール方法はdockerではありませんので念の為ご注意ください。
Raspberry Pi 4 Aarch64版Ubuntu 20.04.1のMirakurun構築手順
必要な機材
- Raspberry Pi 4本体
- Raspberry Pi 4用USB Type-C電源(5V 3A)
- microSDカードは、UHS-I U3 A2で容量64GBのものを使用しました。
- 地デジチューナーは、4番組同時録画可能なものを選択しました。
- B-CASカード
- B-CASカードリーダー
Mirakurunのみ動かす段階では、ストレージ(HDD)はまだ接続しません。別記事で、接続して録画設定したいと思います。今回はDVRチューナサーバー、基礎部分の構築になります。
Raspberry Pi 4 4GB版をアーマーケースで冷却
Raspberry Pi本体は、メモリー4GBのPi 4を使用しました。Pi 3・Pi 4は発熱量が大きいため、安定動作用にアーマーケースをお勧め致します。

地デジチューナー・B-CASカードリーダー等

ハードウェアは基本的にこちらの記事と同じ構成になりますが、今の所ストレージ(HDD)は取りつけずに、ストリーミングサーバとして構築します。
では具体的に構築に入りたいと思います。
Ubuntu 20.04.1のインストール
OSはUbuntu 20.04.1を使用させて頂きました。
ダウンロードリンク・microSDカードへのインストール手順はこちらの記事になります。
USB HDD起動はこちらになります。←お勧め
固定IPアドレス設定
DVRチューナ・サーバとしてアクセスしやすいように、固定IPアドレスを割り当てました。
チューナ用ファームウェアのインストール
zip展開用のunzipをインストール後、/lib/firmwareディレクトリに地デジチューナ用のファームウェアをコピーします。
sudo apt install -y unzip
curl -O http://plex-net.co.jp/plex/px-s1ud/PX-S1UD_driver_Ver.1.0.1.zip
unzip PX-S1UD_driver_Ver.1.0.1.zip
sudo cp PX-S1UD_driver_Ver.1.0.1/x64/amd64/isdbt_rio.inp /lib/firmware/
念の為Raspberry Piを再起動しました。(チューナのUSB端子抜き差しが面倒d
sudo reboot
B-CASカードリーダのインストール
B-CASカードが読み取れるようにpcsc-toolsをインストールします。pcsc_scanでB-CASカードが認識されているか確認します。
sudo apt install -y pcscd pcsc-tools libpcsclite-dev
sudo pcsc_scan
コマンド実行後、青い文字で「Japanese Chijou Digital B-CAS Card」と表示されれば正しく認識されています。
node.js Ver.14・pm2インストール
Mirakurunのこちら公式ページの手順に従ってインストールさせて頂きました。
最新のnode.jsに対応されているのですね。ふむふむ。
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm install pm2 -g
node.js、pm2ともに特に問題なくインストールできました。
dvbv5インストール
Mirakurunで使用するDVBツールをインストールしておきます。


チューナ設定
sudo mirakurun config tuners
4チャンネル同時録画可能なチューナを使用しましたので、4つ分の設定を追加しました。
- name: PX-S1UD_0
types:
- GR
command: /usr/bin/dvbv5-zap -a 0 -c /usr/local/conf/dvbv5_channels_isdbt.conf -r -P <channel>
dvbDevicePath: /dev/dvb/adapter0/dvr0
decoder: arib-b25-stream-test
isDisabled: false
- name: PX-S1UD_1
types:
- GR
command: /usr/bin/dvbv5-zap -a 1 -c /usr/local/conf/dvbv5_channels_isdbt.conf -r -P <channel>
dvbDevicePath: /dev/dvb/adapter1/dvr0
decoder: arib-b25-stream-test
isDisabled: false
- name: PX-S1UD_2
types:
- GR
command: /usr/bin/dvbv5-zap -a 2 -c /usr/local/conf/dvbv5_channels_isdbt.conf -r -P <channel>
dvbDevicePath: /dev/dvb/adapter2/dvr0
decoder: arib-b25-stream-test
isDisabled: false
- name: PX-S1UD_3
types:
- GR
command: /usr/bin/dvbv5-zap -a 3 -c /usr/local/conf/dvbv5_channels_isdbt.conf -r -P <channel>
dvbDevicePath: /dev/dvb/adapter3/dvr0
decoder: arib-b25-stream-test
isDisabled: false


チューナ設定後、Mirakurunを再起動しました。
チャンネル設定
sudo curl -X PUT "http://localhost:40772/api/config/channels/scan"
APIでチャンネルのオートスキャンを行ってみましたが、問題なく設定できました。

オートスキャン後
再起動が必要、という表示が出ましたので、Mirakurunを再起動しました。
sudo mirakurun restart
Mirakurun設定確認
以上で、Mirakurunの基本的な設定が完了しました。
Webブラウザから、Raspberry Piの下記のURLへアクセスします。
http://<Raspberry PiのIPアドレス>:40772/
このような感じで、Mirakurunの設定ページが表示されました。
画面上部のStatus/Tuners, Events,Logs, Configメニューをクリックすると、イベントやログ、チューナやチャンネルの設定を確認することができます。
Config→チャンネルページを開くと、視聴可能なチャンネルを確認できます。
この画面=餃子のまちの例ですが、TBSのチャンネルは15、テレビ朝日のチャンネルは17になります。次の動作確認で、このチャンネルの番号を使用します。
Mirakurun動作確認
WindowsやLinux PCでVLCを起動→メディア→ネットワークストリームを開くを選択します。
URLを入力します。
http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/<チャンネル番号>/stream/
<チャンネル番号>は、先程確認した番号を入力します。
Windows PCでこのような感じで映像が表示されて
Mirakurunの設定画面は、確かに該当のチャンネルをストリーミングしている表示がされています。
VLCプレイリスト
Mirakurunでストリーミング再生しやすいように、xspfプレイリストを作ってみました。
mirakurun.xspfというファイル名で保存して、vlcで開くとチャンネルを選択することができます。
餃子のまち向けですので、<Raspberry PiのIPアドレス>の部分とtrackタグ、titleタグとチャンネルの数字部分を変更して、お住いの地域向けにカスタマイズしてご利用ください。
<?xml version="1.0" encoding="UTF-8"?>
<playlist xmlns="http://xspf.org/ns/0/" xmlns:vlc="http://www.videolan.org/vlc/playlist/ns/0/" version="1">
<title>プレイリスト</title>
<trackList>
<track>
<title>テレビ東京</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/18/stream/</location>
<image>attachment://onid[7fe6]_channel_logo_id[1]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>0</vlc:id>
</extension>
</track>
<track>
<title>TBS</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/15/stream/</location>
<image>attachment://onid[7fe6]_channel_logo_id[1]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>0</vlc:id>
</extension>
</track>
<track>
<title>テレビ朝日</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/17/stream/</location>
<image>attachment://onid[7fe6]_channel_logo_id[1]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>0</vlc:id>
</extension>
</track>
<track>
<title>とちぎテレビ</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/29/stream/</location>
<image>attachment://onid[7e37]_channel_logo_id[2]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>1</vlc:id>
</extension>
</track>
<track>
<title>日テレ</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/34/stream/</location>
<image>attachment://onid[7fe2]_channel_logo_id[0]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>2</vlc:id>
</extension>
</track>
<track>
<title>NHK総合</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/47/stream/</location>
<image>attachment://onid[7e30]_channel_logo_id[0]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>3</vlc:id>
</extension>
</track>
<track>
<title>NHKEテレ</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/39/stream/</location>
<image>attachment://onid[7fe1]_channel_logo_id[8]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>4</vlc:id>
</extension>
</track>
<track>
<title>フジテレビ</title>
<location>http://<Raspberry PiのIPアドレス>:40772/api/channels/GR/35/stream/</location>
<image>attachment://onid[7fe1]_channel_logo_id[8]q[5]</image>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:id>4</vlc:id>
</extension>
</track>
</trackList>
<extension application="http://www.videolan.org/vlc/playlist/0">
<vlc:item tid="0"/>
<vlc:item tid="1"/>
<vlc:item tid="2"/>
<vlc:item tid="3"/>
<vlc:item tid="4"/>
<vlc:item tid="5"/>
<vlc:item tid="6"/>
<vlc:item tid="7"/>
<vlc:item tid="8"/>
</extension>
</playlist>
ちなみに、4番組同時視聴が可能なチューナを使用ましたが、1番組のみ視聴している状態のRaspberry Piの負荷は?
このような感じで。0.24でした。
64ビット環境の影響でしょうか。かなり余裕な感じです。
VLCによる再生に限ってですが。残念ながら、20.9.3現在、私のおうちの環境では、動作が安定しているとは言えない状況です。番組を見ていると、たまにVLCが異常終了する場合があります。
64ビット環境でEPGStationを動かす記事を別途作成しようと思いますが、EPGStation経由で再生すると、安定している印象でした。続いてEPGStationをインストールしましょう。
Raspberry Pi地デジ関連記事
- 2020年最終版
- 32ビット検証
- Ubuntu 20.04.1添付のffpmegは使ってはダメよ検証
- DLNA配信