Epgrec

epgrecもJCOM対応

2024年1月に地デジの『J:COMチャンネル』、『J:COMテレビ』の2チャンネルが増えたが、epgrecの対応を忘れていた。

というわけで、まずはepg.Recorder_channelTblに追加。

yano@GT110b:~$ mysql epg -e "INSERT INTO Recorder_channelTbl (type, channel, channel_disc, sid, name) VALUES ('GR', 33, 'GR33', 'hd', 'J:COMチャンネル'),('GR', 37, 'GR37', 'hd', 'J:COMテレビ');"
yano@GT110b:~$

続いて/var/www/html/epgrec/config.phpにも追加。

yano@GT110b:/var/www/html/epgrec$ diff -bc config.php.old config.php
*** config.php.old      2019-04-09 23:54:30.000000000 +0900
--- config.php  2026-05-03 01:28:00.204597368 +0900
***************
*** 44,49 ****
--- 44,51 ----
        "GR32" => "32",         // FBS
        "GR26" => "26",         // TVQ
        "GR34" => "34",         // TNC
+       "GR33" => "33",         // J:COMチャンネル
+       "GR37" => "37",         // J:COMテレビ
  );
yano@GT110b:/var/www/html/epgrec$

あとは/etc/cron.d/getepg周期でEPG番組表が更新されるのを待つだけだが、お急ぎの場合は

epgrecも更新

先日の「スターチャンネル再編」でのepgrec更新。

2年前に開局した「BS松竹東急」、「BSJapanext」、「BSよしもと」にも対応してなかったのを気づいたので、epgdumpepgrec更新。

recpt1はstz2012/recpt1のフォーク版、BS再編 2024/06/01に対応したkaikoma-soft/recpt1に乗り換え。

yano@GT110b:~/software/tv/epgdumpr2$ diff -bc epgdump.c.20210720 epgdump.c
*** epgdump.c.20210720  2021-07-20 01:30:08.509074828 +0900
--- epgdump.c   2024-06-19 11:09:45.652381471 +0900
***************
*** 39,52 ****
  {
        char    *name;
        char    *ontv;
!       int             tsId;           // OriginalNetworkID
!       int             onId;           // TransportStreamID
        int             svId;           // ServiceID
  } STATION;
  static STATION bsSta[] = {
!       { "NHK BS1", "4101.epgdata.ontvjapan", 16625, 4, 101},
!       { "NHK BSプレミアム", "4103.epgdata.ontvjapan", 16433, 4, 103},
        { "BS日テレ", "4141.epgdata.ontvjapan", 16592, 4, 141},
        { "BS朝日", "4151.epgdata.ontvjapan", 16400, 4, 151},
        { "BS-TBS", "4161.epgdata.ontvjapan", 16401, 4, 161},
--- 39,52 ----
  {
        char    *name;
        char    *ontv;
!       int             tsId;       // TransportStreamID
!       int             onId;       // OriginalNetworkID
        int             svId;           // ServiceID
  } STATION;
  static STATION bsSta[] = {
!       { "NHK BS", "4101.epgdata.ontvjapan", 16625, 4, 101},
! //    { "NHK BSプレミアム", "4103.epgdata.ontvjapan", 16433, 4, 103},
        { "BS日テレ", "4141.epgdata.ontvjapan", 16592, 4, 141},
        { "BS朝日", "4151.epgdata.ontvjapan", 16400, 4, 151},
        { "BS-TBS", "4161.epgdata.ontvjapan", 16401, 4, 161},
***************
*** 55,63 ****
        { "WOWOWプライム", "4191.epgdata.ontvjapan", 16432, 4, 191},
        { "WOWOWライブ", "4192.epgdata.ontvjapan", 17488, 4, 192},
        { "WOWOWシネマ", "4193.epgdata.ontvjapan", 17489, 4, 193},
!       { "スター・チャンネル1", "4200.epgdata.ontvjapan", 16529, 4, 200},
!       { "スター・チャンネル2", "4201.epgdata.ontvjapan", 16626, 4, 201},
!       { "スター・チャンネル3", "4202.epgdata.ontvjapan", 16626, 4, 202},
        { "BS11", "4211.epgdata.ontvjapan", 16528, 4, 211},
        { "TwellV", "4222.epgdata.ontvjapan", 16530, 4, 222},
        { "BSキャンパスex", "4231.epgdata.ontvjapan", 18098, 4, 231},
--- 55,63 ----
        { "WOWOWプライム", "4191.epgdata.ontvjapan", 16432, 4, 191},
        { "WOWOWライブ", "4192.epgdata.ontvjapan", 17488, 4, 192},
        { "WOWOWシネマ", "4193.epgdata.ontvjapan", 17489, 4, 193},
!       { "スター・チャンネル", "4200.epgdata.ontvjapan", 16529, 4, 200},
! //    { "スター・チャンネル2", "4201.epgdata.ontvjapan", 16626, 4, 201},
! //    { "スター・チャンネル3", "4202.epgdata.ontvjapan", 16626, 4, 202},
        { "BS11", "4211.epgdata.ontvjapan", 16528, 4, 211},
        { "TwellV", "4222.epgdata.ontvjapan", 16530, 4, 222},
        { "BSキャンパスex", "4231.epgdata.ontvjapan", 18098, 4, 231},
***************
*** 66,72 ****
        { "グリーンCH", "4234.epgdata.ontvjapan", 18224, 4, 234},
        { "BSアニマックス", "4236.epgdata.ontvjapan", 18130, 4, 236},
  //    { "FOX bs238", "4238.epgdata.ontvjapan", 18096, 4, 238},
!       { "BSスカパー!", "4241.epgdata.ontvjapan", 18097, 4, 241},
        { "J SPORTS 1", "4242.epgdata.ontvjapan", 18225, 4, 242},
        { "J SPORTS 2", "4243.epgdata.ontvjapan", 18226, 4, 243},
        { "J SPORTS 3", "4244.epgdata.ontvjapan", 18257, 4, 244},
--- 66,72 ----
        { "グリーンCH", "4234.epgdata.ontvjapan", 18224, 4, 234},
        { "BSアニマックス", "4236.epgdata.ontvjapan", 18130, 4, 236},
  //    { "FOX bs238", "4238.epgdata.ontvjapan", 18096, 4, 238},
! //    { "BSスカパー!", "4241.epgdata.ontvjapan", 18097, 4, 241},
        { "J SPORTS 1", "4242.epgdata.ontvjapan", 18225, 4, 242},
        { "J SPORTS 2", "4243.epgdata.ontvjapan", 18226, 4, 243},
        { "J SPORTS 3", "4244.epgdata.ontvjapan", 18257, 4, 244},
***************
*** 77,82 ****
--- 77,85 ----
        { "ディズニーCH", "4256.epgdata.ontvjapan", 17970, 4, 256},
  //    { "D-Life", "4258.epgdata.ontvjapan", 18290, 4, 258},
        { "放送大学ラジオ", "4531.epgdata.ontvjapan", 18098, 4, 531},
+       { "BSよしもと", "265ch.epgdata.ontvjapan", 18801, 4, 265},
+       { "BSJapanext", "263ch.epgdata.ontvjapan", 18802, 4, 263},
+       { "BS松竹東急", "260ch.epgdata.ontvjapan", 18803, 4, 260},
  };
  static int bsStaCount = sizeof(bsSta) / sizeof (STATION);
yano@GT110b:~/software/tv/epgdumpr2$
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (200,201,202);";
+----+------+---------+------------------------------+------------------------+-----+------+
| id | type | channel | name                         | channel_disc           | sid | skip |
+----+------+---------+------------------------------+------------------------+-----+------+
| 11 | BS   | 200     | スター・チャンネル1          | 4200.epgdata.ontvjapan | hd  |    0 |
| 12 | BS   | 201     | スター・チャンネル2          | 4201.epgdata.ontvjapan | hd  |    0 |
| 13 | BS   | 202     | スター・チャンネル3          | 4202.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+------------------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "update Recorder_channelTbl set name ='スター・チャンネル' where id = 11;";
yano@GT110b:~$ mysql epg -e "delete from Recorder_channelTbl where id in (12,13);";
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (200,201,202);";
+----+------+---------+-----------------------------+------------------------+-----+------+
| id | type | channel | name                        | channel_disc           | sid | skip |
+----+------+---------+-----------------------------+------------------------+-----+------+
| 11 | BS   | 200     | スター・チャンネル          | 4200.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-----------------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (101,102,241);";
+----+------+---------+-------------------+------------------------+-----+------+
| id | type | channel | name              | channel_disc           | sid | skip |
+----+------+---------+-------------------+------------------------+-----+------+
|  1 | BS   | 101     | NHK BS1           | 4101.epgdata.ontvjapan | hd  |    0 |
|  2 | BS   | 103     | NHK BSプレミアム  | 4103.epgdata.ontvjapan | hd  |    0 |
| 21 | BS   | 241     | BSスカパー!      | 4241.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "update Recorder_channelTbl set name ='NHK BS' where id = 1;";
yano@GT110b:~$ mysql epg -e "delete from Recorder_channelTbl where id in (2, 21);";
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (101, 241);";
+----+------+---------+--------+------------------------+-----+------+
| id | type | channel | name   | channel_disc           | sid | skip |
+----+------+---------+--------+------------------------+-----+------+
|  1 | BS   | 101     | NHK BS | 4101.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+--------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "insert Recorder_channelTbl set type='BS',channel=260,name='BS松竹東急',channel_disc='260ch.epgdata.ontvjapan',sid='hd';"
yano@GT110b:~$ mysql epg -e "insert Recorder_channelTbl set type='BS',channel=263,name='BSJapanext',channel_disc='263ch.epgdata.ontvjapan',sid='hd';"
yano@GT110b:~$ mysql epg -e "insert Recorder_channelTbl set type='BS',channel=265,name='BSよしもと',channel_disc='265ch.epgdata.ontvjapan',sid='hd';"
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (260,263,265);";
+----+------+---------+----------------+-------------------------+-----+------+
| id | type | channel | name           | channel_disc            | sid | skip |
+----+------+---------+----------------+-------------------------+-----+------+
| 93 | BS   | 260     | BS松竹東急     | 260ch.epgdata.ontvjapan | hd  |    0 |
| 94 | BS   | 263     | BSJapanext     | 263ch.epgdata.ontvjapan | hd  |    0 |
| 95 | BS   | 265     | BSよしもと     | 265ch.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+----------------+-------------------------+-----+------+
yano@GT110b:~$
yano@GT110b:/var/www/html/epgrec/settings$ diff -bc satelite_channel.php.20210720 satelite_channel.php
*** satelite_channel.php.20210720       2021-07-20 01:25:33.088203474 +0900
--- satelite_channel.php        2024-06-19 11:28:34.643674508 +0900
***************
*** 1,8 ****
  <?php
  // 全国用BSデジタルチャンネルマップ
  $BS_CHANNEL_MAP = array(
!       "4101.epgdata.ontvjapan"  =>  "101", // NHK BS1
!       "4103.epgdata.ontvjapan"  =>  "103", // NHK BSプレミアム
        "4141.epgdata.ontvjapan"  =>  "141", // BS日テレ
        "4151.epgdata.ontvjapan"  =>  "151", // BS朝日
        "4161.epgdata.ontvjapan"  =>  "161", // BS TBS
--- 1,8 ----
  <?php
  // 全国用BSデジタルチャンネルマップ
  $BS_CHANNEL_MAP = array(
!       "4101.epgdata.ontvjapan"  =>  "101", // NHK BS
! //    "4103.epgdata.ontvjapan"  =>  "103", // NHK BSプレミアム
        "4141.epgdata.ontvjapan"  =>  "141", // BS日テレ
        "4151.epgdata.ontvjapan"  =>  "151", // BS朝日
        "4161.epgdata.ontvjapan"  =>  "161", // BS TBS
***************
*** 14,28 ****
        "4192.epgdata.ontvjapan"  =>  "192", // WOWOWライブ
        "4193.epgdata.ontvjapan"  =>  "193", // WOWOWシネマ
        "4200.epgdata.ontvjapan"  =>  "200", // Star Channel 1
!       "4201.epgdata.ontvjapan"  =>  "201", // Star Channel 2
!       "4202.epgdata.ontvjapan"  =>  "202", // Star Channel 3
        "4231.epgdata.ontvjapan"  =>  "231", // 放送大学1
        "4232.epgdata.ontvjapan"  =>  "232", // 放送大学2
  //    "4233.epgdata.ontvjapan"  =>  "233", // 放送大学3
        "4234.epgdata.ontvjapan"  =>  "234", // グリーンチャンネル
        "4236.epgdata.ontvjapan"  =>  "236", // BSアニマックス
  //    "4238.epgdata.ontvjapan"  =>  "238", // FOX bs238
!       "4241.epgdata.ontvjapan"  =>  "241", // BSスカパー!
        "4242.epgdata.ontvjapan"  =>  "242", // J-SPORTS1
        "4243.epgdata.ontvjapan"  =>  "243", // J-SPORTS2
        "4244.epgdata.ontvjapan"  =>  "244", // J-SPORTS3
--- 14,28 ----
        "4192.epgdata.ontvjapan"  =>  "192", // WOWOWライブ
        "4193.epgdata.ontvjapan"  =>  "193", // WOWOWシネマ
        "4200.epgdata.ontvjapan"  =>  "200", // Star Channel 1
! //    "4201.epgdata.ontvjapan"  =>  "201", // Star Channel 2
! //    "4202.epgdata.ontvjapan"  =>  "202", // Star Channel 3
        "4231.epgdata.ontvjapan"  =>  "231", // 放送大学1
        "4232.epgdata.ontvjapan"  =>  "232", // 放送大学2
  //    "4233.epgdata.ontvjapan"  =>  "233", // 放送大学3
        "4234.epgdata.ontvjapan"  =>  "234", // グリーンチャンネル
        "4236.epgdata.ontvjapan"  =>  "236", // BSアニマックス
  //    "4238.epgdata.ontvjapan"  =>  "238", // FOX bs238
! //    "4241.epgdata.ontvjapan"  =>  "241", // BSスカパー!
        "4242.epgdata.ontvjapan"  =>  "242", // J-SPORTS1
        "4243.epgdata.ontvjapan"  =>  "243", // J-SPORTS2
        "4244.epgdata.ontvjapan"  =>  "244", // J-SPORTS3
***************
*** 33,38 ****
--- 33,41 ----
        "4256.epgdata.ontvjapan"  =>  "256", // Disny Channel
  //    "4258.epgdata.ontvjapan"  =>  "258", // D-Life
      "4531.epgdata.ontvjapan"  =>  "531", // 放送大学ラジオ
+       "260ch.epgdata.ontvjapan"  =>  "260", // BS松竹東急
+       "263ch.epgdata.ontvjapan"  =>  "263", // BSJapanext
+       "265ch.epgdata.ontvjapan"  =>  "265", // BSよしもと
  //    "4910.epgdata.ontvjapan"  =>  "910", // WNI
  //    "4291.epgdata.ontvjapan"  =>  "291", // NHK-G東京
  //    "4292.epgdata.ontvjapan"  =>  "292", // NHK-E東京
yano@GT110b:/var/www/html/epgrec/settings$

参照

Electronic Information Research Laboratory https://www.minagi.jp/

epgrecも更新

3月4月に書いた「スターチャンネル」の再編話。

epgrecのRecorder_channelTblとsatelite_channel.phpも変更。そういえば「BSスカパー!」と「NHK BSプレミアム」も消し忘れてたよ。

yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (200,201,202);";
+----+------+---------+------------------------------+------------------------+-----+------+
| id | type | channel | name                         | channel_disc           | sid | skip |
+----+------+---------+------------------------------+------------------------+-----+------+
| 11 | BS   | 200     | スター・チャンネル1          | 4200.epgdata.ontvjapan | hd  |    0 |
| 12 | BS   | 201     | スター・チャンネル2          | 4201.epgdata.ontvjapan | hd  |    0 |
| 13 | BS   | 202     | スター・チャンネル3          | 4202.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+------------------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "update Recorder_channelTbl set name ='スター・チャンネル' where id = 11;";
yano@GT110b:~$ mysql epg -e "delete from Recorder_channelTbl where id in (12,13);";
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (200,201,202);";
+----+------+---------+-----------------------------+------------------------+-----+------+
| id | type | channel | name                        | channel_disc           | sid | skip |
+----+------+---------+-----------------------------+------------------------+-----+------+
| 11 | BS   | 200     | スター・チャンネル          | 4200.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-----------------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (101,102,241);";
+----+------+---------+-------------------+------------------------+-----+------+
| id | type | channel | name              | channel_disc           | sid | skip |
+----+------+---------+-------------------+------------------------+-----+------+
|  1 | BS   | 101     | NHK BS1           | 4101.epgdata.ontvjapan | hd  |    0 |
|  2 | BS   | 103     | NHK BSプレミアム  | 4103.epgdata.ontvjapan | hd  |    0 |
| 21 | BS   | 241     | BSスカパー!      | 4241.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-------------------+------------------------+-----+------+
yano@GT110b:~$ mysql epg -e "update Recorder_channelTbl set name ='NHK BS' where id = 1;";
yano@GT110b:~$ mysql epg -e "delete from Recorder_channelTbl where id in (2, 21);";
yano@GT110b:~$ mysql epg -e "select * from Recorder_channelTbl where channel in (101, 241);";
+----+------+---------+--------+------------------------+-----+------+
| id | type | channel | name   | channel_disc           | sid | skip |
+----+------+---------+--------+------------------------+-----+------+
|  1 | BS   | 101     | NHK BS | 4101.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+--------+------------------------+-----+------+
yano@GT110b:~$
yano@GT110b:/var/www/html/epgrec/settings$ diff -bc satelite_channel.php.20210720 satelite_channel.php
*** satelite_channel.php.20210720       2021-07-20 01:25:33.088203474 +0900
--- satelite_channel.php        2024-06-19 02:16:24.185056577 +0900
***************
*** 1,8 ****
  <?php
  // 全国用BSデジタルチャンネルマップ
  $BS_CHANNEL_MAP = array(
!       "4101.epgdata.ontvjapan"  =>  "101", // NHK BS1
!       "4103.epgdata.ontvjapan"  =>  "103", // NHK BSプレミアム
        "4141.epgdata.ontvjapan"  =>  "141", // BS日テレ
        "4151.epgdata.ontvjapan"  =>  "151", // BS朝日
        "4161.epgdata.ontvjapan"  =>  "161", // BS TBS
--- 1,8 ----
  <?php
  // 全国用BSデジタルチャンネルマップ
  $BS_CHANNEL_MAP = array(
!       "4101.epgdata.ontvjapan"  =>  "101", // NHK BS
! //    "4103.epgdata.ontvjapan"  =>  "103", // NHK BSプレミアム
        "4141.epgdata.ontvjapan"  =>  "141", // BS日テレ
        "4151.epgdata.ontvjapan"  =>  "151", // BS朝日
        "4161.epgdata.ontvjapan"  =>  "161", // BS TBS
***************
*** 14,28 ****
        "4192.epgdata.ontvjapan"  =>  "192", // WOWOWライブ
        "4193.epgdata.ontvjapan"  =>  "193", // WOWOWシネマ
        "4200.epgdata.ontvjapan"  =>  "200", // Star Channel 1
!       "4201.epgdata.ontvjapan"  =>  "201", // Star Channel 2
!       "4202.epgdata.ontvjapan"  =>  "202", // Star Channel 3
        "4231.epgdata.ontvjapan"  =>  "231", // 放送大学1
        "4232.epgdata.ontvjapan"  =>  "232", // 放送大学2
  //    "4233.epgdata.ontvjapan"  =>  "233", // 放送大学3
        "4234.epgdata.ontvjapan"  =>  "234", // グリーンチャンネル
        "4236.epgdata.ontvjapan"  =>  "236", // BSアニマックス
  //    "4238.epgdata.ontvjapan"  =>  "238", // FOX bs238
!       "4241.epgdata.ontvjapan"  =>  "241", // BSスカパー!
        "4242.epgdata.ontvjapan"  =>  "242", // J-SPORTS1
        "4243.epgdata.ontvjapan"  =>  "243", // J-SPORTS2
        "4244.epgdata.ontvjapan"  =>  "244", // J-SPORTS3
--- 14,28 ----
        "4192.epgdata.ontvjapan"  =>  "192", // WOWOWライブ
        "4193.epgdata.ontvjapan"  =>  "193", // WOWOWシネマ
        "4200.epgdata.ontvjapan"  =>  "200", // Star Channel 1
! //    "4201.epgdata.ontvjapan"  =>  "201", // Star Channel 2
! //    "4202.epgdata.ontvjapan"  =>  "202", // Star Channel 3
        "4231.epgdata.ontvjapan"  =>  "231", // 放送大学1
        "4232.epgdata.ontvjapan"  =>  "232", // 放送大学2
  //    "4233.epgdata.ontvjapan"  =>  "233", // 放送大学3
        "4234.epgdata.ontvjapan"  =>  "234", // グリーンチャンネル
        "4236.epgdata.ontvjapan"  =>  "236", // BSアニマックス
  //    "4238.epgdata.ontvjapan"  =>  "238", // FOX bs238
! //    "4241.epgdata.ontvjapan"  =>  "241", // BSスカパー!
        "4242.epgdata.ontvjapan"  =>  "242", // J-SPORTS1
        "4243.epgdata.ontvjapan"  =>  "243", // J-SPORTS2
        "4244.epgdata.ontvjapan"  =>  "244", // J-SPORTS3
yano@GT110b:/var/www/html/epgrec/settings$

参照

Wikipedia https://ja.wikipedia.org/wiki/

epgrecも更新

3月4月に書いた「スターチャンネル」の再編話。

epgrecのRecorder_channelTblとsatelite_channel.phpも変更。そういえば「BSスカパー!」と「NHK BSプレミアム」も消し忘れてたよ。

Docker version 28.1.1, build 4eba377
Docker Compose version v2.35.1
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B F0 12 00 FF 91 81 B1 7C 45 1F 03 99
        Japanese Chijou Digital B-CAS Card (pay TV)
Running the post_install script:
'./etc/99-px4video.rules' -> '/etc/udev/rules.d/99-px4video.rules'
'./etc/it930x-firmware.bin' -> '/lib/firmware/it930x-firmware.bin'
depmod...
ドライバがインストールされました。enterキーを押すとリブートします。

参照

Simple Life in the digital age - デジタル時代の生活の知恵 https://www.digital-den.jp/simplelife/

Qiita https://ja.wikipedia.org/wiki/

Wikipedia https://ja.wikipedia.org/wiki/

Dlife終了

Dlife、きょう放送終了

BSデジタル放送局「Dlife(ディーライフ)」と「FOXスポーツ&エンターテイメント」が、2020年3月31日24時に閉局する。

という事で、epgrecsatelite_channel.phpepgdump.cのチャンネルテーブルからコメントアウト。

epgrecのRecorder_channelTblはmysqlコマンドでdeleteする。「自動録画キーワード」のチャンネル指定がRecorder_keywordTblのchannel_idで紐付けされているので、これもdeleteしておくこと。

mysql> select * from Recorder_channelTbl where channel in (238,258);
+----+------+---------+-----------+------------------------+-----+------+
| id | type | channel | name      | channel_disc           | sid | skip |
+----+------+---------+-----------+------------------------+-----+------+
| 20 | BS   | 238     | FOX bs238 | 4238.epgdata.ontvjapan | hd  |    0 |
| 30 | BS   | 258     | D-Life    | 4258.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-----------+------------------------+-----+------+
2 rows in set, 108 warnings (0.00 sec)
mysql> **delete** from Recorder_channelTbl where channel in (238,258);
Query OK, 2 rows affected, 108 warnings (0.03 sec)
mysql> select * from Recorder_keywordTbl where channel_id in (30,20);
+-----+-----------+------+------------+-------------+------------+--------------+-----------+---------+
| id  | keyword   | type | channel_id | category_id | use_regexp | autorec_mode | weekofday | prgtime |
+-----+-----------+------+------------+-------------+------------+--------------+-----------+---------+
| 430 | エレナ    | *    |         30 |           0 |          0 |            1 | 7         | 24      |
+-----+-----------+------+------------+-------------+------------+--------------+-----------+---------+
1 row in set (0.00 sec)
mysql> **delete** from Recorder_keywordTbl where channel_id in (30,20);
Query OK, 1 row affected (0.04 sec)
mysql>

参照

J-CAST ニュース https://www.j-cast.com/

BSキャンパス?

2018年10月、放送大学のテレビ放送(BS放送)が大きく変わります!

放送大学より

先日調達した4K REGZA

何気に番組表をチェックしてたところ「BSキャンパスex」と「BSキャンパスon」という見慣れぬチャンネルに気付いた。

どうやら放送大学が再編し、単位認定を前提としない学びの機会を提供する231ch「BSキャンパスex」、単位認定を前提とした232ch「BSキャンパスon」という構成になった模様。

まずは、epgdump.cのチャンネルテーブル部分の文字列を変更してbuild。

epgrec側も1日放置しておけばアップデートされそうな気もするのだが、3月に続いてmysqlコマンドでRecorder_channelTblもアップデート。

mysql> select * from Recorder_channelTbl where name like "放送大学%";
+----+------+---------+-----------------------+------------------------+-----+------+
| id | type | channel | name                  | channel_disc           | sid | skip |
+----+------+---------+-----------------------+------------------------+-----+------+
| 16 | BS   | 231     | 放送大学1             | 4231.epgdata.ontvjapan | hd  |    0 |
| 17 | BS   | 232     | 放送大学2             | 4232.epgdata.ontvjapan | hd  |    0 |
| 31 | BS   | 531     | 放送大学ラジオ        | 4531.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+-----------------------+------------------------+-----+------+
3 rows in set (0.03 sec)
mysql> update Recorder_channelTbl set name = "BSキャンパスex" where type = "BS" and channel = 231;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> update Recorder_channelTbl set name = "BSキャンパスon" where type = "BS" and channel = 232;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> select * from Recorder_channelTbl where name like "BSキャンパス%";
+----+------+---------+---------------------+------------------------+-----+------+
| id | type | channel | name                | channel_disc           | sid | skip |
+----+------+---------+---------------------+------------------------+-----+------+
| 16 | BS   | 231     | BSキャンパスex      | 4231.epgdata.ontvjapan | hd  |    0 |
| 17 | BS   | 232     | BSキャンパスon      | 4232.epgdata.ontvjapan | hd  |    0 |
+----+------+---------+---------------------+------------------------+-----+------+
2 rows in set (0.00 sec)
mysql>

参照

ねとらぼ https://nlab.itmedia.co.jp/nl/

epgrec変更漏れ

2018年8月9月にあったスカパー! (東経110度BS・CSデジタル放送)再編。

TVTestで視聴する分には問題無かったのだが、epgrecで「ディズニージュニア」(ch339)が録画できていない事が判明。

epgrecsatelite_channel.phpepgdump.cのチャンネルテーブルに合わせて書換えて、番組表の取得や録画予約まで問題無くできていたのだが、録画ファイルを再生するとND8の「日テレNEWS24」が録画されているという残念な結果だ。

確かに番組表から詳細予約を試みるとダイアログに表示されるチャンネルは"ND8"になるので、epgrecのチャンネル変更が不十分という事になる。そういえばmysqlにも何か持ってたっけ?と思ってRecorder_channelTblをdumpしてみたところ昔のチャンネル情報を持っていた。

個別にSQL文を叩いて修正するのはトラブルの元なので、テーブル一式をクリア

use epg;
TRUNCATE TABLE `Recorder_channelTbl`;
TRUNCATE TABLE `Recorder_programTbl`;
TRUNCATE TABLE `Recorder_reserveTbl`;

してgetepg.phpで番組表を再取得。Recorder_channelTblのチャンネルもアップデートされて万事OK。

…と思いきや、今度は「TBSチャンネル」が録画されてた。どうやらサービスID(SID)でsplitできてないらしい。

Recorder_channelTblにSIDフィールドはあるものの、内容はすべからく"hd"だ…。そういえば昔、番組表のGUIで地道にSIDを設定したような気がするが、今更そんな手作業やりたくない…

というわけで、epgdump.cのチャンネルテーブルからupdate文を作成し、mysqlコマンドで適用。

use epg;
update Recorder_channelTbl set sid = 296 where channel_disc = "3201.ontvjapan.com" and name = "TBSチャンネル";
update Recorder_channelTbl set sid = 298 where channel_disc = "1092.ontvjapan.com" and name = "テレ朝チャンネル1";
update Recorder_channelTbl set sid = 299 where channel_disc = "1067.ontvjapan.com" and name = "テレ朝チャンネル2";
update Recorder_channelTbl set sid = 339 where channel_disc = "339ch.epgdata.ontvjapan" and name = "ディズニージュニア";
update Recorder_channelTbl set sid = 250 where channel_disc = "1040.ontvjapan.com" and name = "スカイ・A Sports+";
update Recorder_channelTbl set sid = 292 where channel_disc = "1133.ontvjapan.com" and name = "時代劇専門CH";
update Recorder_channelTbl set sid = 301 where channel_disc = "301ch.epgdata.ontvjapan" and name = "エンタメ~テレ";
update Recorder_channelTbl set sid = 323 where channel_disc = "1019.ontvjapan.com" and name = "MTV";
update Recorder_channelTbl set sid = 294 where channel_disc = "294ch.epgdata.ontvjapan" and name = "ホームドラマCH";
update Recorder_channelTbl set sid = 324 where channel_disc = "1024.ontvjapan.com" and name = "ミュージック・エア";
update Recorder_channelTbl set sid = 329 where channel_disc = "329ch.epgdata.ontvjapan" and name = "歌謡ポップス";
update Recorder_channelTbl set sid = 340 where channel_disc = "1062.ontvjapan.com" and name = "ディスカバリー";
update Recorder_channelTbl set sid = 341 where channel_disc = "1193.ontvjapan.com" and name = "アニマルプラネット";
update Recorder_channelTbl set sid = 354 where channel_disc = "1069.ontvjapan.com" and name = "CNNj";
update Recorder_channelTbl set sid = 363 where channel_disc = "363ch.epgdata.ontvjapan" and name = "囲碁・将棋CH";
update Recorder_channelTbl set sid = 331 where channel_disc = "1046.ontvjapan.com" and name = "カートゥーン";
update Recorder_channelTbl set sid = 55 where channel_disc = "1059.ontvjapan.com" and name = "ショップCH";
update Recorder_channelTbl set sid = 218 where channel_disc = "1010.ontvjapan.com" and name = "東映チャンネル";
update Recorder_channelTbl set sid = 318 where channel_disc = "318ch.epgdata.ontvjapan" and name = "Mnet";
update Recorder_channelTbl set sid = 349 where channel_disc = "2002.ontvjapan.com" and name = "日テレNEWS24";
update Recorder_channelTbl set sid = 101 where channel_disc = "101ch.epgdata.ontvjapan" and name = "スカパー!インフォ";
update Recorder_channelTbl set sid = 219 where channel_disc = "1005.ontvjapan.com" and name = "衛星劇場";
update Recorder_channelTbl set sid = 317 where channel_disc = "317ch.epgdata.ontvjapan" and name = "KBS World";
update Recorder_channelTbl set sid = 800 where channel_disc = "800ch.epgdata.ontvjapan" and name = "スカサカ!";
update Recorder_channelTbl set sid = 801 where channel_disc = "801ch.epgdata.ontvjapan" and name = "スカチャン1";
update Recorder_channelTbl set sid = 254 where channel_disc = "1026.ontvjapan.com" and name = "GAORA";
update Recorder_channelTbl set sid = 325 where channel_disc = "1022.ontvjapan.com" and name = "MUSIC ON! TV";
update Recorder_channelTbl set sid = 330 where channel_disc = "1045.ontvjapan.com" and name = "KIDSステーション";
update Recorder_channelTbl set sid = 343 where channel_disc = "1204.ontvjapan.com" and name = "ナショジオCH";
update Recorder_channelTbl set sid = 227 where channel_disc = "1217.ontvjapan.com" and name = "ザ・シネマ";
update Recorder_channelTbl set sid = 293 where channel_disc = "1015.ontvjapan.com" and name = "ファミリー劇場";
update Recorder_channelTbl set sid = 310 where channel_disc = "1006.ontvjapan.com" and name = "スーパー!ドラマTV";
update Recorder_channelTbl set sid = 342 where channel_disc = "1050.ontvjapan.com" and name = "ヒストリーCH";
update Recorder_channelTbl set sid = 290 where channel_disc = "1207.ontvjapan.com" and name = "SKY STAGE";
update Recorder_channelTbl set sid = 311 where channel_disc = "1014.ontvjapan.com" and name = "AXN";
update Recorder_channelTbl set sid = 316 where channel_disc = "316ch.epgdata.ontvjapan" and name = "AXNミステリー";
update Recorder_channelTbl set sid = 321 where channel_disc = "321ch.epgdata.ontvjapan" and name = "スペシャTV+";
update Recorder_channelTbl set sid = 333 where channel_disc = "1201.ontvjapan.com" and name = "AT-X";
update Recorder_channelTbl set sid = 353 where channel_disc = "1070.ontvjapan.com" and name = "BBCワールドNews";
update Recorder_channelTbl set sid = 240 where channel_disc = "1007.ontvjapan.com" and name = "ムービープラス";
update Recorder_channelTbl set sid = 262 where channel_disc = "1027.ontvjapan.com" and name = "ゴルフネット";
update Recorder_channelTbl set sid = 305 where channel_disc = "305ch.epgdata.ontvjapan" and name = "チャンネル銀河";
update Recorder_channelTbl set sid = 314 where channel_disc = "1074.ontvjapan.com" and name = "LaLa";
update Recorder_channelTbl set sid = 307 where channel_disc = "1073.ontvjapan.com" and name = "フジテレビONE";
update Recorder_channelTbl set sid = 308 where channel_disc = "1072.ontvjapan.com" and name = "フジテレビTWO";
update Recorder_channelTbl set sid = 309 where channel_disc = "306ch.epgdata.ontvjapan" and name = "フジテレビNEXT";
update Recorder_channelTbl set sid = 322 where channel_disc = "1018.ontvjapan.com" and name = "スペシャTV";
update Recorder_channelTbl set sid = 161 where channel_disc = "1120.ontvjapan.com" and name = "QVC";
update Recorder_channelTbl set sid = 297 where channel_disc = "297ch.epgdata.ontvjapan" and name = "TBSチャンネル2";
update Recorder_channelTbl set sid = 312 where channel_disc = "1016.ontvjapan.com" and name = "FOX";
update Recorder_channelTbl set sid = 351 where channel_disc = "1076.ontvjapan.com" and name = "TBS NEWS";
update Recorder_channelTbl set sid = 223 where channel_disc = "1008.ontvjapan.com" and name = "チャンネルNECO";
update Recorder_channelTbl set sid = 257 where channel_disc = "1068.ontvjapan.com" and name = "日テレG+";
update Recorder_channelTbl set sid = 295 where channel_disc = "295ch.epgdata.ontvjapan" and name = "MONDO TV";
update Recorder_channelTbl set sid = 300 where channel_disc = "300ch.epgdata.ontvjapan" and name = "日テレプラス";

参照

衛星放送のスカパー! https://www.skyperfectv.co.jp/

スカパー!再編

8月にあったスカパー! (東経110度BS・CSデジタル放送)再編の第2弾。

Ch161:QVC Ch218:東映チャンネル Ch290:TAKARAZUKA SKY STAGE Ch312:FOX Ch297:TBSチャンネル2 Ch322:音楽・ライブ! スペースシャワーTV Ch333:アニメシアターX(AT-X) Ch349:日テレNEWS24 Ch351:TBSニュースバード

のハイビジョン化と、「スカチャン2」(802)が終了

…という事でまたTVTestのチャンネル設定(BonDriver_HTTP.ch2)を変更。

続いて2012年の作業を思い出しつつ、epgrecepgdumpの対応。epgdump.cの当該箇所は以下の通り。

static STATION bsSta[] = {
        { "NHK BS1", "4101.epgdata.ontvjapan", 16625, 4, 101},
        { "NHK BSプレミアム", "4103.epgdata.ontvjapan", 16433, 4, 103},
        { "BS日テレ", "4141.epgdata.ontvjapan", 16592, 4, 141},
        { "BS朝日", "4151.epgdata.ontvjapan", 16400, 4, 151},
        { "BS-TBS", "4161.epgdata.ontvjapan", 16401, 4, 161},
        { "BSテレ東", "4171.epgdata.ontvjapan", 16402, 4, 171},
        { "BSフジ", "4181.epgdata.ontvjapan", 16593, 4, 181},
        { "WOWOWプライム", "4191.epgdata.ontvjapan", 16432, 4, 191},
        { "WOWOWライブ", "4192.epgdata.ontvjapan", 17488, 4, 192},
        { "WOWOWシネマ", "4193.epgdata.ontvjapan", 17489, 4, 193},
        { "スター・チャンネル1", "4200.epgdata.ontvjapan", 16529, 4, 200},
        { "スター・チャンネル2", "4201.epgdata.ontvjapan", 16626, 4, 201},
        { "スター・チャンネル3", "4202.epgdata.ontvjapan", 16626, 4, 202},
        { "BS11", "4211.epgdata.ontvjapan", 16528, 4, 211},
        { "TwellV", "4222.epgdata.ontvjapan", 16530, 4, 222},
        { "放送大学1", "4231.epgdata.ontvjapan", 18098, 4, 231},
        { "放送大学2", "4232.epgdata.ontvjapan", 18098, 4, 232},
        { "グリーンCH", "4234.epgdata.ontvjapan", 18224, 4, 234},
        { "BSアニマックス", "4236.epgdata.ontvjapan", 18130, 4, 236},
        { "FOX bs238", "4238.epgdata.ontvjapan", 18096, 4, 238},
        { "BSスカパー!", "4241.epgdata.ontvjapan", 18097, 4, 241},
        { "J SPORTS 1", "4242.epgdata.ontvjapan", 18225, 4, 242},
        { "J SPORTS 2", "4243.epgdata.ontvjapan", 18226, 4, 243},
        { "J SPORTS 3", "4244.epgdata.ontvjapan", 18257, 4, 244},
        { "J SPORTS 4", "4245.epgdata.ontvjapan", 18258, 4, 245},
        { "BS釣りビジョン", "4251.epgdata.ontvjapan", 18288, 4, 251},
        { "シネフィルWOWOW", "4252.epgdata.ontvjapan", 18256, 4, 252},
        { "日本映画専門CH", "4255.epgdata.ontvjapan", 18289, 4, 255},
        { "ディズニーCH", "4256.epgdata.ontvjapan", 17970, 4, 256},
        { "D-Life", "4258.epgdata.ontvjapan", 18290, 4, 258},
        { "放送大学ラジオ", "4531.epgdata.ontvjapan", 18098, 4, 531},
};
static int bsStaCount = sizeof(bsSta) / sizeof (STATION);
static STATION csSta[] = {
/* ND2 */
        { "TBSチャンネル", "3201.ontvjapan.com", 24608, 6, 296},
        { "テレ朝チャンネル1", "1092.ontvjapan.com", 24608, 6, 298},
        { "テレ朝チャンネル2", "1067.ontvjapan.com", 24608, 6, 299},
        { "ディズニージュニア", "339ch.epgdata.ontvjapan", 24608, 6, 339},
/* ND4 */
        { "スカイ・A Sports+", "1040.ontvjapan.com", 28736, 7, 250},
        { "時代劇専門CH", "1133.ontvjapan.com", 28736, 7, 292},
        { "エンタメ~テレ", "301ch.epgdata.ontvjapan", 28736, 7, 301},
        { "MTV", "1019.ontvjapan.com", 28736, 7, 323},
/* ND6 */
        { "ホームドラマCH", "294ch.epgdata.ontvjapan", 28768, 7, 294},
        { "ミュージック・エア", "1024.ontvjapan.com", 28768, 7, 324},
        { "歌謡ポップス", "329ch.epgdata.ontvjapan", 28768, 7, 329},
        { "ディスカバリー", "1062.ontvjapan.com", 28768, 7, 340},
        { "アニマルプラネット", "1193.ontvjapan.com", 28768, 7, 341},
        { "CNNj", "1069.ontvjapan.com", 28768, 7, 354},
        { "囲碁・将棋CH", "363ch.epgdata.ontvjapan", 28768, 7, 363},
        { "カートゥーン", "1046.ontvjapan.com", 28768, 7, 331},
/* ND8 */
        { "ショップCH", "1059.ontvjapan.com", 24704, 6, 55},
        { "東映チャンネル", "1010.ontvjapan.com", 24704, 6, 218},
        { "Mnet", "318ch.epgdata.ontvjapan", 24704, 6, 318},
        { "日テレNEWS24", "2002.ontvjapan.com", 24704, 6, 349},
/* ND10 */
        { "スカパー!インフォ", "101ch.epgdata.ontvjapan", 24736, 6, 101},
        { "衛星劇場", "1005.ontvjapan.com", 24736, 6, 219},
        { "KBS World", "317ch.epgdata.ontvjapan", 24736, 6, 317},
        { "スカサカ!", "800ch.epgdata.ontvjapan", 24736, 6, 800},
        { "スカチャン1", "801ch.epgdata.ontvjapan", 24736, 6, 801},
/* ND12 */
        { "GAORA", "1026.ontvjapan.com", 28864, 7, 254},
        { "MUSIC ON! TV", "1022.ontvjapan.com", 28864, 7, 325},
        { "KIDSステーション", "1045.ontvjapan.com", 28864, 7, 330},
        { "ナショジオCH", "1204.ontvjapan.com", 28864, 7, 343},
/* ND14 */
        { "ザ・シネマ", "1217.ontvjapan.com", 28896, 7, 227},
        { "ファミリー劇場", "1015.ontvjapan.com", 28896, 7, 293},
        { "スーパー!ドラマTV", "1006.ontvjapan.com", 28896, 7, 310},
        { "ヒストリーCH", "1050.ontvjapan.com", 28896, 7, 342},
/* ND16 */
        { "SKY STAGE", "1207.ontvjapan.com", 28928, 7, 290},
        { "AXN", "1014.ontvjapan.com", 28928, 7, 311},
        { "AXNミステリー", "316ch.epgdata.ontvjapan", 28928, 7, 316},
        { "スペシャTV+", "321ch.epgdata.ontvjapan", 28928, 7, 321},
        { "AT-X", "1201.ontvjapan.com", 28928, 7, 333},
        { "BBCワールドNews", "1070.ontvjapan.com", 28928, 7, 353},
/* ND18 */
        { "ムービープラス", "1007.ontvjapan.com", 28960, 7, 240},
        { "ゴルフネット", "1027.ontvjapan.com", 28960, 7, 262},
        { "チャンネル銀河", "305ch.epgdata.ontvjapan", 28960, 7, 305},
        { "LaLa", "1074.ontvjapan.com", 28960, 7, 314},
/* ND20 */
        { "フジテレビONE", "1073.ontvjapan.com", 28992, 7, 307},
        { "フジテレビTWO", "1072.ontvjapan.com", 28992, 7, 308},
        { "フジテレビNEXT", "306ch.epgdata.ontvjapan", 28992, 7, 309},
        { "スペシャTV", "1018.ontvjapan.com", 28992, 7, 322},
/* ND22 */
        { "QVC", "1120.ontvjapan.com", 29024, 7, 161},
        { "TBSチャンネル2", "297ch.epgdata.ontvjapan", 29024, 7, 297},
        { "FOX", "1016.ontvjapan.com", 29024, 7, 312},
        { "TBS NEWS", "1076.ontvjapan.com", 29024, 7, 351},
/* ND 24*/
        { "チャンネルNECO", "1008.ontvjapan.com", 29056, 7, 223},
        { "日テレG+", "1068.ontvjapan.com", 29056, 7, 257},
        { "MONDO TV", "295ch.epgdata.ontvjapan", 29056, 7, 295},
        { "日テレプラス", "300ch.epgdata.ontvjapan", 29056, 7, 300},
};

ちなみに1068.ontvjapan.comとか300ch.epgdata.ontvjapanというのはepgdumpが番組表を吐き出す際のチャンネル識別子。アナログ放送時代にontvjapanという番組表配信サービスがあったのが由来で、今ではepgdump.cの上記テーブルと/var/www/html/epgrec/settings/satelite_channel.phpの設定が一致していれば問題無い模様。

スカパー!再編

5月8日28日に書いた新4K/8K放送に向けたBS再編はひと段落。

…と思ってたら、8/28(火)にスカパー! (東経110度BS・CSデジタル放送)の再編が実施され、以下のチャンネルがハイビジョン化された。

Ch223:映画・チャンネルNECO Ch227:ザ・シネマ Ch292:時代劇専門チャンネル Ch305:チャンネル銀河 Ch316:AXNミステリー Ch321:100%ヒッツ!スペースシャワーTVプラス Ch323:MTV Ch324:ミュージック・エア Ch331:海外アニメ!カートゥーン ネットワーク Ch339:ディズニージュニア Ch342:ヒストリーチャンネル Ch343ナショナル ジオグラフィック Ch363:囲碁・将棋チャンネル

引き替えに27日に「スカパー!プロモ」(100)と「スカチャン3」(805)が終了した模様。

…という事でTVTestのチャンネル設定(BonDriver_HTTP.ch2)を変更。ミュージック・エアチャンネル番号(サービスID:326→324)変更とか、予想外すぎて面喰らった。

9/26には第2弾で

Ch219:衛星劇場 Ch322:音楽・ライブ! スペースシャワーTV

がハイビジョン化と、「スカチャン2」(802)が終了予定。

あとepgrecepgdumpの対応も必要だな。

参照

衛星放送のスカパー! https://www.skyperfectv.co.jp/

ミュージック・エア https://www.musicair.co.jp/

総務省 http://www.soumu.go.jp/

AV Watch https://av.watch.impress.co.jp/

感想とレビュー.com http://kansou-review.com/

Wikipedia https://ja.wikipedia.org/wiki/

【続】BSトラポン移動

8日に書いた新4K/8K放送に向けたBS再編話。

周波数再編のイメージ

総務省:よくある質問 6章 技術的課題より

8日の「BSジャパン(BS171ch)」「NHK BSプレミアム (BS103ch)」、22日の「ディズニー・チャンネル (BS256ch)」と「BSアニマックス(BS236ch)」に続いて、「スターチャンネル2/3(BS201ch/BS202ch)」のトラポン移動が実施された。

…という事でTVTestのチャンネル設定(BonDriver_HTTP.ch2)やrecpt1の対処を追加。

BSジャパン(BS171ch)BS03/TS1/TSID16433(0x4031)
→BS01/TS2/TSID16402(0x4012) NHK BSプレミアム (BS103ch)BS15/TS1/TSID16626(0x40f2)
→BS03/TS1/TSID16433(0x4031) BSアニマックス (BS236ch)BS07/TS1/TSID18033(0x4671)
→BS13/TS2/TSID18130(0x46d2) ディズニーチャンネル (BS256ch)BS07/TS2/TSID18034(0x4672)
→BS03/TS2/TSID17970(0x4632) スターチャンネル2/3 (BS201ch/BS202ch)BS07/TS0/TSID17520(0x4470)
→BS15/TS1/TSID16626(0x40f2)

参照

総務省 http://www.soumu.go.jp/

空に架かる橋 http://soranikakaruhashi.blog.fc2.com/

stz2012 https://github.com/stz2012

Mercurial repositories index http://hg.honeyplanet.jp/

Wikipedia https://ja.wikipedia.org/wiki/