chinachuで全番組録画サーバーを作る
Ubuntu20.04とPX-MLT5PEとchinachuで録画サーバーを作る
PX-MLT5PE 2台を一つの(9ピン)USBコネクタで接続する
を組み合わせ全録鯖を作る
諸々終わるとデバイスが生えてくる
$ ls -l /dev/pxmlt5video*
crw-rw-r-- 1 root video 240, 0 Jun 26 00:41 /dev/pxmlt5video0
crw-rw-r-- 1 root video 240, 1 Jun 26 00:41 /dev/pxmlt5video1
crw-rw-r-- 1 root video 240, 2 Jun 26 00:41 /dev/pxmlt5video2
crw-rw-r-- 1 root video 240, 3 Jun 26 00:41 /dev/pxmlt5video3
crw-rw-r-- 1 root video 240, 4 Jun 26 00:41 /dev/pxmlt5video4
crw-rw-r-- 1 root video 240, 5 Jun 26 00:41 /dev/pxmlt5video5
crw-rw-r-- 1 root video 240, 6 Jun 26 00:41 /dev/pxmlt5video6
crw-rw-r-- 1 root video 240, 7 Jun 26 00:41 /dev/pxmlt5video7
crw-rw-r-- 1 root video 240, 8 Jun 26 00:41 /dev/pxmlt5video8
crw-rw-r-- 1 root video 240, 9 Jun 26 00:41 /dev/pxmlt5video9
chinachuのWEB UIには見ない(録画しない)チャンネルが生えてくるのでこれをconfig.jsonのexcludeServicesを書き換えて消す

不要なチャンネルIDはmirakurunのAPIを叩いて取得する。
$ curl -s "http://localhost:40772/api/services" | jq .
[
{
"id": 3273601024,
"serviceId": 1024,
"networkId": 32736,
"name": "NHK総合1・東京",
"type": 1,
"logoId": 0,
"remoteControlKeyId": 1,
"channel": {
"type": "GR",
"channel": "27"
},
"hasLogoData": true
},
(...snip....)
{
"id": 3239723656,
"serviceId": 23656,
"networkId": 32397,
"name": "J:COMテレビ",
"type": 1,
"logoId": 0,
"remoteControlKeyId": 10,
"channel": {
"type": "GR",
"channel": "13"
},
"hasLogoData": true
},
{
"id": 3239723657,
"serviceId": 23657,
"networkId": 32397,
"name": "J:COMテレビ",
"type": 1,
"logoId": 0,
"remoteControlKeyId": 10,
"channel": {
"type": "GR",
"channel": "13"
},
"hasLogoData": true
},
{
"id": 3233527768,
"serviceId": 27768,
"networkId": 32335,
"name": "J:COMチャンネル",
"type": 1,
"logoId": 10,
"remoteControlKeyId": 11,
"channel": {
"type": "GR",
"channel": "37"
},
"hasLogoData": true
},
{
"id": 3233527769,
"serviceId": 27769,
"networkId": 32335,
"name": "J:COMチャンネル",
"type": 1,
"logoId": 10,
"remoteControlKeyId": 11,
"channel": {
"type": "GR",
"channel": "37"
},
"hasLogoData": true
},
{
"id": 3233527770,
"serviceId": 27770,
"networkId": 32335,
"name": "J:COMチャンネル",
"type": 1,
"logoId": 10,
"remoteControlKeyId": 11,
"channel": {
"type": "GR",
"channel": "37"
},
"hasLogoData": true
}
]
もっと見やすくするとこんな感じ
$ curl -s "http://localhost:40772/api/services" | jq ".[] | {name: .name, id: .id}"
{
"name": "NHK総合1・東京",
"id": 3273601024
}
(...snip....)
{
"name": "J:COMテレビ",
"id": 3239723656
}
{
"name": "J:COMテレビ",
"id": 3239723657
}
{
"name": "J:COMチャンネル",
"id": 3233527768
}
{
"name": "J:COMチャンネル",
"id": 3233527769
}
{
"name": "J:COMチャンネル",
"id": 3233527770
}
こんな感じにconfig.jsonのexcludeServices部分を書き足す
"excludeServices": [
3273701416,
3232728088,
3273901183,
3274201456,
3239123992,
3239123993,
3273601408,
3273601025,
3273701034,
3232727705,
3239723656,
3239723657,
3233527768,
3233527769,
3233527770,
3239123610
],
pm2をリスタートさせる
$ sudo pm2 restart all
減った

GR(地上波)全部録画するのでチェックして作成

全部録画出来る

マルチチャンネルはexcludeServicesで弾かないと行けない(対象CHだけでは不十分)のがポイント