見出し画像

PT-1 + raspirec で TV 録画サーバーを構築する方法 〜 TV アニメ録画の最安環境(高コスパ)?? 〜


● PT-1 で TV 録画をする環境を構築する

 Ubuntu Studio 24.04.3 LTS の環境で PT-1(PC 用デジタルチューナーボード)+ raspirec(小型・軽量のサーバープログラム)を使用して、録画サーバーを構築する方法について触れてみたいと思います。実のところ、PT-1(対応バス:PCI)の入手ルートは限られていますし、公式ガイドに従って crontab で raspirec を自動起動させても視聴・録画はできません。ホームディレクトリにスクリプト(.sh)を作成して crontab から呼び出したり、ユニットファイルを作成して systemd に登録したり、各種の方法を試しましたが、この問題の解決には至っていません。

 思案に暮れましたが、24 時間稼働の録画サーバーを再起動する機会は限られており、OS の起動時に手動で raspirec.rb スクリプトを実行すれば、確実に raspirec は起動します。PT-1(対応バス:PCI)以外の PC 用デジタルチューナーボードを使用することも視野に入れて、参考までにインストール方法を紹介してみようと思います。大変申し訳ございませんが、この記事を参考にしても、必ず動作するという保証はありません。全て自己責任であることを十分に理解し、留意して進めてくださるよう、お願い申し上げます。

 raspirec は処理能力が低い PC でも稼働するように最適化されています。Raspberry Piラズベリーパイ)のような SBC(シングルボードコンピューター)でも動作しますが、現時点でも秋葉原の中古 PC 販売店でかろうじて購入可能な Ivy Bridge(第3世代 Core プロセッサー・ファミリー)搭載モデルで稼働させることを想定しています。

 PCI バスを搭載した PC は Ivy Bridge(第 3 世代 Core プロセッサー・ファミリー)搭載モデルくらいが最後の世代になります。インターフェースボード(変換基盤)で PT-1(対応バス:PCI)を PCI Express(PCIe)に対応させる方法もありますが、素直に PCI バスを搭載したマザーボードを使用する方が無用なトラブルを回避できます。


 ※ PCI インターフェース(PCI バス:32bit PCI )をネイティブサポート
   する CPU は Intel(インテル)では 第6世代 Core(Skylake)+ 100 シ
   リーズチップセット(H110, B150, H170, Z170)が最終モデル。PCI ス
   ロット自体は PCIe - PCI ブリッジチップを搭載したマザーボード
   (Intel Z370 / Z390 など)に搭載された希少例はあるが、CPU / チップ
   セットのネイティヴ機能ではない

 ※ Intel Z390(インテル Z390 チップセット):第8世代(Coffee
   Lake)、第9世代(Coffee Lake Refresh)のインテル Core プロセッ
   サー(CPU コア)に対応したハイエンドチップセット

 ※ インターフェースボード(変換基盤)は PCIe - PCI ブリッジチップ
   (PCIe - PCI 変換チップ)を搭載しており、PCI[パラレル転送]=>
   PCI Express x1(PCIe x1)[シリアル転送]の変換を可能にする


 PT-1(対応バス:PCI)は「じゃんぱら」などの店舗で実物を確認して購入することをお薦めします。実際には「現状渡し」相当の個体も含まれているからです。Yahoo! オークション(ヤフオク)、メルカリなどで購入するとしても、中古市場の相場を知ることができますし、実物の状態を見て判断する方が確実です。PLEX(プレクス)の現行製品(PX-W3PE5 など)の市場価格はそれなりですし、推奨動作環境は Intel Core i7 以上で Linux はサポート対象外です。raspirec が動作する保証もありません。

 PT-1(対応バス:PCI)はフレーム落ちが発生しないハードウェアです。また、汎用性が高い PT-3(対応バス:PCI Express x1)はプレミア価格で取引されています。raspirec は PT-1、PT-2、PT-3(アースソフト)、PX-W3U4、PX-W3PE4、PX-Q3U4、PX-Q3PE4(PLEX)などの PC 用 デジタルチューナーボードを必要としますが、ドライバソフトウェアは Ubuntu Studio 24.04.3 LTS のカーネルにバンドルされていますので、それを利用します。

 PT-1(対応バス:PCI)は[BS / CS 用アンテナ端子 x 2]、[地デジ用アンテナ端子 x 2] という仕様ですから、[2分配器 + アンテナ分波器 x 2] + アンテナケーブル(x 6) が必要になります。アンテナダブル分波器[2分配器 + 2分波器]であれば、アンテナケーブルは5本で済みますが、分配器、分波器には、ケーブル一体型とケーブル分離型がありますので、どちらを選択するかによって、必要なアンテナケーブルの本数も変わります。地味なところで、F 型コネクタ(F 型接栓)を締めるスパナ(11 mm)も必要になりますが、ワンタッチで差し込める端子を採用している製品もあります。

 この他に IC カードリーダー + B-CAS(ビーキャス)カードが必要になります。B-CAS(ビーキャス)カードは SONY PlayStation 3(PS3)用の周辺機器 torne(トルネ)に添付されたものを流用しましたが、TV 用の B-CAS(ビーキャス)カードを再発行してもらう方法(有料)もあります。

 IC カードリーダーは NTT ドコモビジネスの IC カードリーダーライタ SCR3310 V2.0 のようなブランド品でなくても動作します。ちなみに今回使用した IC カードリーダーは秋葉原で最安値で販売されていたノーブランド品です。lsusb コマンドを実行するとハードウェア ID は分かりますが…


$ lsusb
     ︙
Bus 003 Device 002: ID 058f:9540 Alcor Micro Corp. AU9540 Smartcard Reader


 どうやら、台湾のファブレス半導体設計会社 Alcor Micro(アルコー・マイクロ)社の製品「 AU9540 Smartcard reader 」で「 Designed for Windows 7/8/10, Mac OS X, Linux Capable 」と記されたシールが添付されています。汎用品ですが、ISO7816、EMV、USB CCID 標準に準拠しており、マイナンバーカード(JPKI)、確定申告(e-Tax)、ATM、POS 端末などで利用される IC カードの読み取りに対応しています。

 テレビ、ブルーレイレコーダーは EPG(電子番組表)を主に放送波(電波)から取得しますが、インターネット経由で取得することも一般的です。フレッツ・テレビ(NTT 広域サービス:地上波・BS・CS 放送)では、地上デジタル / BSデジタル / CSデジタル(スカパー!)の信号(RF 信号)を変換・加工しないで送信する RF(パススルー)方式を採用しており、テレビ、ブルーレイレコーダーは光回線を経由して、放送波を受信する仕組みになっています。

 これに対して、ひかり TV(映像配信サービス)では、インターネットの IP 網を利用して映像を配信しており、専用の STB(セットトップボックス:トリプルチューナー KS-6100 など)または、ひかりテレビ対応 TV が必要になります。STB(セットトップボックス)と TV(テレビ)を HDMI ケーブルで接続して、自宅の LAN ポート(もしくは ひかり電話ルーター)と STB(セットトップボックス:トリプルチューナー KS-6100 など)の LAN ポートを LAN ケーブルで接続します。EPG(電子番組表)データはネットワークを経由してダウンロードする仕組みになっています。

 raspirec は 放送波(TS ストリーム)に含まれる EPG(電子番組表)データを PC 用デジタルチューナーボード(recpt1 / recdvb)から取得・解析します。録画した TS ファイル、もしくは EPG(電子番組表)データの取得プロセス(事前スキャン)を通じて、PC 用デジタルチューナーボード(recpt1 / recdvb)から番組情報を抽出するため、インターネット上の Web サービスなどから EPG(電子番組表)データを取得することはありません。

 したがって、チューナーが物理的に接続されており、テレビ放送波を正常に受信できることが前提条件になります。つまり、アンテナで放送の搬送波(キャリア)を受信するか、CATV(ケーブルテレビ)もしくはフレッツ・テレビ(NTT 広域サービス:地上波・BS・CS 放送)などのサービスを利用して、光回線を通して放送信号を受信する環境が必要になります。

 各種ドライバーソフトウェア、アプリケーションのインストールはターミナル(端末)で実行しますから、CUI(Character User Interface)でコマンドを入力することになります。マウスでクリックすれば完了というわけにはいきません。

 コマンド(文字列)の先頭の1〜2文字を入力して[ TAB ]キーを押すと補完されますので、効率的に入力してください。入力が面倒であれば、このページに記述されたコマンドラインをマウスの[ 左プレス ]で範囲選択して[ ホイールボタン ]でターミナル(端末)にペーストすることも可能です(先頭の $ やスペースまでコピーしないように)。

 Ubuntu Studio の場合は Konsole(標準ターミナル)[ Ctrl + Alt + T ]を起動して操作します。コマンドの入力後に[ Enter ]キーを押すことを忘れないでください。


  ◎ GitHub - kaikoma-soft / raspirec
  ◎ インストール方法(公式


画像
【THE IDOLM@STER SHINYCOLORS】白瀬咲耶

THE IDOLM@STER SHINYCOLORS
L'Antica(アンティーカ)』所属

白瀬咲耶(しらせ さくや) CV:八巻 アンナ(やまき あんな)
… 王子様系女子アイドル


○ IC カードリーダー用ドライバーソフトウェアのインストール

 $ sudo apt -y install pcscd pcsc-tools libpcsclite-dev
 $ pcsc_scan

 最後に「 Japanese Chijou Digital B-CAS Card (pay TV) 」と表示されたら正常に動作しています。[ Ctrl + C ]で終了。


 ※ _(アンダースコア)は[ Shift ]+[ \(バックスラッシュ)]で入力できる。[ \(バックスラッシュ)]は 右側[ Shift キー ]の隣にある

 ※ PC に USB 接続した IC カードリーダー(動作確認済)に B-CAS カードをセットしてテストする。IC カードリーダーはノーブランド品。PlayStation 3 のチューナーセット torne(トルネ)に添付された B-CAS(ビーキャス)カードを流用した

 ※ B-CAS カード再発行(1枚 2,310円:送料・消費税込)


○ B25 ライブラリーのインストール

$ sudo apt install git
$ git clone https://github.com/stz2012/libarib25.git
$ cd libarib25/
$ sudo apt install build-essential cmake pkg-config
$ cmake .   ※ cmake の後にスペースを入れて .(ピリオド)を入力する
$ make
$ sudo make install


○ recdvb のインストール

$ sudo apt install autoconf automake
$ git clone https://github.com/kaikoma-soft/recdvb.git
$ cd recdvb
$ ./autogen.sh
$ ./configure --enable-b25
$ make
$ sudo make install


 ※ 2行目の git clone コマンドを実行するとユーザー名/パスワードを要求されることがある。ウェブサイトの仕様変更が根本原因のようだが、https通信が指定されていると発生するようだ。この問題の回避策は不明確であるため、GitHub から recdvb-master.zip を直接ダウンロードして、予め作成しておいた /home/<user>/recdvd ディレクトリ上で伸張して make すれば対処できる。本家の dogeel 版ではなく kaikoma-soft 版(recpt1 互換の recdvb)を選択すること


 録画テスト(10秒)

$ recdvb --b25 --strip 101 10 testNHK-BS.ts

$ recdvb --b25 --dev 00: 101 10 testNHK-BS.ts
  ※ NHK-BS(101ch:東京スカイツリー)

$ recdvb --b25 --dev 01: 27 10 testNHK-G.ts
  ※ NHK 総合(27ch:東京スカイツリー)

$ recdvb --b25 --dev 02: 101 10 testNHK-BS.ts
  ※ NHK-BS(101ch:東京スカイツリー)

$ recdvb --b25 --dev 03: 27 10 testNHK-G.ts
  ※ NHK 総合(27ch:東京スカイツリー)


 録画が終了したら動画再生ソフト(mpv、SMPlayer など)で再生して確認します(録画した .ts ファイルはホームディレクトリに保存される)。録画ができない時はアンテナケーブルの接続を再確認するなどして、初歩的ミスがないか精査してください。


PT-1 のアンテナ端子配置

  S1:UHF(BS / CS)  [ブラケットのネジ止め側]
  T1:VHF(地上)
  S2:UHF(BS / CS)
  T2:VHF(地上)   [マザーボード側]

PT-2 のアンテナ端子配置

  S1:UHF(BS / CS) [ブラケットのネジ止め側]
  T1:VHF(地上)
  S2:UHF(BS / CS)
  T2:VHF(地上)   [マザーボード側]


PT-1 のデバイスファイル

0: /dev/dvb/adapter0 ("Toshiba TC90522 ISDB-S module", ISDB-S)
1: /dev/dvb/adapter1 ("Toshiba TC90522 ISDB-T module", ISDB-T) systemctl
2: /dev/dvb/adapter2 ("Toshiba TC90522 ISDB-S module", ISDB-S)
3: /dev/dvb/adapter3 ("Toshiba TC90522 ISDB-T module", ISDB-T) systemctl


● recdvb + 動画再生プレーヤーで TV 放送をストリーミング再生する

 (1)$ recdvb --b25 --strip --http 8888 - /dev/null

     ※ 上記のコマンドラインを最初に実行する
     ※ recdvb は[ ctrl + c ]で終了する

 (2)例えば SMPlayer(動画再生プレーヤー)を起動して「開く」=>
    「URL」で以下のように入力して、[ OK ]ボタンをクリックする

      URL(U):[http://127.0.0.1:8888/101] ※ NHK BS(101)

    ※ 末尾はチャンネル番号、デインタレースモードは[自動]


○ raspirec のインストール

必要なパッケージを apt コマンドでインストールする

$ sudo apt install dkms linux-headers-`uname -r`
$ sudo apt install sqlite3 ruby ruby-sqlite3 ruby-sys-filesystem ruby-net-ssh ruby-sinatra ruby-slim ruby-sass


git      ※ B25 ライブラリーの項目でインストール済
autoconf    ※ recdvb の項目でインストール済
dkms      ※ この項目の冒頭でインストール済
cmake      ※ B25 ライブラリーの項目でインストール済
sqlite3
ruby
ruby-sqlite3
ruby-sys-filesystem
ruby-net-ssh
ruby-sinatra
ruby-slim
ruby-sass


(1)recpt1 のインストール

$ git clone https://github.com/stz2012/recpt1.git
$ cd recpt1/recpt1
$ sh autogen.sh
$ ./configure
$ make
$ sudo make install


(2)epgdump のインストール

$ git clone https://github.com/Piro77/epgdump
$ cd epgdump
$ cmake .  ※ cmake の後にスペースを入れて .(ピリオド)を入力する
$ make
$ sudo make install

 ※ https://github.com/Piro77/epgdump が指定されているので選択する


(3)raspirec 本体のインストール

インストールするディレクトリ( /home/<user>/ )に移動して

 ※ Konsole(標準ターミナル)[ Ctrl + Alt + T ]を起動すれば
   自動的にホームディレクトリ( /home/<user>/ )になるし、
   $ cd [ Enter ]でも同じ結果になる


$ git clone https://github.com/kaikoma-soft/raspirec.git
$ cd raspirec

$ mkdir -p ~/.config/raspirec
$ cp config.rb.sample ~/.config/raspirec/config.rb


 以下に示すようにエディタ(KWrite など)で ~/.config/raspirec/config.rb を修正する(参考例) ※ ~(チルダ)はホームディレクトリの意

#
# ディレクトリ、ファイル関係 TSファイル scp 転送
#
Recpt1_cmd = "/usr/local/bin/recdvb"   ※ recpt1 => recdvb に変更する
Recpt1_opt = %w(--B25 )        ※ B25 によるデコードを指定する

  ※ recpt1 は使用せず recdvb を使用する
  ※ カーネルにバンドルされた PT-1 のドライバーソフトを使用する

#
# EPG 関係
#
GR_EPG_channel = %w( 30 27 26 25 24 22 23 21 20 17 ) # 地デジ EPG 受信局(スカイツリー)   ※ ここでは 16 を削除して 30, 20, 17 を追記している
BS_EPG_channel = %w( BS15_0 BS9_0 )        # BS EPG 受信局
CS_EPG_channel = %w( CS4 CS2 )            # CS EPG 受信局
GR_EpgRsvTime = 50                  # EPG 受信時間 (秒)
BS_EpgRsvTime = 180                 # EPG 受信時間 (秒)
CS_EpgRsvTime = 240                 # EPG 受信時間 (秒)
EPGperiod = 8                     # EPG 取得周期 (H)
EpgBanTime = [ 2, 3, 4, 5 ]           # EPG 禁止時間帯 (24H制)
EPG_tuner_limit = false         # EPG 取得時のチューナー数制限


  ※ フレッツ・テレビ(NTT 広域サービス)では 16ch(TOKYO MX)
    の EPG データが取得できないため 20ch に変更する
  ※ 30ch(千葉テレビ放送)
  ※ 20ch(TOKYO MX:八王子)は中継局の物理チャンネル
  ※ 17ch(スカパーナビ)
  ※ 必要に応じて独立放送局(ローカル局)の物理チャンネルを追記する


   ◎ 地上デジタル放送[ チャンネル表

   < 首都圏の主要ローカル局 物理チャンネル >

    16ch:MX テレビ(TOKYO MX)   [東京スカイツリー]
    18ch:テレビ神奈川(tvk)     [横浜・鶴見]
    19ch:群馬テレビ(群馬テレビ)   [前橋・榛名山]
    29ch:とちぎテレビ(とちテレ)   [宇都宮・羽黒山]
    30ch:千葉テレビ放送(チバテレ)  [船橋・三山]
    32ch:テレビ埼玉(テレ玉)     [浦和・平野原]


   < 関西の主要ローカル局 物理チャンネル(生駒山 親局)>

    13ch:NHK 教育(Eテレ
    14ch:読売テレビ(yTV
    15ch:朝日放送(ABC
    16ch:毎日放送(MBS
    17ch:関西テレビ(KTV
    18ch:テレビ大阪(TVO
    24ch:NHK 総合(大阪


  < 近畿圏の独立局・その他の物理チャンネル >

    20ch:テレビ和歌山(WTV)  [和歌山親局]
    20ch:びわ湖放送(BBC)    [大津親局]
    23ch:京都放送(KBS 京都)  [比叡山親局]
    26ch:サンテレビ(SUN)    [摩耶山親局]
    29ch:奈良テレビ(TVN)    [生駒山]


 地上デジタル放送のチャンネル割当は、都道府県や中継局ごとに 物理チャンネル(13〜52ch)が設定されており、リモコン番号(論理チャンネル)とは一致しないため、中継局のチャンネルを調べる必要があります。東京スカイツリーからの主要物理チャンネルは以下の通りです。


  < 関東地方(1都3県)の主要物理チャンネル(東京スカイツリー)>

    16ch:MX テレビ(TOKYO MX
    21ch:フジテレビジョン(フジテレビ
    22ch:東京放送(TBS テレビ
    23ch:テレビ東京(テレ東
    24ch:テレビ朝日(tv asahi
    25ch:日本テレビ(日テレ
    26ch:NHK 教育(東京
    27ch:NHK 総合(東京
    28ch:放送大学(OUJ

    18ch:テレビ神奈川(tvk
    30ch:千葉テレビ放送(チバテレ
    32ch:テレビ埼玉(テレ玉


  < 関西地方の主要物理チャンネル(大阪・生駒山)>

    13ch:NHK 教育(Eテレ
    15ch:読売テレビ(ytv
    16ch:毎日放送(MBS
    17ch:朝日放送テレビ(ABC
    18ch:テレビ大阪(TVO
    19ch:関西テレビ(KTV
    24ch:NHK 総合(大阪


 BS デジタル放送はリモコン番号(3 桁の論理チャンネル)で視聴可能です。以下に主要なチャンネルを記しておきます。

    101ch:NHK BS
    102ch:NHK BS
    141ch:BS 日テレ
    142ch:BS 日テレ(142)
    151ch:BS 朝日1
    161ch:BS-TBS
    162ch:BS-TBS(162)
    171ch:BS テレ東
    172ch:BS テレ東2
    181ch:BS フジ・181
    182ch:BS フジ・182
    191ch:WOWOW プライム
    192ch:WOWOW ライブ
    193ch:WOWOW シネマ
    200ch:BS10
    201ch:BS10 プレミアム
    211ch:BS11
    222ch:BS12 トゥエルビ
    231ch:放送大学テレビ
    232ch:放送大学テレビ(232)
    234ch:グリーンチャンネル
    236ch:BSアニマックス
    242ch:J SPORTS 1
    243ch:J SPORTS 2
    244ch:J SPORTS 3
    245ch:J SPORTS 4
    251ch:BS 釣りビジョン
    252ch:WOWOW プラス
    255ch:日本映画専門 ch
    256ch:ディズニー ch
    260ch:JCOM BS
    265ch:BS よしもと
    531ch:放送大学ラジオ


 raspirec(小型・軽量のサーバープログラム)はオートスキャン機能が省略されていますので、地域別(中継局)のチャンネル割当を確認してから、recdvb + 動画再生プレーヤーで TV 放送をストリーミング再生して、受信可能なチャンネルが否かを確認します。上記の物理チャンネルでは受信できない場合もありますので、[地上デジタル放送 チャンネル表]などを参照して、その他の中継局を探します。

 ただし、raspirec と recdvb を同時に起動すると競合して、正常に録画できないので注意してください。recdvb + 動画再生プレーヤーで TV 放送をストリーミング再生する場合は raspirec を停止します。recdvb を停止できない時は OS を再起動してリセットしてください。


    raspirec.log ファイルを作成する

  $ mkdir ~/raspirec_data/log/     ※ ディレクトリを作成する
  $ cd ~/raspirec_data/log/
  $ touch raspirec.log        ※ ログファイルを作成する

   ※ ~/raspirec_data/log/raspirec.log の作成は raspirec 起動の必要条件


(4)動作確認

  $ ~/raspirec/ruby raspirec.rb       ※ raspirec の起動
  $ ~/raspirec/ruby raspirec.rb --kill     ※ raspirec の終了

   ※ 絶対パスで起動しているが、/home/<user>/raspirec ディレクトリ
     に移動してから`ruby raspirec.rb`を実行すればよい。~(チルダ)
     はホームディレクトリを意味する

  $ cd ~/raspirec  ※ /home/<user>/raspirec ディレクトリに移動
  $ ruby raspirec.rb           ※ raspirec の起動
  $ ruby raspirec.rb --kill         ※ raspirec の終了


 ローカルホスト(raspirec をインストールした PC)で Web ブラウザを起動して 4567 ポートにアクセスします。raspirec の UI が表示されたらブックマークに登録して URL を入力する手間を省きます。番組表[BS]、番組表[地デジ]のようにブックマークを作成しておくと便利です。


  `http://localhost:4567/` もしくは `http://127.0.0.1:4567/` を指定する


 初期設定に不備があると番組表は表示されず、視聴・録画はできません。raspirec の起動後1〜2 分程度で EPG(電子番組表)が表示されない場合、メニューの[その他]=>[ログ]=>[DEBUG]で EPG データ取得のエラー表示を確認してから raspirec を停止して初期設定(~/.config/raspirec/config.rb)を点検します。とりわけ、以下の項目が設定されていないと、EPG(電子番組表)は表示されず、B25 デコード処理も実施されないため、録画した .ts ファイルの映像を観ることはできません。


  Recpt1_cmd = "/usr/local/bin/recdvb"  ※ recpt1 => recdvb に変更済み
  Recpt1_opt = %w(--B25)        ※ B-CAS によるデコード指定


   ※ 録画ファイルは「 /home/<user>/raspirec_data/TS/ 」に保存される


 (5)mpv(メディアプレーヤー)のインストール

  $ sudo apt install mpv    ※ raspirec の[視聴]機能を有効にする


 (6)SMPlayer(メディアプレーヤー)のインストール

     SMPlayer は録画した .ts ファイルの再生に使用します

  $ sudo add-apt-repository ppa:rvm/smplayer
  $ sudo apt-get update
  $ sudo apt-get install smplayer smplayer-themes smplayer-skins


  初期設定

  ◎ インターフェースの設定(参考例)

   [オプション (T)]=>[環境設定 (R)]=>[インターフェース]
    =>[インターフェース (I)]タブ

      GUI (G)   [ スキン対応 GUI ]
      スキン (K):  [ Modern ]
      スタイル (Y): [ Fusion ]

   ※ SMPlayer の UI(ユーザーインターフェース)はミニマルだが、
     [スキン対応 GUI]を選択して外観を変更することもできる


  ◎ ビデオ関連の設定

   (1)[オプション (T)]=>[環境設定 (R)]=>[全般]=>
      [全般 (G)]タブ

       マルチメディアエンジン(E): その他[/usr/bin/mpv]

   (2)[オプション (T)]=>[環境設定 (R)]=>[全般]=>
      [ビデオ (V)]タブ

       出力ドライバー (T):[X11         ]

   ※ 出力ドライバー (T): ユーザー定義[  ]で詳細に設定する方法
     が一般的だが、[X11]は確実に動作する汎用性の高さと高画質を
     両立できる選択肢。VDPAU、VA-API などの GPU(グラフィック
     ボード)の動画再生支援機能よりも安定した動作が期待できる

   (3)[オプション (T)]=>[環境設定 (R)]=>[MPlayer/mpv]タブ

       MPlayer/mpv のオプション
        オプション (O):[--include=~/.config/mpv/mpv.conf  ]

   ※ [ 視聴 ]時に Lip Sync(リップシンク)が一致しない=口の動き
     (Lip)と音声(Sync)が合わない場合は PC の処理能力を超えて
     いるので、MPlayer/mpv のオプションは空欄にする(高画質設定は
     しない)。録画した .ts ファイルを SMPlayer で再生するだけであ
     れば、遅延は発生しないだろう


  ◎ オーディオ関連の設定

   (1)[オプション (T)]=>[環境設定 (R)]=>[全般]=>
      [オーディオ (U)]タブ => 出力ドライバー (T):[pipewire ]

       ※ pulse(Pulse Audio)と pipewire(PipeWire:OS 標準)
         の音質は微妙に異なるため、適宜切り替えて使用する選択
         肢もある。PipeWire は Pulse Audio と JACK の機能を統
         合して、置き換える目的で開発されている。主要な Linux
         ディストリビューション(Fedora、Ubuntu、Arch Linux
         など)で採用が進んでおり、デフォルトのサウンドサー
         バーになっている


   (2)[オプション (T)]=>[環境設定 (R)]=>[全般]=>

      [オーディオ (U)]=> 音量 [✓]グローバル音量 (B)


  ◎ mpv の初期設定ファイルを作成する

  $ vi ~/.config/mpv/mpv.conf

     ※ ~(チルダ)はホームディレクトリを意味する
       /home/<user>/.config/mpv/mpv.conf と同義

     ※ vi(スクリーンエディタ)の使用例だが、使いやすいエディタ
       (nano, KWrite など)で作成すればよい


   以下の内容を mpv.conf に記述する(6 行)

     profile=gpu-hq
     scale=ewa_lanczossharp
     cscale=ewa_lanczossharp
     video-output-levels=full
     interpolation
     tscale=oversample


画像
raspirec の EPG(電子番組表)


  EPG(電子番組表)は[ Ctrl + ホイール ]で表示サイズを拡大・縮小できます。ホイールを垂直スクロール(前後に回転させる)してみてください。また、[ Shift + ホイール ]で EPG(電子番組表)の表示を左右に動かすことができます。EPG(電子番組表)の画面表示は[ F5 ]キーを押すと更新されます。適時[ F5 ]キーを押して情報を更新してください。また、[ 朝 ]・[ 昼 ]・[ 夜 ]・[ 深夜 ]・[ -3H ]・[ +3H ]ボタンをクリックすると時間帯の変更ができます。その右側に表示される[1][2][3]…と展開するボタンをクリックすると EPG(電子番組表)の右側に隠れたチャンネルが表示されます。

 放送プログラム(番組)を視聴・録画する場合は、マウスで「テレビ放送枠」をクリックすると[視聴]・[録画予約]・[自動予約]ボタンが表示されますのでクリックで設定します。録画予約した放送プログラムは[赤枠]で表示され、録画が開始されると[破線枠]になります。

 PT-1(対応バス:PCI)で同時録画できるのは4番組(BS/CS ×2、地デジ ×2)です。BS/CS 放送、地上デジタル放送のいずれも「表番組 + 裏番組(×1)」の録画が上限になります。これはチューナー数に起因する制限です。そのため、裏番組の録画を2つ以上予約すると1つの番組は無効となり[破線枠]で表示されます。

 録画予約をする際には、2つ以上の表番組(録画予約)と裏番組(録画予約)の放送枠が重ならないように予約してください。2つ以上の表番組(録画予約)と時間帯が重なる裏番組(録画予約)があるとチューナーの切換が上手く行かず、全く録画できなかったり、番組の冒頭が数秒~数十秒切れるなど、録画に失敗する可能性が高くなります(実際に試してみることをお薦めします)。これは2つ以上の裏番組(録画予約)と表番組(録画予約)の組合せでも同じです。

 また、異なるチャンネル間で録画予約した2つの番組の録画終了と録画開始が同時刻の場合、デバイスの動作切り替え処理(チューナーの解放と再割り当て)により、2つ目の番組の冒頭が数秒~数十秒切れる(数秒の空白が生じる)現象が起きます。これは HDD テレビ録画やブルーレイレコーダーの「2 番組同時録画」対応モデルでも発生する仕様上の限界で raspirec では予約録画の際、オプション設定で


  [✓]チューナーが競合した場合に録画時間の短縮を許可する


 という選択肢が提示されますが、✓(チェック)を外して録画するとこの問題を回避できる場合があります(実際に試してみることをお薦めします)。

 それから、録画中に予約を[削除]しても、放送枠の終了時間まで録画は継続します。/home/<user>/raspirec_data/TS/ 以下に保存された録画ファイル(.ts ファイル)の容量は増え続けますし、連続する2つ目の予約録画に失敗する原因にもなりますから、適時削除してください。

 HDD テレビ録画と同様に、録画中に後追い再生することも可能です。TS ファイル(MPEG-2)に対応するメディアプレーヤーであれば、録画中の TS ファイルを再生することができます。.ts ファイルを右クリックして、[アプリケーションで開く]=>[ SMPlayer ]を選択してみてください。

 EPG(電子番組表)のメニューで[予約]=>[予約済み一覧]を見ると録画の成否が分かります。[その他]=>[ログ]と合わせて動作状態を確認してください。

 録画した .ts ファイルは /home/<user>/raspirec_data/TS/ 以下に保存されます。30 分枠のテレビ番組を録画した .ts ファイルのサイズは BS(フルHD:2K)で 4 GB 程度、4K・8K 放送導入によるチャンネル枠の最適化(BS 帯域再編)後、地上デジタル放送(地デジ)相当にダウングレードされた BS 放送で 1.9 GB 〜 3 GB 程度、地上デジタル放送(地デジ)では 2.1 GB 〜 3 GB 程度になります。

 現在、BS11(イレブン)、WOWOW(ワウワウ)などは HD モード(1,920 × 1,080:1080i)で放送していますが、新 4K / 8K 放送に向けた BS 帯域再編(帯域削減)後、NHK BS 放送(BS1、BSプレミアムを統合した新 BS)は HD モード(1,440 × 1,080:1080i)で放送しています。旧 BS プレミアム(1,920 × 1,080:1080i)の解像度は 新 BS(1,440 × 1,080:1080i)に統合されてダウングレードしています。その他の BS デジタル放送局も HD モード(1,440 × 1,080:1080i)で放送しています。

 BS デジタル放送の各チャンネル(物理チャンネル)は、約 34.5 MHz の帯域幅を共有していますが、VBR(可変ビットレート)で放送されており、帯域(ビットレート)は番組ごとに変動します。データ量が多い高画質のハイビジョン番組には、高いビットレートで広い帯域を割り当て、データ量が少ない低画質の番組には、低いビットレートで狭い帯域を割り当てるのです。そのため、番組ごとに録画した .ts ファイルのサイズも変動します。

 NHK と民放キー局 5 社(日本テレビTBSフジテレビテレビ朝日テレビ東京)は BS4K(高画質放送)を継続していますが、高画質放送ビジネスは赤字が続き、先行きが不安視されています。AbemaTV も赤字ですが、将来性を考慮すると BS4K(高画質放送)は比較にならない窮状にあると言えます。

 BS4K(高画質放送)は ショップチャンネルQVC ジャパンNHK 紅白歌合戦 以外にコンテンツがありません。放送プログラム(番組)の多くはサイマル放送で BS デジタル放送でも視聴できますし、放送局は BS デジタル放送用のコンテンツを 4K にアップコンバートして放送しています。しかし、BS デジタル放送の信号も 4K テレビで視聴すれば、テレビ側で 4K 相当にアップコンバートされるため、実質的に画質は変わりません。


◎ 録画の終了後、PC を自動的にシャットダウンさせる

 Ubuntu Studio 24.04.3 LTS をインストールした PC を普段使いにしている場合、バックグラウンドで録画は実行されますが、フォアグラウンドの作業が終了した時点で録画予約のスケジュールが消化されていなかったり、録画中であることも想定されます。そのようなケースでも shutdown コマンドで自動的に PC の電源を落とすことができます。

 録画予約の設定後、Web ブラウザを閉じてもバックグラウンドで録画は実行されます。録画予約した最後の放送枠(番組)の終了時間を確認したら、Konsole(ターミナル)を起動して以下のように設定してください。


 放送枠(番組)が[ 01:00 〜 01:30 ]の場合

 (1)[Ctrl + Alt + T]キーで Konsole(ターミナル)を起動する

 (2)PC の電源を落とす時間を設定する


 $ shutdown -h 01:33  ※ 01:30 に + 3 分追加して設定する
 Shutdown scheduled for Sun 2026-02-08 01:33:00 JST, use 'shutdown -c'
 to cancel.


 録画予約した放送枠(番組)の終了時間 + 3 分 程度の時間にシャットダウンさせるのが安全です。設定を解除する場合は 'shutdown -c' を実行します。するとタスクバーの右側にイベント通知のダイアログが開きます。


$ shutdown -c

▢ Local System Message Service  ※ イベント通知のダイアログ
Broadcast message from <username>@<hostname> on pts/3 (Sat 2026-02-07 06:13:41 JST):
System shutdown has been cancelled


◎ 視聴・録画に失敗するとき

 raspirec を起動させて録画予約をしても、全く録画できなかったり、[ 視聴 ]ボタンが表示されないことがあります。そのような場合は、raspirec のメニューから[その他]=>[ mpv モニター ]を開いて、[チューナー]: ○[ GR-1 ]○[ GR-2 ]○[BS/CS-1]○[BS/CS-2]の表示を確認してください。通常、赤色表示は[視聴中・録画中]を示しますが、何らかの理由でデバイスの初期化ができず、[ アクション ]=>[ 停止 ]ボタンをクリックしても、緑色表示に切り替わらないことがあります。その場合は Web ブラウザのキャッシュ(履歴)を消去 => 終了させてから、ターミナルで raspirec を再起動してください。それでも回復しない場合は OS を再起動します。


$ ~/raspirec/ruby raspirec.rb --kill  ※ raspirec を終了する
$ ~/raspirec/ruby raspirec.rb    ※ raspirec を起動する


 アップデーターで OS を更新すると、不具合が生じることもありますので、しばらくの間、様子を見ることも必要になります。OS の更新は日常的に行われますので、細かな不具合はすぐに修正されますし、raspirec も適時、最新バージョンに更新されますから、その時点で問題が解決されていることもあります。実際、2024 年10月にバージョンアップされるまで、デバイス指定の方法に誤りがあり、[ 視聴 ]ボタンが表示されず、視聴できない不具合が生じていました。OS の更新方法を以下に記しておきます。


$ sudo apt update      ※ sudo は管理者権限で実行するという意味
[sudo] <user> のパスワード:  ※ ログインするときのパスワードを入力する
$ sudo apt upgrade -y     ※ OS を更新する


 それから、録画中はチューナー(デバイス)が専有されますから、トラブルを避ける意味でも[ 視聴 ]ボタンをクリックして、視聴することは避けてください。録画予約がないことを確認してから、視聴するようにします。


● 自動スリープ機能を停止する[重要]

 PC を一定時間放置すると設定時間で自動的にスリープします。録画が中断するだけではなく、その後の録画スケジュールも実行されませんから、自動スリープ機能を無効にする必要があります。


 例 KDE の Plasma デスクトップ 環境の場合

 タスクバー(画面の上部)の左端にあるアイコンをクリックするとアプリケーションランチャーが開きます。そこから[KDE システム設定]を開いて、以下のように設定してください。


 [KDE システム設定]=>[電源管理]=>[省エネルギー]=>
 [ ]セッションをサスペンド   ※ この項目のチェックを外す
  
  ※ 注意:/etc/defalut/grub の「GRUB_CMDLINE_LINUX_DEFAULT=」
    に acpi=off を追記して update-grub を実行すると大概の PC は正常に
    起動できなくなる。事故防止のためにも絶対に避けること


 <公式> Web サイトのインストールガイドは簡潔ながら玄人向けです。それなりのリテラシーが要求されるため、必ずしも簡単ではありませんが、raspirec(小型・軽量のサーバープログラム)で構築する録画サーバーの構成はシンプルで負荷が軽く、カーネルのドライバーソフトウェアを使用するため、カーネルアップデートの度に PT-1(PC 用デジタルチューナーボード)のドライバーソフトウェアを再インストールする必要がありません。dkms インストールする方法もありますが、現在、最新のカーネルに PT-1(PC 用デジタルチューナーボード)のドライバーソフトウェアをインストールすることは難しいため、他に選択肢がないのも事実です。

 raspirec(小型・軽量のサーバープログラム)の EPG(電子番組表)は比較的見やすい方で操作性も悪くないと思います。チャンネルのオートスキャン機能が欲しいところですが、重量化の要因になりますから致し方ありません。もう少し丁寧な解説があれば、ロースペック PC で 24 時間稼働させる初心者向きの録画サーバーとして推奨したいところです。PT-1 / PT-2(対応バス:PCI)を最近のマザーボードで使用する場合は、PCI => PCI Express x1(PCIe x1)のインターフェースボード(変換基盤)が必要になります。


いいなと思ったら応援しよう!

コメント

コメントするには、 ログイン または 会員登録 をお願いします。
PT-1 + raspirec で TV 録画サーバーを構築する方法 〜 TV アニメ録画の最安環境(高コスパ)?? 〜|razornote
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1