Mirakurun+epgstation+KonomiTVを改めてdockerで構築したので未来の自分のためのメモ書き
大変でしたが知識は得られた気がします。
ただこれが今後の人生で活躍するかというと…
週末がすべて潰れたし、もしかしたらまだ構築が不十分で壊れる可能性がある
基本的にはtsukumijima氏のやり方ベースで
ただローカルに入れてたmirakurunをいじくりまわしたらなぜかぶっ壊れたのでめんどくさくなって全部dockerに入れた
nodeとかわかりにくすぎ
機材
PX-W3U4
- どこのかわからないカードリーダー
- N100の怪しいミニPC
- 8TBのHDD
下準備
変なとこ汚れるの嫌なので/var/tmp下とかでやってます
driverの導入
一瞬で入って便利
インストールしたら再起動しましょう
放送波スキャン
GitHub - tsukumijima/ISDBScanner: 受信可能な日本のテレビチャンネル (ISDB-T/ISDB-S) を全自動でスキャンし、スキャン結果を様々な形式で出力するツール
書いてある通りやるだけ
便利
docker install
いつも公式行くとapt書き換えさせられたりするけどこっちのが楽
curl -fsSL https://get.docker.com | sh
便利
カードリーダーのdevの接続ポイントを固定
lsusb # それっぽいデバイスを探す
# 自分は/dev/bus/usb/001/007でした
# Bus 001 Device 007: ID abcd:1234 Realtek Semiconductor Corp. Mass Storage Device
sudo udevadm info -a -n /dev/bus/usb/001/007
当たりならこんな表示が出ると思うのでIDなどを控えておく
ATTR{configuration}=="CARD READER"
ATTR{idProduct}=="1234"
ATTR{idVendor}=="abcd"
つながった時に/dev下にsymlinkを貼れるらしいので設定する
sudo vim /etc/udev/rules.d/99-usb-card-reader.rules
ATTR{configuration}=="CARD READER"
, ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="1234", SYMLINK+="usb-card-reader"
これで/dev/usb-card-readerにリンクが貼られてランダムに数字が割り当てられても大丈夫になる
hdd準備
fdisk -l # sda sdbなどを確認
mkfs.ext4 /dev/sdX # 対象のHDDのファイルシステム作成
mount /dev/sdX /mnt/new_hdd # mountさせる
blkid # UUIDの確認 /etc/fstabに使う
vim /etc/fstab # 自動でマウントされるように設定
UUID=aaa-bbb-111-ddd /mnt/new_hdd ext4 defaults,nofail,user 0 0
mirakurun
一番厄介
なぜならここで放送波をこねくり回すため
ぜんぶrootで操作するんでsudo -iとかしてください
フォルダの作成
mkdir –p /opt/mirakurun/opt/bin
mkdir /opt/mirakurun/run
mkdir /opt/mirakurun/config
mkdir /opt/mirakurun/data
compose.ymlの作成
cd /opt/mirakurun
wget https://raw.githubusercontent.com/Chinachu/Mirakurun/master/docker/docker-compose.yml
vim docker-compose.yml # デバイスを追加する
- /dev/bus:/dev/bus
- - /dev/dvb:/dev/dvb
+ - /dev/px4video0:/dev/px4video0
+ - /dev/px4video1:/dev/px4video1
+ - /dev/px4video2:/dev/px4video2
+ - /dev/px4video3:/dev/px4video3
+ - /dev/usb-card-reader
tuners.ymlとchannels.ymlを移植
先ほどISDBScannerで作成したymlを使用
# /var/tmpで実行したので
cp /var/tmp/scanned/Mirakurun/channels_recpt1.yml /opt/mirakurun/config/channels.yml
cp /var/tmp/scanned/Mirakurun/ctuners_recpt1.yml /opt/mirakurun/config/tuners.yml
recpt1の導入
これを使って複合とかいろいろやるらしいです
docker hubページで解説されている方法で行う
vim /opt/mirakurun/opt/bin/startup
#!/bin/bash
if !(type "recpt1" > /dev/null 2>&1);then
apt-get update
apt-get install -y --no-install-recommends git autoconf automake
cd /tmp
git clone https://github.com/stz2012/recpt1.git
cd recpt1/recpt1
./autogen.sh
./configure --prefix /opt
make
make install
fi
recpt1 -v
ビルドを行う
docker-compose run --rm -e SETUP=true mirakurun
ここでちゃんと動けば大丈夫だと思います
ダメだったら自分の手順どこかに抜けがあるかも
cd /opt/mirakurun
docker compose up –d
curl http://127.0.0.1:40772/api/version
TODO recisdb
上記と同じ方法を使えばrecisdbに変更できるかも
そのうちやってみたい
epgstation
mirakurunに比べれば楽
mirakurunから映像を受け取って変換したり、番組表を表示したりするツールなので、そこまで複雑な知識は必要ない
cd /opt/
wget https://raw.githubusercontent.com/l3tnun/docker-mirakurun-epgstation/v2/setup.sh
vim setup.sh # 最終行の削除
- docker-compose run --rm -e SETUP=true mirakurun
bash setup.sh
config.ymlの書き換え
mirakurunPath: http://192.168.1.xx:40772/ # dockerが分かれているのでこうなってます。そのうち直したい
compose.ymlの作成
cd /opt/docker-mirakurun-epgstation
cp docker-compose-sample.yml compose.yml
vim compose.yml
# mirakurun周りを削除
# depends_onのmirakurunも忘れず消す
# version表記もいらなくなったのでやめた方がいいかも
準備ができたら
cd /opt/docker-mirakurun-epgstation
docker compose up -d
curl 127.0.0.1:8888 # 何か帰ってくればOK
KonomiTV 導入
すべて設定してくれるインストーラーがあるのでdockerを選べばそのまま入ります
便利ですね
curl -LO https://github.com/tsukumijima/KonomiTV/releases/download/v0.10.0/KonomiTV-Installer.elf
chmod a+x KonomiTV-Installer.elf
./KonomiTV-Installer.elf
# インストールフォルダは
/opt/KonomiTV
# バックエンド
Mirakurun
# API URL
http://127.0.0.1:40772/
# エンコーダーは利用できるものを
QSVEncC
コメント
コメントを投稿