LinuxServer

tv,terevison,cable,satellite,japan

構成,背景

  • 自分は CentOS(Linux) + friio で録画サーバーを組んでいたのですが、最近録れない時も多い(故障?)、番組表も取れない時が多々ありました。
  • そこで、TVを録画する構成を模索していましたが、以下の構成にしました。
  • 構成
    1. Ubuntu 20.04 サーバー(これは持ってました)
    2. PLEX USB接続 地上デジタル・BS・CS対応TVチューナー PX-W3U4
      • 買いましたw
    3. NTTコミュニケーションズ 接触型ICカードリーダー・ライター e-Tax Win&Mac対応 SCR3310-NTTCom
      • 買いましたw
    4. B-CASカード
      • friio用で持っていましたが、必要ですのでセットアップ前に持っておく必要があります。

参考サイト

物理的な結線等

  • PX-W3U4
    • PX-W3U4, 物理の Ubuntu 20.04 サーバー
      1. PX-W3U4 付属のUSBケーブルで物理サーバーのUSBポートへ接続。
      2. PX-W3U4 付属の電源アダプタを電源と PX-W3U4 へ接続。
      3. TVのアンテナ線を PX-W3U4 へ接続。
    • ここで注意なのですが、USBケーブルと電源ケーブルを繋いでも PX-W3U4 のLEDは何も光らないです。
      • 最初、故障している?と不安になりましたが、この時点では気にせず次の作業に行って大丈夫です(^^)
  • SCR3310-NTTCom
    • SCR3310-NTTComに付いているUSBケーブルを物理の Ubuntu 20.04 サーバーへ接続
    • B-CASカードを SCR3310-NTTCom へ挿しますが、気を付けないといけないのは、カードの裏側を上にして挿します。
      • カードの表を上にして挿すと「2-carddriver.sh」でエラーが出ます。

Docker について

  • 今回は Docker という仕組みを使用してサーバーを構築していきます。
  • Docker とは仮想化技術の1つで、同じプラットフォーム(同じサーバー)の中で複数のサーバーを立てられる特徴があります。
  • 既に Docker の環境がある場合は影響するかも?とのことです。
    (すみません、自分、Docker を使うのが今回が始めてなので情報が薄いです(^^;)
    (自分、VMWare の ESX 環境を持っているので Docker でサーバーを立てる必要性がちょっといまいち。。。(笑)

Install

作業ディレクトリ(フォルダ)の作成

  • 自分は「tv」としました(tempは別の用途で使用していたため)
    euser:~$ mkdir ~/tv

ファイルのダウンロード

  • 以下のサイトからダウンロードし、「~/tv/」の中へ保存します。
  • ファイル名はこんな感じです。
    install-epgstation-20210621T002435Z-001.zip

解凍

cd ~/tv/
unzip install-epgstation-20210621T002435Z-001.zip
  • 解凍結果, こんなディレクトリが作られます。
    • install-epgstation

ディレクトリ移動

cd ~/tv/install-epgstation/script

シェル・スクリプト(インストール・スクリプト)の実行

1.インストール前処理。 docker, docker-compose のインストール

sh 1-preprocess.sh
  • 「1-preprocess.sh」の中身
    timedatectl
    sudo apt update
    mkdir ~/git
    sudo apt install -y dkms git
    sudo apt -y install docker.io 
    docker --version
    sudo apt -y install docker-compose
    docker-compose -v
    sudo usermod -aG docker $USER

2.カードリーダー driver のインストール

sh 2-carddriver.sh
  • スクリプトは自動で終了しないため、インストール完了後「ctrl + c」で終了します。
  • 「2-carddriver.sh」の中身
    sudo apt install -y libpcsclite-dev pcscd pcsc-tools libccid
    pcsc_scan 

3.ホスト上のカードリーダーのpcscdを停止

3-checkcard.sh
  • pcscdを停止後、「ctrl + c」でスクリプトを終了します。
    sudo systemctl stop pcscd.socket
    sudo systemctl disable pcscd.socket
    sudo systemctl status pcscd.socket

4.PLEXチューナーの非公式ドライバをインストール

  • ここで「sh 4-tunerdriver.sh」がちゃんと動きませんでした。
  • 以下のサイトを参考にしてインストール。
  • install コマンド
    sudo apt install -y dkms git
    
    mkdir ~/src
    cd ~/src
    git clone https://github.com/nns779/px4_drv
    cd px4_drv/fwtool/
    make
    wget http://plex-net.co.jp/plex/pxw3u4/pxw3u4_BDA_ver1x64.zip -O pxw3u4_BDA_ver1x64.zip
    unzip -oj pxw3u4_BDA_ver1x64.zip pxw3u4_BDA_ver1x64/PXW3U4.sys
    ./fwtool PXW3U4.sys it930x-firmware.bin
    sudo mkdir -p /lib/firmware
    sudo cp it930x-firmware.bin /lib/firmware/
    
    
    # カーネルヘッダーのインストール(カーネル変更時)
    uname -r
    sudo apt install -y linux-headers-$(uname -r)
    
    
    # px4_drvドライバのインストール
    cd ~/src/px4_drv/driver/
    make
    sudo make install

6.Install

  • Install のタスクは以下2つのうちどちらか1つを実行します。
    1. 6-install-w.sh
      • PX-Q3U4の場合、6-install-q.sh
    2. 6-install-q.sh
      • PX-W3U4の場合、6-install-w.sh
  • 自分の場合は、「PX-W3U4」ですので「6-install-w.sh」を実行します。
  • で、そのまま実行したのでは動かない時があるので、1コマンドずつ確認しながら実行します。
  • ディレクトリを移動。
    cd ~/tv/install-epgstation/script/
  • 実行スクリプトの中身を表示。
    cat 6-install-w.sh
    • 1行ずつコピーして実行し、エラーが無いか確認します。
      • 実行には時間がかかるので慌てず待ちます。
  • 最終的に自分が実行したスクリプトは以下の通り。
    cd ~/git
    git clone https://github.com/l3tnun/docker-mirakurun-epgstation.git
    cd docker-mirakurun-epgstation
    cp docker-compose-sample.yml docker-compose.yml
    cp epgstation/config/config.yml.template epgstation/config/config.yml
    cp epgstation/config/operatorLogConfig.sample.yml epgstation/config/operatorLogConfig.yml
    cp epgstation/config/epgUpdaterLogConfig.sample.yml epgstation/config/epgUpdaterLogConfig.yml
    cp epgstation/config/serviceLogConfig.sample.yml epgstation/config/serviceLogConfig.yml
    git clone https://github.com/Chinachu/Mirakurun
    cd ~/tv/install-epgstation/script
    cp new-MirakurunDockerfile ~/git/docker-mirakurun-epgstation/Mirakurun/docker/Dockerfile
    cp tuners-w.yml ~/git/docker-mirakurun-epgstation/Mirakurun/config/tuners.yml
    cp channels.yml ~/git/docker-mirakurun-epgstation/Mirakurun/config/channels.yml
    cp new-docker-compose-w.yml ~/git/docker-mirakurun-epgstation/docker-compose.yml
    cd ~/git/docker-mirakurun-epgstation
    docker-compose pull
    docker-compose build --no-cache
    docker-compose up -d

確認

  • サーバーのGUI画面で「http://localhost:40772」でアクセスを確認。
    • ここで受信するチャンネルを設定できます。
      (地上波の番組表取得まで20分位かかります。この時間が緊張しますw)
  • 続けて、サーバーのIPで以下にアクセスし EPGstation が表示されることを確認します。
    (server ip address):8888
    • 例)
      http://123.456.789.123:8888/

その他の設定

保存先を変更

  • docker-compose.yml を編集。
    cd git/docker-mirakurun-epgstation/
    vim ~/git/docker-mirakurun-epgstation/docker-compose.yml
  • 以下の「:/app/recorded」の部分を変更して保存する。
       epgstation:
           container_name: epgstation-v2
           build: epgstation
           volumes:
               - /etc/localtime:/etc/localtime:ro
               - ./epgstation/config:/app/config
               - ./epgstation/data:/app/data
               - ./epgstation/thumbnail:/app/thumbnail
               - ./epgstation/logs:/app/logs
               - /mnt/rec/hoge:/app/recorded
  • 反映
    docker-compose up -d

感想

  • 以下4点位ひっかかりましたかね。
    1. 「PX-W3U4」の電源が入っているか不安になりました。
    2. カードリーダーへカードを挿す向き。
    3. Plex tuner driver インストールが動かなかった。
    4. 6.install も動かなかったので修正必要。
  • 結果、安定して動いていて、機能も申し分無し。
    • 機能
      1. キーワード予約(除外設定も正規表現対応のため or 設定が可能です)
      2. フィルタリング機能など

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-08-01 (日) 12:09:28 (51d)