Mirakurunで構築したが、pid高速増加の原因がわからなかったので、
代替方法を調べていた。
Rustでの実用アプリ作成の練習として、実装したいかも、とおもって調べたらMirakcというのがすでに存在していた。
基本的なAPIは互換性があるらしいのでdockerで入れるだけで置き換えられそう。
GitHub - mirakc/mirakc: A Mirakurun-compatible PVR backend written in Rust
mirakc docker
Mirakurunと違ってconfigファイルが1つにまとまっている。
視聴コマンドは適宜置き換える必要があり
tuners: # Add tuners available on a local machine. - name: Tuner0 types: [GR] command: >- recpt1 --device /dev/px4video2 {{{channel}}} - -
mirakc-docker版のイメージにはシングルバイナリのrecpt1が入っている(b25がdisableである)
b25をenableでビルドしたものを使いたい場合は、外からコピーするか、
中で再ビルドする必要がある(いろいろインストールしないといけない)
この再ビルドのために、mirakcのイメージはdebian版を使用することにした
(alpineだといろいろ足りなかった)
services: mirakc: image: docker.io/mirakc/mirakc:debian container_name: mirakc init: true restart: unless-stopped ...(以下サンプルと同じ)
起動
docker compose V2なら問題なく起動できた。
Mirakurunが先にdockerで動いているとポートが競合するので停止しておく。
mirakurunと違って、Tuner管理画面GUIがないので(真っ白なページがある)
コマンドで起動したか確認する。
curl -fsSL http://localhost:40772/api/version {"current":"1.0.79","latest":"1.0.79"}
チャンネルスキャンはやってない(できるんじゃ)
(mirakurunのほうでチャンネル番号はわかっていたので。。)
TVTestから見るときは、Bondriver_mirakcが必要(≠Bondriver_mirakurun)
mirakurun互換なのでKonomiTVも動く