LibreELECで地デジを楽しむためにMirakurunとEPGStationを一発で動かす
- Mzyy94
- Multimedia
- 17 Aug, 2020
ステイホーム
↓
おうち時間が増える
↓
テレビを見たくなる
↓
Raspberry Piで地デジを見る
地上デジタル放送をRaspberry Piで視聴する定番の組み合わせを、ノーコード・コマンドライン操作なしに、すなわち一発でセットアップできるようにした。
目次
Open 目次
ソフトウェア構成
どういったソフトウェアを用いるのか見ていこう。
LibreELEC
LibreELEC – Just enough OS for KODI
メディアセンターアプリケーションとして名を馳せるKodiを動作させることに特化したOS。 類似のものにosmcやOpenELECがあるが、もっとも活発にメンテナンスされているのはLibreELECだ(執筆時)。
Kodiはアドオンというプラグインシステムで機能やサービスの拡張ができる。 そのアドオンを管理するためのアドオンマネージャという、言わばパッケージマネージャをKodiは有しており、依存関係の解消やアドオンリポジトリの管理などを担っている。 システムユーティリティなどを管理することもあることから、LibreELECのようなKodiのみを動かすことを想定しているOSでは、ベースとなるLinuxのパッケージマネージャを使うのではなく、Kodiのアドオンマネージャを利用するのが筋といったところだ。
LibreELECが優れている点として、2つの大きな特徴がある。Sambaの標準搭載とDockerアドオンの存在だ。
Sambaファイル共有サービス
ネットワークファイル共有のデファクトであろうSamba。そのSambaファイル共有サービスがLibreELECに標準で組み込まれていて、初回セットアップ時に有効にできる(もちろん後から変更できる)。 これによって、コマンドラインを操作する必要なくLibreELECにmacOSやWindowsからファイルを転送できる。
Dockerアドオン
LibreELECでDockerを動かすためのDockerアドオンが、LibreELECの公式アドオンリポジトリから提供されている。 Raspberry PiでもDockerは動くため、arm/arm64プラットフォーム向けのDockerイメージであれば、アドオンの形でサービスを手軽に動作させることができるのだ。
参考: Docker comes to Raspberry Pi - Raspberry Pi
Mirakurun
TVチューナーサーバーサービスであるMirakurun。 先日メジャーバージョンアップがあり、ドライバのインストールを不要としたりDocker対応が強化されたりと、より手軽に導入できるようになった。
Mirakurun 3.0.0 “Night Whale” リリースのお知らせとインストール方法https://t.co/OXS4G6C57L#空気録学電子版
— 録画研究会 (@Chinachu_REC) June 16, 2020
Dockerイメージはdocker-composeで自分でビルドして利用するようにあるが、Docker Hubにも公開されている。 ただ、公開されているイメージにはRaspberry Piでネイティブに動作するarm/arm64プラットフォーム向けのものが含まれていなかったため、追加するPRを送って無事マージされた。 これでRaspberry PiでもDockerイメージのビルド不要でTVチューナーを扱えるようになる。
リリースtagを打つときにarm/arm64ビルドのDockerイメージも作成する by mzyy94 · Pull Request #72 · Chinachu/Mirakurun
そして、LibreELECのDockerアドオンに対応したMirakurunアドオンを作成した。これをLibreELECのKodiに導入することで、TVチューナーサーバーを手軽に立ち上げられるようになる。
GitHub - Harekaze/docker.harekaze.mirakurun: Mirakurun Docker addon for LibreELEC
EPGStation
Mirakurunを使っていい感じにWebブラウザから地上デジタル・衛星放送の録画管理と視聴をするためのアプリケーション。こちらもDocker対応があり、Raspberry Piでも動作するarm/arm64イメージも提供されている。
.@masnagam さんのご協力によって(私はほぼ何もしていませんが) Docker HubにてEPGStationのdockerイメージを公開できるようになりました。
— l3tnun (@l3tnun) May 10, 2020
docker-mirakurun-epgstationへの対応も追々やります。
ぜひご活用ください。https://t.co/z8jJKrZxNM
ffmpegは含まれないので注意してください。
Mirakurunと同じくして、LibreELEC向けのDockerアドオンに対応したEPGStationアドオンを作成した。
GitHub - Harekaze/docker.harekaze.epgstation: EPGStation Docker addon for LibreELEC
pvr.epgstation
KodiでEPGStationを管理・視聴するためのKodiアドオン。自分で作った。誕生話は以下から。
Kodi “pvr.chinachu” 輪廻転生https://t.co/ioRtK38KdU#c98 #空気録学 #空気録学電子版
— 録画研究会 (@Chinachu_REC) July 25, 2020
このアドオンはLibreELECに依存していないため、macOSやWindows上のKodiでも利用できる。
GitHub - Harekaze/pvr.epgstation: EPGStation for Kodi! A Kodi PVR addon of EPGStation
Harekaze2 PVR Repository
これらのアドオンをまとめて提供するアドオンリポジトリも作った。GitHub Actionsで自動デプロイするように工夫してある。
GitHub - Harekaze/repository: Remote binary repository
harekaze.github.io/repositoryからアドオンリポジトリのアドオンをダウンロードし、LibreELECのKodiにインストールすることで、アドオンマネージャで管理できるようになる。さらに自動更新にも対応するので、これを使わない手は無い。
用意するもの
手軽に導入できそうなことがわかったので、機材を揃える。
Rasbperry Pi 4
これがなきゃ始まらない。4GBモデルの方が不安がないが、2GBモデルでも多分動く。
Amazon | 【国内正規代理店版】Raspberry Pi 4 Model B/4GB OKdo版【技適マーク付】 | Raspberry Pi Shop by KSY | PCパーツ 通販
※起動に最低限必要な電源やケーブル類も用意しておく
Raspberry Pi STBケース
映像出力には発熱を伴うので、冷却できるケースを選ぶ。 おすすめはこちら。冒頭の画像に写っているものだ。
Raspberry Piはポート類が頭の悪い配置になっているので、全て背面に寄せられるケース。 冷却ファン付きである上、microHDMIポートをType A HDMIに変換してくれ、尚且つ安価である。
microSD
Dockerでサービスを動かしたりするので、耐久性のある32GBくらいの容量のものが必要。 ちゃんとしたメーカーのものであればどれでも良い。
USB地デジチューナー
Linuxにドライバーが組み込まれているチューナーを選ぶ。 推奨はPLEXの地上デジタルチューナー。
Amazon.co.jp: PLEX USB接続ドングル型地上デジタルTVチューナー PX-S1UD V2.0: パソコン・周辺機器
Amazon | USB接続ドングル型地上デジタルTVチューナー/薄型コンパクトPC用USB地デジチューナーPC用 USBバスパワー | MyGica | TVチューナー・キャプチャーボード 通販
Tip
2020/09/17追記: MyGicaの安価なチューナーはもう取り扱いを終了したようだ。
ICカードリーダー
B-CASカードを読むために必要。
B-CASカード
安価な地デジチューナーにはB-CASカードがついていない。 無い場合は、以下のフォームから 再発行 を申し込める。
B-CAS 株式会社 ビーエス・コンディショナルアクセスシステムズ
ただ、“再発行”とあるように、なくした場合や中古のチューナーを買った場合などに限られ、B-CASカードの付属しない新品のチューナーを買った場合の新規発行は受け付けていないようなので、持ってない場合は中古のTVチューナーを買うのが唯一の入手方法になる。
ポータブルHDD
録画データ保存用。USB 3.0対応であれば、どれでも良い。
Amazon.co.jp: BUFFALO ミニステーション USB3.1(Gen1)/USB3.0用ポータブルHDD 1TB HD-PCFS1.0U3-BBA: パソコン・周辺機器
導入
1. LibreELECのイメージをRaspberry Pi Imagerで書き込む
Raspberry Pi公式のOS書き込みツールであるRaspberry Pi Imagerには、LibreELECが候補のOSとして登録されている。 自分のRaspberry Piにあったイメージを選択し、microSDカードに焼き込む。
2. Raspberry Piを準備する
以下がやることリスト。 電源が最後であれば、順番通りでなくても良い。
- microSDカードを入れる
- TVチューナーとアンテナ端子を繋げる
- カードリーダーとB-CASカードを接続する
- ポータブルHDDを繋げる
- LANケーブルを繋げる
- HDMIケーブルでテレビに繋ぐ
- 電源を繋ぐ
3. LibreELECを起動してセットアップを進める
初回の起動時にはLibreELECのセットアップが始まる。 ほとんどのテレビであれば、テレビのリモコンがHDMI/CECを通してLibreELECを操作できるようになっているため、リモコンを使ってセットアップを進めていく。リモコンが無かったり、うまく動かない場合はUSBキーボードを接続してセットアップを行うこともできる。
途中、Sambaを有効にするかのオプションが出てくるため、有効にしておくように。
デフォルト表示言語が英語のため日本語化が必要になるが、Googleがその方法を教えてくれるだろう。
セットアップ完了後は、Kodiを操作できるスマホアプリを使うと快適に利用できる。
4. リポジトリのzipをSambaで転送する
セットアップが終わると、同じLANにつながっているWindowsやmacOSからLibreELECのSambaが見えるようになっている。 SambaにあるDownloadsフォルダにharekaze.github.io/repositoryからダウンロードしたリポジトリアドオンをコピーする。
5. アドオンマネージャからリポジトリアドオンをインストールする
Kodiのアドオンメニューを進むと、「zipファイルからインストール」というメニューがあるため、そこからリポジトリアドオンをインストールしていく。初回は「提供元不明の〜」などといった警告が出るが、遷移先の設定画面で有効にすれば良い。
zipファイル選択画面で、「ホーム→Downloads」と辿って先ほどのzipファイルを選択してインストールすれば、リポジトリが登録される。
6. アドオンのインストール
「リポジトリからインストール」メニューの中にHarekaze2リポジトリが登録されているはずなので、そこから必要なアドオンを追加していく。依存関係にあるDockerアドオンや、ffmpegアドオンもセットでインストールされるので、わざわざ先にインストールしておく必要はない。
順番はmirakurun→EPGStation→pvr.epgstationが望ましい。 Dockerイメージの取得に時間がかかるため、気長に待つ。
初期状態で特に設定をしなくても使えるようにしてあるが、SambaのConfigfilesディレクトリにMirakurunとEPGStationの設定ファイルがあるので、必要であれば調整はそこからできる。
7. EPGStation録画先の変更
接続したUSBハードディスクに録画を保存するようにepgstationサービスの設定画面を開き、録画先を変更する。
8. pvr.epgstationの設定
EPGStationのサービスが動いているhttp://0.0.0.0:8888
を、pvr.epgstationの設定画面で指定する。
アドオンを再起動すれば、お手軽地デジ視聴環境の出来上がり。
+α. 音ズレの解消
音ズレするときは、Kodiの設定画面にあるプレイヤー設定の中の「ディスプレイの同期周波数に合わせて再生する」を有効にすると直る。
これまでの構成との比較
遥か昔、地上デジタル放送をRaspberry Pi 2で視聴していた時期があった。
Raspberry Pi 2での地デジ視聴時の負荷
— 体験価値 (@mzyy94) February 11, 2015
HWデコーダー有効にするとフレームドロップなしでCPU負荷はほぼゼロ pic.twitter.com/rAzv7eCTGW
これまでブログで紹介してきたように、地デジの視聴構成は以下のようになっていた。
地デジ用NAS
Raspberry Pi 2B
- メディアセンターアプリケーション Kodi/XBMC統合OS OSMC
- Kodi向けChinachu連携プラグイン pvr.chinachu
機器構成を練り直すついでに、導入手順を簡略化することにしたこともあって、当時と比べて随分とすっきりした。
- 地デジ用NAS → 廃止。構築不要
- Chinachu → EPGStation
- OSMC → LibreELEC
- Raspberry Pi 2B → Raspberry Pi 4B
- pvr.chinachu → pvr.epgstation
機器構成の変化以上に、導入がものすごく手軽になった功績が大きい。
まとめ
おうち時間を充実させていきましょう。