chinachuで全番組録画サーバーを作る

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だけでは不十分)のがポイント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です