2023年8月版 45分で作れる自宅録画サーバー(Ubuntu 22.04.3LTS)

————————————————————————————————

<2024年1月18日>スクリプト更新
カーネル6.5.0-14-genericに対応しました。
2023temp-20240118T060315Z-001.zip
変更点は、一つのスクリプトだけです。
4-tunerdriver.sh → 4-tunerdriver202401.sh

今までにインストールして使用している方は、
以下の手順を実行して下さい。

(古いドライバの削除)

sudo dkms remove px4_drv/0.2.1 –all
sudo rm -rf /usr/src/px4_drv-0.2.1

(カーネルを6.5.0-14-genericにアップデート)<追記>2024年1月27日

(新しいドライバのインストール)

cd ~/git
sudo apt -y install gdebi
wget https://github.com/tsukumijima/px4_drv/releases/download/v0.4.2/px4-drv-dkms_0.4.2_all.deb
sudo gdebi -n ./px4-drv-dkms_0.4.2_all.deb
sudo reboot

以上

————————————————————————————————
<2024年1月13日>緊急報告

カーネルをアップデートして6.5.0-14-genericにすると、
非公式PLEX用ドライバがインストールできなくなります。
mirakurunもepgstationも動きません。
復帰するには、再起動して、Shiftキーを押して待ちます。
grubメニューが出たら、Advanced Optionを選択して、
 6.2.0-39-genericを選んで起動します。
当面はこれで問題なく使えますが、
再起動したら毎回6.2.0-39-genericを指定する必要があります
そうしないと6.5.0-14-genericで起動してしまいます

もし、それが面倒だという方は、以下のコマンドを実行して下さい。
sudo add-apt-repository ppa:danielrichter2007/grub-customizer -y
sudo apt update
sudo apt install grub-customizer
grub-customizerというアプリがデスクトップにできるので、
そのアプリで、デフォールトで起動するカーネルを
6.2.0-39-genericに指定して保存してください。

6.5.0-14-genericでドライバがインストールできるようになったら、
またお知らせします。
————————————————————————————————

2023年8月現在、自宅録画サーバーを45分で作る方法を紹介します。

<前提条件>

  1. PC(PLEXチューナーカード搭載、あるいはUSB接続PLEXチューナー)
  2. USB接続カードリーダー
  3. B-CASカード

上記が揃っていれば、約45分でインストール完了。

  • (30分) Ubuntu 22.04.3インストール
  • (15分) 自宅録画サーバー完成
  • (20分) EPGStationで1週間の番組表を読み込み、予約録画ができる

入手可能な以下4点を利用します。

  1. Ubuntu LTS 22.04 日本語Remix
  2. EPGStation Mirakurun docker版
  3. 非公式Linuxドライバ for PLEX TVチューナー

  4. PLEX TVチューナー

    (PX-Q3PE4/5、PX-W3PE4/5)
    (PX-MLT5PE、PX-MLT8PE)
    (PX-Q3U4、PX-W3U4)

<2022年5月からの改訂ポイント>

  • Mirakurun 3.9.0-rc.4(最新版がインストールされる)
  • EPGStation 2.7.1(最新版がインストールされる)

docker Compose V2は、次回のバージョンで対応予定

用意するもの

No.品名説明
1B-CASカード
2USB接続カードリーダーSCR3310v2.0で検証済み
3PLEX社製TVチューナーPX-Q3PE4/5,
PX-W3PE4/5,
PX-Q3U4,
PX-W3U4,
PX-MLT5PE,
PX-MLT8PE
4アンテナケーブル
5LANケーブルかWiFi
6PCUbuntu 22.04がインストールできるPC
B-CASカード
USB接続カードリーダー
PLEX社製TVチューナー
アンテナケーブル
PC

PLEX TVチューナーには、使用できるPCに以下の制限があります。

PCW3U4
Q3U4
W3PE4
Q3PE4
MLT5PE
W3PE5
Q3PE5
MLT8PE
フルハイトの
PCI Expressカード
が使える

内部USBポート
接続が必要

内部USBポート
接続が必要
ロープロファイルの
PCI Expressカード
が使える

内部USBポート
接続が必要
PCI Expressカード
が使えないが
USBポートがある

それ以外に制約はありませんが、推奨事項がいくつかあります。

  • CPU
    第6世代 Intel Core i3 以上が推奨。
  • ストレージ
    システム用と録画データ用を分ける。
    システム用は、120GB以上のSSD、録画データ用は、HDDが推奨。
  • 電源
    TSからmp4へトランスコードを行う場合は、400W以上の安定した電源が望ましい。

ハードウェアの準備

  1. PCを組み立てます。
  2. (W3U4、Q3U4の場合)
    外部USBポートに接続します。
    (W3PE5、Q3PE5の場合)
    PLEX TVチューナーをPCI Expressのスロットに入れます。
    (W3PE4、Q3PE4、MLT5PE、MLT8PEの場合)
    PLEX TVチューナーをPCI Expressのスロットに入れます。
    内部USBポートとTVチューナーカードを接続します。
  3. B-CASカードをUSB接続カードリーダーに挿入する。
    B-CASカードの裏面を上にして挿入する。
  4. USB接続カードリーダーを外部USBポートに接続する。
  5. LANケーブルをPCに接続するか、WiFiを用意する。
  6. 準備した例を以下に示します。
  7. 最後に、PLEXチューナーのドライバをインストールするために、
    セキュリティーブートを「非UEFIモード」にします。
    PCの電源を入れて、「DEL」キーを押してBIOSユーティリティーを起動します。
    (本例は、ASUSのマザーボードの場合です。)
    画面下のメニュー左寄り「Advanced Mode」をクリックします。

    Advanced ModeのMain画面で、メニューから「起動」をクリックします。

    「起動」画面で「セキュリティブートメニュー」をクリックします。

    「セキュリティブートメニュー」画面で「OSタイプ」を「非UEFIモード」にします。

    メニューから「終了」をクリックし、「変更を保存しリセット」をクリックします。

    これで、リブートすれば、ハードウェアの準備は完了です。

インストールの準備

  1. 既に稼働しているdocker版EPGStationがある場合は、バックアップをしてください。
  2. Ubuntu 22.04をインストールします。
  3. root以外のユーザーでログインしてください。
    例えば、euserというユーザーを作成し、euserでログインします。
  4. インストールスクリプトをダウンロードします。
  5. ダウンロードしたファイルをホームディレクトリに展開します。
    ダウンロードディレクトリを表示します。
    「2023temp-20240118T060315Z-001.zip」をダブルクリックします。

    「2023temp」を右クリックしてメニューを表示し、「展開」をクリックします。

    「ホーム」をクリックして、「展開」をクリックします。

    「アーカイブの展開が完了しました」と表示されたら、「ファイル表示」をクリックします。「ホーム」の配下に「2023temp」ディレクトリができたことを確認します。
  6. 「端末」アプリを開く。
    画面左下の「アプリケーションを表示する」をクリックします。

    「端末」を左クリックして、「お気に入りに追加」をクリックします。

    画面左のメニューから「端末」をクリックします。

インストールの実行

  1. 「端末」を実行して、スクリプトを確認します。
    euser@pc:~$ cd ~/2023temp/epg-plex
    euser@pc:~/2023temp/epg-plex$ ls -la
    合計 48
    drwxrwxr-x 3 euser euser 4096 8月 21 12:25 .
    drwxrwxr-x 4 euser euser 4096 8月 21 12:25 ..
    -rw-rw-r-- 1 euser euser 212  8月 26 2021 1-preprocess.sh
    -rw-rw-r-- 1 euser euser 85   8月 26 2021 2-carddriver.sh
    -rw-rw-r-- 1 euser euser 116  8月 26 2021 3-checkcard.sh
    -rw-rw-r-- 1 euser euser 576  8月 26 2021 4-tunerdriver202401.sh
    -rw-rw-r-- 1 euser euser 27   8月 26 2021 5-checktuner.sh
    -rw-rw-r-- 1 euser euser 1115 8月 20 19:30 6-install-mlt5.sh
    -rw-rw-r-- 1 euser euser 1115 8月 20 19:31 6-install-mlt8.sh
    -rw-rw-r-- 1 euser euser 1105 8月 20 19:31 6-install-q.sh
    -rw-rw-r-- 1 euser euser 1109 8月 20 19:31 6-install-w.sh
    drwxrwxr-x 2 euser euser 4096 8月 21 12:25 dat
  2. スクリプトを順番に実行していきます。
    euser@pc:~/2023temp/epg-plex$ bash 1-preprocess.sh
    euser@pc:~/2023temp/epg-plex$ bash 2-carddriver.sh
    euser@pc:~/2023temp/epg-plex$ bash 3-checkcard.sh
    euser@pc:~/2023temp/epg-plex$ bash 4-tunerdriver202401.sh

    ここで自動的にリブートします。(ここまで5分
    リブート後端末を開き、~/2023temp/epg-plexまで戻ります。

    euser@pc:$cd ~/2023temp/epg-plex
    euser@pc:~/2023temp/epg-plex$ bash 5-checktuner.sh

    チューナードライバを確認したら、最後のインストールです。(ここから10分
    <Q3PE4/5、Q3U4>の場合

    euser@pc:~/2023temp/epg-plex$ bash 6-install-q.sh
    

    <W3PE4/5、W3U4>の場合

    euser@pc:~/2023temp/epg-plex$ bash 6-install-w.sh
    

    <MLT5PE>の場合

    euser@pc:~/2023temp/epg-plex$ bash 6-install-mlt5.sh
    

    <MLT8PE>の場合

    euser@pc:~/2023temp/epg-plex$ bash 6-install-mlt8.sh
    

インストールの詳細画面

  1.  1-preprocess.sh
    以下のスクリプトを実行します。

    euser@pc:~/2023temp/epg-plex$ bash 1-preprocess.sh
    

    結果は、以下のとおりです。

    docker-compose (1.29.2-1) を展開しています...
    python3-dotenv (0.19.2-1) を設定しています ...
    python3-distutils (3.10.4-0ubuntu1) を設定しています ...
    python3-attr (21.2.0-1) を設定しています ...
    python3-texttable (1.6.4-1) を設定しています ...
    python3-docopt (0.6.2-4) を設定しています ...
    python3-setuptools (59.6.0-1.2) を設定しています ...
    python3-pyrsistent:amd64 (0.18.1-1build1) を設定しています ...
    python3-websocket (1.2.3-1) を設定しています ...
    python3-dockerpty (0.4.1-2) を設定しています ...
    python3-docker (5.0.3-1) を設定しています ...
    python3-jsonschema (3.2.0-0ubuntu2) を設定しています ...
    docker-compose (1.29.2-1) を設定しています ...
    man-db (2.10.2-1) のトリガを処理しています ...
    docker-compose version 1.29.2, build unknown
    

    docker、docker-composeなどをインストールし、準備を完了します。

  2. 2-carddriver.sh
    以下のスクリプトを実行します。

    euser@pc:~/2023temp/epg-plex$ bash 2-carddriver.sh
    

    結果は以下のとおりです。

    + Historical bytes: 
    + TCK = 99 (correct checksum)
    
    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)
    

    ctrl-cを入力して、スクリプトを終了します。
    これで、B-CASカードが有効になります。

  3. 3-checkcard.sh
    以下のスクリプトを実行します。

    euser@pc:~/2023temp/epg-plex$ bash 3-checkcard.sh
    

    結果は以下のとおりです。

    ○ pcscd.socket - PC/SC Smart Card Daemon Activation Socket
         Loaded: loaded (/lib/systemd/system/pcscd.socket; disabled; vendor preset:>
         Active: inactive (dead)
       Triggers: ● pcscd.service
         Listen: /run/pcscd/pcscd.comm (Stream)
    
     5月 23 10:22:29 motown systemd[1]: Listening on PC/SC Smart Card Daemon Activa>
     5月 23 10:23:51 motown systemd[1]: pcscd.socket: Deactivated successfully.
     5月 23 10:23:51 motown systemd[1]: Closed PC/SC Smart Card Daemon Activation S>
    lines 1-9/9 (END)
    

    「Active: inactive (dead)」を確認した後、
    ctrl-cを入力して、スクリプトを終了します。

  4. 4-tunerdriver202401.sh
    以下のスクリプトを実行します。

    euser@pc:~/2023temp/epg-plex$ bash 4-tunerdriver202401.sh
    

    結果は以下のとおりです。

    depmod....
    ドライバがインストールされました。enterキーを押すとリブートします。
    

    TVチューナーのドライバがインストールされました。
    enterキーを押してリブートしてください。

  5. 5-checktuner.sh
    以下のスクリプトを実行します。

    euser@pc:~/2023temp/epg-plex$ bash 5-checktuner.sh
    

    TVチューナーの非公式ドライバが正常にインストールされたことを確認します。
    Q3PE4/5、Q3U4の場合は、以下のように表示されます。

    crw-rw-r-- 1 root video 239, 0  3月 29 17:48 /dev/px4video0
    crw-rw-r-- 1 root video 239, 1  3月 29 17:48 /dev/px4video1
    crw-rw-r-- 1 root video 239, 2  3月 29 17:48 /dev/px4video2
    crw-rw-r-- 1 root video 239, 3  3月 29 17:48 /dev/px4video3
    crw-rw-r-- 1 root video 239, 4  3月 29 17:48 /dev/px4video4
    crw-rw-r-- 1 root video 239, 5  3月 29 17:48 /dev/px4video5
    crw-rw-r-- 1 root video 239, 6  3月 29 17:48 /dev/px4video6
    crw-rw-r-- 1 root video 239, 7  3月 29 17:48 /dev/px4video7
    

    W3PE4/5、W3U4の場合は、以下のように表示されます。

    crw-rw-r-- 1 root video 239, 0  3月 29 17:48 /dev/px4video0
    crw-rw-r-- 1 root video 239, 1  3月 29 17:48 /dev/px4video1
    crw-rw-r-- 1 root video 239, 2  3月 29 17:48 /dev/px4video2
    crw-rw-r-- 1 root video 239, 3  3月 29 17:48 /dev/px4video3
    

    MLT5PEの場合は、以下のように表示されます。

    crw-rw-r-- 1 root video 237, 0  9月 13 13:53 /dev/pxmlt5video0
    crw-rw-r-- 1 root video 237, 1  9月 13 13:53 /dev/pxmlt5video1
    crw-rw-r-- 1 root video 237, 2  9月 13 13:53 /dev/pxmlt5video2
    crw-rw-r-- 1 root video 237, 3  9月 13 13:53 /dev/pxmlt5video3
    crw-rw-r-- 1 root video 237, 4  9月 13 13:53 /dev/pxmlt5video4
    

    MLT8PEの場合は、以下のように表示されます。

    crw-rw-r-- 1 root video 237, 0  9月 13 13:53 /dev/pxmlt8video0
    crw-rw-r-- 1 root video 237, 1  9月 13 13:53 /dev/pxmlt8video1
    crw-rw-r-- 1 root video 237, 2  9月 13 13:53 /dev/pxmlt8video2
    crw-rw-r-- 1 root video 237, 3  9月 13 13:53 /dev/pxmlt8video3
    crw-rw-r-- 1 root video 237, 4  9月 13 13:53 /dev/pxmlt8video4
    crw-rw-r-- 1 root video 237, 5  9月 13 13:53 /dev/pxmlt8video5
    crw-rw-r-- 1 root video 237, 6  9月 13 13:53 /dev/pxmlt8video6
    crw-rw-r-- 1 root video 237, 7  9月 13 13:53 /dev/pxmlt8video7
    

    もし、ドライバが表示されない場合は、原因を調査します。
    解決しない場合は、先に進めません。

  6. 6-install
    インストールの最後のステップです。PLEX TVチューナー対応docker版mirakurun、mysql、epgstationをインストールします。
    (a) PX-Q3PE4/5、PX-Q3U4の場合、6-install-q.sh

    euser@pc:~/2023temp/epg-plex$ bash 6-install-q.sh
    

    (b) PX-W3PE4/5、PX-W3U4の場合、6-install-w.sh

    euser@pc:~/2023temp/epg-plex$ bash 6-install-w.sh
    

    (c) PX-MLT5PEの場合は、6-install-mlt5.sh

    euser@pc:~/2023temp/epg-plex$ bash 6-install-mlt5.sh
    

    (d) PX-MLT8PEの場合は、6-install-mlt8.sh

    euser@pc:~/2023temp/epg-plex$ bash 6-install-mlt8.sh
    

    スクリプト実行後、約10分で以下が表示されれば「インストール完了」です。

    Successfully built af61c6cadc6a
    Successfully tagged docker-mirakurun-epgstation_epgstation:latest
    Creating network "docker-mirakurun-epgstation_default" with the default driver
    Creating volume "docker-mirakurun-epgstation_mysql-db" with local driver
    Creating mirakurun           ... done
    Creating mysql-epgstation-v2 ... done
    Creating epgstation-v2       ... done
    
  7. Mirakurunの稼働確認
    ブラウザでMirakurunの稼働を確認する。
    「http://localhost:40772」

    2023年8月21日現在、Mirakurun 3.9.0-rc.4がインストールできます。
  8. EPGStationの稼働確認
    ブラウザでEPGStationの稼働を確認する。
    「http://localhost:8888」

    2023年8月21日現在、EPGStation 2.7.1がインストールできます。
    BSの番組表の方が、地デジの番組表より早く表示されます。
    地デジの1週間後の番組表が表示されるまで、およそ20分かかります。

録画する前に必ず実施すること

EPGStationのストレージの所有者は、デフォールトでrootになります。
所有者をログインユーザーにする必要があります。
以下の設定を行わないと、ファイルの自動削除などの際に、きちんと削除されないことが起こります。
また、sambaなど他のシステムからファイルの変更や削除を行う場合、アクセス権限の変更が面倒になります。

録画を始める前に、必ず以下を実施してください。

idコマンドを使って、ユーザーIDを調べます。

euser@pc:~$ id
uid=1000(euser) gid=1000(euser) groups=1000(euser)

上記の場合は、uid=1000(euser)からユーザーIDが1000であることがわかります。
ユーザーIDをEPGStationのconfig.ymlに設定します。
以下の場所を開いて下さい。~/git/docker-mirakurun-epgstation/epgstation/config

euser@pc:~$ cd ~/git/docker-mirakurun-epgstation
euser@pc:~$ docker-compose down
euser@pc:~$ cd epgstation/config

epgstationを停止してから、config.ymlを開けて、編集してください。

config.ymlを開いて、調べたユーザーidを追加してください。
例えばユーザーIDが1000ならば、「uid: 1000」と追記して保存して下さい。

編集が完了したら、epgstationを立ち上げてください。

euser@pc:~$ cd ~/git/docker-mirakurun-epgstation
euser@pc:~$ docker-compose up -d

ここで、EPGStationが立ち上がらないことがあります。

問題は、~/git/docker-mirakurun-epgstation/epgstation/logsで発生していました。
logファイルがrootで書き込まれて、アクセスができなくなっていました。
例えばログインユーザーがeuserの場合、以下のようにオーナーを変更します。

euser@pc:~$ cd ~/git/docker-mirakurun-epgstation/epgstation
euser@pc:~$ sudo chown euser -R logs

更に録画ファイルを入れるディレクトリ/media/tv_recordのオーナーをログインユーザーに変更してください。
例えばログインユーザーがeuserならば、

sudo chown euser /media/tv_record

変更後、Ububtuをリブートしてください。
問題なくシステムが立ち上がることを確認したら、EPGStationから録画を行ってください。

追加インストール情報

本記事の手順でEPGStationをインストールした後、参考になる記事は以下のとおりです。

ストレージの拡張について

トランスコードの最適化について

sambaについて

muninについて

全録サーバーについて

EPGStationのデータのバックアップとリストアについて

関連記事

コメント96件

  • 風小僧 より:

    非常に便利なスクリプトを公開してくださり、感謝しております。
    さすがに45分では無理でしたが、半日ほどで稼働できるようになりました。
    特にトラブることもなく、スムーズにインストールできました。
    あえていえば、6-installが10分で・・とありましたが、すごく長く感じられました。吐き出されているログがエラーなのかドキドキして待っていたら無事終了して感激でした。
    また、ストレージ拡張・トランスコード・samba共有の別記事(スクリプト)も役に立ちました。
    ありがとうございます。
    こんな質問は野暮なんですが、カードリーダーが邪魔で、softcasがubuntuに実装できたらいいんですが、無理ですよね!
    本当にありがとうございました。今後の有益な記事に期待しております。

  • simplelife より:

    風小僧さん

    インストールできて良かったです。

    softcasに関しては、きちんと調べたわけではありませんが、違法の可能性があったので、
    使っていません。B-CASに関しては、管理している会社そのものの権利が無効の可能性が
    高く、法律に触れない範囲で流用できるという解釈で利用しています。
    詳しくは、このブログの中でも記事にしています。
    https://www.digital-den.jp/simplelife/archives/5191/

  • mmmm より:

    こちらのページのスクリプトを使用して、Ubuntu22.04にドライバーとmirakurunとEPGStationのインストールを行いました。
    EPGStationから番組表の取得はできるようになったのですが、放送中の番組を視聴しようと思ってm3u8ファイルをVLCで開いても、録画した番組のm2tsファイルをVLCで再生しても、映像が何も表示されない状態です。再生時間だけは進んでおりました。
    EPGStationにて録画一覧の画面を開いても、各録画にサムネイルは何も表示されていません。
    番組表は取得できていることや、pcsc_scanコマンドでB-CASカードが認識できていることから、ケーブルやカードの抜けは無いように思います。
    装着しているチューナーはPX-W3PE5です。

    PCのパーツ構成は、Asrock J3160-ITXという、intel celeron J3160 CPUがオンボードで取り付けられているマザーボードを使用しています。グラフィックボードは装着できません。
    CPUなどハードウェアが原因で、視聴や録画に失敗しているのでしょうか?
    もしくは、他に原因が存在するのでしょうか?

  • mmmm より:

    m3u8やm2tsをVLCで開いたとき、mirakurunには下記のようなログが表示されていました。
    info: TSDecoder#4 process has spawned by command `arib-b25-stream-test` (pid=960)
    info: TSDecoder#4 process has closed with exit code=0 by signal `null` (pid=960)
    error: TSDecoder#4 unexpected dead
    warn: TSDecoder#4 has been fallback into pass-through stream
    warn: TSDecoder#4 process will force killed because no respond…
    error: TSDecoder#4 unexpected dead
    warn: TSDecoder#4 has been fallback into pass-through stream

  • simplelife より:

    B-CASカードがきちんと認識されていないと思います。裏返しにさしこんでいるとかあ。

  • mmmm より:

    SCR-3310/V2.0というカードリーダーを使用していますが、pcsc_scanを実行したときには「Japanese Chijou Digital B-CAS Card (pay TV)」という結果が出ます。
    カードは裏面が上になるように差し込んでいます。

  • simplelife より:

    mmmmさん

    3-checkcard.shの実行結果はどうなっていますか?

  • mmmm より:

    pcscd.socket – PC/SC Smart Card Daemon Activation Socket
    Loaded: loaded (/lib/systemd/system/pcscd.socket; disabled; vendor preset: enabled)
    Active: inactive (dead)
    Triggers: ● pcscd.service
    Listen: /run/pcscd/pcscd.comm (Stream)

    12月 16 20:13:43 mmmm-ubuntu systemd[1]: Listening on PC/SC Smart Card Daemon Activation Socket.
    12月 16 20:14:11 mmmm-ubuntu systemd[1]: pcscd.socket: Deactivated successfully.
    12月 16 20:14:11 mmmm-ubuntu systemd[1]: Closed PC/SC Smart Card Daemon Activation Socket.

    このようになっていました。

  • mmmm より:

    すみません、先程まではUbuntuとは別の、同じネットワークにあるPCから起動していました。
    Ubuntuから直接m3u8を開いた場合は下記のようなlogになりましたが、映像が映らないことは相変わらずです。

    2023-12-16T20:27:27.712+09:00 info: TSDecoder#7 has created (command=arib-b25-stream-test)
    2023-12-16T20:27:27.768+09:00 info: TSDecoder#7 process has spawned by command `arib-b25-stream-test` (pid=208)
    2023-12-16T20:27:27.770+09:00 info: TSFilter: created (serviceId=2056, eventId=0)
    2023-12-16T20:27:27.771+09:00 info: TSFilter: waiting for serviceId=2056, eventId=0
    2023-12-16T20:27:27.771+09:00 info: TunerDevice#2 streaming to user `172.18.0.3:43220` (priority=0)
    2023-12-16T20:27:27.909+09:00 info: TSFilter#_onPMT: now ready for serviceId=2056

  • mmmm より:

    何度もコメントしてすみません。
    先程のlogは、一度PCの電源を落としたためカードが認識されておらず、違う結果となっていました。
    もう一度認識させたあと、ubuntuにて番組を開き直しましたが、16:54に書いたような、またもやwarnとerrorが含まれたlogとなりました。

  • mmmm より:

    docker exec -it mirakurun /bin/bash
    checksignal 13 –device /dev/px4video2

    device = /dev/px4video2
    C/N = 25.507984dB^C
    SIGINT received. cleaning up…
    C/N = 25.984348dB

    mirakurunのコンテナにログインして、checksignalで電波強度を確認してみましたが、受信に問題はないようでした。

  • simplelife より:

    mmmmさん

    いただいた情報をみる限り、原因はわかりません。
    「放映中」で、きちんと表示されるまで、いろいろ試した方がわかりやすいと思います。

    まず、「放映中」で「NHK総合1・東京」をクリックし、「WebM」を選択し。「視聴」ボタンを押すとどうなりますか?

  • mmmm より:

    「NHK総合1・東京」が受信できない地域なので、「NHKEテレ1大阪」で試してみました。
    「外部アプリで開く」をオフにすると「WebM」が選択できるようになったので、その状態で視聴を押してみると、黒い背景に中央にぐるぐる回るマークが出たまま、一向に進みませんでした。
    また、視聴を押した直後、下記のようなlogが残りました。

    2023-12-16T22:29:55.287+09:00 info: TSDecoder#2 has created (command=arib-b25-stream-test)
    2023-12-16T22:29:55.318+09:00 info: TSDecoder#2 process has spawned by command `arib-b25-stream-test` (pid=549)
    2023-12-16T22:29:55.318+09:00 info: TSFilter: created (serviceId=2056, eventId=0)
    2023-12-16T22:29:55.319+09:00 info: TSFilter: waiting for serviceId=2056, eventId=0
    2023-12-16T22:29:55.347+09:00 info: TunerDevice#3 process has spawned by command `recpt1 –device /dev/px4video3 13 – -` (pid=551)
    2023-12-16T22:29:55.348+09:00 info: TunerDevice#3 streaming to user `172.18.0.2:39294` (priority=0)
    2023-12-16T22:29:56.410+09:00 info: TSFilter#_onPMT: now ready for serviceId=2056

  • simplelife より:

    mmmmさん

    デフォールトのチャンネルが、地上波は東京なので、mirakurunでチャンネルを編集してください。
    BSなら、全国どこでも同じだから、BS1で試してみたら、うまくいくかもしれませんね。

  • mmmm より:

    BSでも映像は表示されませんでした。
    もしかしたらdockerなしで行くしかないのかもしれません。
    後日改めてインストールし直すことにします。
    お手数をおかけして申し訳ないです。

  • mmmm より:

    すみません、ようやく解決いたしました。
    原因ですが、dockerにログインしていない状態で「pcsc_scan」を実行するとカードを認識していないような結果が出力されるので、本来は行う必要のない「service pcscd restart」を実行してしまい、カードの認識がdocker外に移動してしまうためでした。
    また、「service pcscd restart」をしなかった状態であっても、B-CASカードではなくケーブルテレビ用のC-CASカードに差し替えていたせいで、地上波とBSが認証できなかったのも原因でした。

  • simplelife より:

    mmmmさん

    解決して良かったです。結局B-CASカードの認識ができなくて、デコードできなかったということですね。
    いろいろなトラブルの情報は、とても参考になります。
    なた、何かありましたら、コメントください。
    チャンネル設定が、東京以外でどうなるのかわからなかったのですが、問題なく使えるようですね。
    参考になりました。

  • mimimi より:

    こちらの記事を参照し、Ubuntu22.04にドライバーとmirakurunとEPGStationのインストールを行わさせていただきました。
    その結果地上波のチャンネルはすべて表示でき、録画も良好に行うことができました。しかし、BS、CSのチャンネルがmirakurun上に表示されません。また、checksignalコマンドを入力すると、’No signal.’と’Cannot tune to the specified channel message’というメッセージが表示されます。アンテナ線の接続とチューナーに問題はなさそうなのですが、解決にお力をお借りできないでしょうか?

    実行した際以下のようなEventsとlogが表示されました
    [Events]
    [“BS”,”CS”],”command”:”recpt1 –device /dev/px4video1 –lnb 15 CS16 – -“,”pid”:7414,”users”:[{“id”:”Mirakurun:getServices()”,”priority”:-1,”disableDecoder”:true,”streamSetting”:{“channel”:{“_name”:”CS:CS16″,”_type”:”CS”,”_channel”:”CS16″},”parseNIT”:true,”parseSDT”:true},”streamInfo”:{}}],”isAvailable”:false,”isRemote”:false,”isFree”:false,”isUsing”:false,”isFault”:false}

    [Logs]
    2023-12-30T16:36:34.853+09:00 info: ChannelItem#’CS:CS16′ serviceId=353 check has started
    2023-12-30T16:36:34.853+09:00 info: TSFilter: created (serviceId=0, eventId=0)
    2023-12-30T16:36:34.853+09:00 info: TSFilter: waiting for serviceId=0, eventId=0
    2023-12-30T16:36:34.860+09:00 info: TunerDevice#0 process has spawned by command `recpt1 –device /dev/px4video0 –lnb 15 CS16 – -` (pid=7428)
    2023-12-30T16:36:34.860+09:00 info: TunerDevice#0 streaming to user `Mirakurun:getServices()` (priority=-1)
    2023-12-30T16:36:37.807+09:00 info: TunerDevice#1 process has closed with exit code=1 by signal `null` (pid=7427)
    2023-12-30T16:36:37.908+09:00 info: TunerDevice#1 released
    2023-12-30T16:36:42.236+09:00 info: TunerDevice#0 process has closed with exit code=1 by signal `null` (pid=7428)
    2023-12-30T16:36:42.339+09:00 warn: TunerDevice#0 respawning because request has not closed
    2023-12-30T16:36:42.347+09:00 info: TunerDevice#0 process has spawned by command `recpt1 –device /dev/px4video0 –lnb 15 CS16 – -` (pid=7429)
    2023-12-30T16:36:43.853+09:00 warn: TunerDevice#1 will force killed because SIGTERM timed out…
    2023-12-30T16:36:50.024+09:00 info: TunerDevice#0 process has closed with exit code=1 by signal `null` (pid=7429)
    2023-12-30T16:36:50.126+09:00 warn: TunerDevice#0 respawning because request has not closed
    2023-12-30T16:36:50.134+09:00 info: TunerDevice#0 process has spawned by command `recpt1 –device /dev/px4video0 –lnb 15 CS16 – -` (pid=7430)
    2023-12-30T16:36:54.861+09:00 info: TSFilter#_close: closed (serviceId=null, eventId=null)
    2023-12-30T16:36:54.861+09:00 info: TunerDevice#0 end streaming to user `Mirakurun:getServices()` (priority=-1)
    2023-12-30T16:36:54.862+09:00 warn: ChannelItem#’CS:CS16′ serviceId=353 check has failed [Error: stream has closed before get network
    at TSFilter. (/app/src/Mirakurun/Tuner.ts:198:28)
    at TSFilter.emit (/app/node_modules/eventemitter3/index.js:201:33)
    at TSFilter._close (/app/src/Mirakurun/TSFilter.ts:1098:14)
    at TSFilter.close (/app/src/Mirakurun/TSFilter.ts:303:14)
    at Timeout._onTimeout (/app/src/Mirakurun/Tuner.ts:175:39)
    at listOnTimeout (node:internal/timers:569:17)
    at processTimers (node:internal/timers:512:7)]

  • simplelife より:

    mimimiさん

    ソフトウェアの問題ではないと思います。

    ・アンテナケーブルをTVに接続してNHK BSが映るか?
    ・カードがきちんと刺さっているか?

    くらいしか思いつきません。

  • mimimi より:

    simplelifeさん
    ご返信ありがとうございます。
    ケーブルをテレビにさしてみた結果問題なく映りました。
    またカードも問題なく刺さっていることを確認しました。
    もしかしたらチューナーの問題かもしれませんね、、、

  • simplelife より:

    mimimiさん

    私も自分のPCでチェックしました。
    ~$ docker exec -it mirakurun /bin/bash
    root@a4579f1e5f2c:/app# checksignal –device /dev/px4video5 101
    Cannot open tuner device: /dev/px4video5
    root@a4579f1e5f2c:/app# checksignal –device /dev/px4video0 101
    device = /dev/px4video0
    C/N = 18.583437dB

    たまたま使われていると、開けない場合があります。
    px4video0、px4video1、px4video4、px4video5で全部試してください。

    カードの型番を教えてください。 PX-Q3PE4ですか?

  • simplelife より:

    mimimiさん

    検索したら、以下のメモを見つけました。

    ————-
    接触不良?でCannot tune to the specified channelと言われた

    /dev/pt3video*は表示されてカードは認識されているが、Cannot tune to the specified channelが出て全く放送を受信できない。配線を確認しても問題なく、sudo modprobe -r pt3_drv && sudo modprobe pt3_drvしてもエラーは出ない。
    ただ、checksignalやrecpt1を実行すると2回に1回くらい処理が戻って来ず、プロセスをkillすることもできない。
    PCを内部清掃しPT3を挿し直したところ改善した。接触不良が原因かは不明だが、メモとして残す。
    ———————–

    カードを挿し直して、電源を入れ直す以外、方法はないかもしれません。

  • mimimi より:

    simplelifeさん
    ご返信ありがとうございます。
    自分はPX-Q3PE5を使用しています。
    一回PC内の清掃を行い接続しなおしてみますね。

  • simplelife より:

    mimimiさん

    Cannot tune to the specified channel message
    が出る場合は、
    (1)地上波のチューナーでBSのチャンネルを指定するか
    (2)BS、CSのチューナーで地上波チャンネルを指定するか
    (3)定義されていないチャンネルを指定するか
    です。
    地上波 px4video2、px4video3、px4video6、px4video7
    BS,CS px4video0、px4video1、px4video4、px4video5

    再度、以下のコマンドで確認してください。
    docker exec -it mirakurun /bin/bash
    root@xxxx:/app# checksignal –device /dev/px4video0 101
    root@xxxx:/app# checksignal –device /dev/px4video1 101
    root@xxxx:/app# checksignal –device /dev/px4video4 101
    root@xxxx:/app# checksignal –device /dev/px4video5 101

  • mimimi より:

    simplelife さん
    チューナーにアタリハズレがあるということを耳にして、まだチューナーの返品期限内だったので思い切って新しいチューナーを購入してみました。早速試してみたところ見事BS CSもスキャンすることができました。どうやらカードの故障だったみたいです。ご協力いただきありがとうございました。

  • simplelife より:

    mimimiさん

    カードの不良品、初めて聞きました。そういうこともあるんですね。
    とにかく、解決して良かった。

  • tammy より:

    チューナー:PX-Q3U4
    Ubuntu 22.04.3LTSにて1/11のUbuntuのアップデートでチューナーのドライバが消えました。
    手動でドライバを入れようとしても入らず、機器の故障を切り分けながら確認したのですが故障は
    ありませんでした。同一PCにてUbuntuの再インストール、他PCにてのクリーンインストールしても
    ドライバは入りませんでした。EPGStationのデータをバックアップしていたので、いろいろ試して半日かけてどうにか復旧。Ubuntuの知識が乏しいので悩みました。疲れた・・・

  • simplelife より:

    tammyさん

    情報ありがとうございます。
    こちらでもアップデートしてみましたが、特に問題はなく、EPGStationは問題なく録画ができています。
    何が問題だったのか。
    USBの接続不良以外、ドライバが消えることはないと思うのですが。。。

  • simplelife より:

    tammyさん

    こちらでもドライバが消える現象再現しました。
    ただし、3台中1台で1月11日に発生しています。
    他の2台ではアップデートをしても発生していません。
    発生した1台で、デスクトップのアプリからアップデートした時に発生したように思います。
    他の2台はcockpitからアップデートしたのですが、問題は起こっていません。
    原因を調査するにも、もう少し情報があるといいですね。
    他にも発生している方がいれば、情報をお願いします。

  • tammy より:

    simplelife さん

    事例を探しても出てこないので今日の録画は後回しで再インストールしました。
    原因はチューナードライバのBuildエラーみたいですね、アップデートで再構築するのは便利ですけど・・・下記はtunerdriver install時のエラー部分のlogです

    Building module:
    cleaning build area…
    cd ./driver; make KVER=6.5.0-14-generic px4_drv.ko…(bad exit status: 2)
    ERROR (dkms apport): binary package for px4_drv: 0.2.1 not found
    Error! Bad return status for module build on kernel: 6.5.0-14-generic (x86_64)
    Consult /var/lib/dkms/px4_drv/0.2.1/build/make.log for more information.

    私の機器構成はPC:DeskMini 310(Core i5-9500T)/WirelessIF:AC9560NGW
    チューナ:PX-Q3U4 / カードリダ:SCR3310/v2.0なのですがバージョンアップでカーネルが変更されドライバ再構築時にエラーになっているみたいです。私のPC(CPU)はintelなのでAMDでは発生していないかも?AMDのPCで構築していないので不明です・・・いつか同じ目に合うのかな?

    復旧方法
    USB機器は接続した状態でUbuntu 22.04 LTSをUSBブートにて再インストールします。悲しい情報は消してしまいましょう・・・
    注意点としてはネットに接続しないこと。LANケーブルは抜いておきます。
    インストール終了後、PX-Q3U4はドライバが正常動作してないとLEDが消えているので[$lsusb]にて接続確認してください。その後、画面左下のアプリケーションから「ソフトウェアとアップデート」を起動してアップデートのタブより、確認対象を「セキュリティーアップデートのみ」として下段はアップデートしない方向でお好み設定してください。その後、ネット接続してsimplelifeさんのインストールファイルを実行していけば復旧できます。(私が使ったインストールファイルは2022年5月頃のものです)
    バックアップを取っている方はEPGStationのバップアップをリストアしてください。
    内臓ドライブを使っている方は、再設定してください。マウントまでは自動で出来ているはずなのでラベル変更、EPGStationの録画ドライブの変更等。
    私がインストールしたアプリはVLCのみです。録画とネット視聴さえ出来ればいいのです。
    Ubuntuを理解してる方は、別の対処方法があるのでしょうが私の知識ではここまでです。

  • simplelife より:

    tammyさん

    情報ありがとうございます。
    こちらで調べた結果、
    動作OKカーネル Linux oooo 6.2.0-39-generic #40~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 16 10:53:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
    動作NGカーネル Linux xxxx 6.5.0-14-generic #14~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Nov 20 18:15:30 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
    カーネルを戻せば、動くかもしれません。
    これから試してみます。

  • simplelife より:

    tammyさん

    カーネルを6.5.0-14-genericから 6.2.0-39-genericに戻したら、無事復帰しました。
    手順を再度確かめて、一番簡単な方法を公開することにします。

  • tammy より:

    simplelife さん

    再インストールしたのでカーネルの確認は出来ていませんでした、6.2.0-39-generic迄なのですね。

    これから始める方や故障で再インストールされる方は注意が必要ですね。
    問題なのはintel CPUの対応だと思います、Ubuntu 22.04 LTSではintelの11世代までなのかな?
    ネット切断してUbuntu 22.04 LTSでインストール、手動でカーネルを6.2.0-39-generic上げてやればうまく動作するのか、docker Compose V2での対応等

    一番確実で早いのは、他力本願ではありますがnns779の中の人が・・・

  • sada より:

    simplelife さん、tammyさん、類似ケースかもと思い報告します。私の利用している機材はPXQ3PE5です。

    私もUbuntu22.04LTSで構成していますが、昨日、apt upgradeしたあと /dev/px* が存在しない状態となりました。
    下記の内容を参考に、チューナードライバの再インストールを試みましたが同じエラーの状況でした。
    4-tunerdriver.sh
    cd ./driver; make KVER=6.5.0-14-generic px4_drv.ko…(bad exit status: 2)

    対応として以下を行いました。
    1)インストール済のドライバを削除
    https://github.com/nns779/px4_drv
    アンインストール セクションの「DKMSを使用してインストールした場合」、「ファームウェアのアンインストール」を実施

    2) debファイルをインストールするため、gdebi をインストール
    sudo apt install gdebi

    3) https://github.com/tsukumijima/px4_drv から
    Debian パッケージを使用してインストール (推奨) の下記を実行し、debファイルをダウンロード
    wget https://github.com/tsukumijima/px4_drv/releases/download/v0.4.1/px4-drv-dkms_0.4.1_all.deb
    4)gdebi で 3)でダウンロードしたdebをインストール
    sudo gdebi px4-drv-dkms_0.4.1_all.deb
    5) 再起動
    こちらで /dev/px* が生成されていることが確認できました。

    ご参考まで。

  • sada より:

    sadaです。すみません、自身の利用OSの情報を忘れていました。
    Linux version 6.5.0-14-generic (buildd@lcy02-amd64-110) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #14~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Nov 20 18:15:30 UTC 2 (Ubuntu 6.5.0-14.14~22.04.1-generic 6.5.3)
    です。

  • simplelife より:

    tammyさん

    カーネルのダウングレードは、簡単にできます。再インストールなどは必要ありません。
    詳細は、後で記事に書きますが、コマンドを打って、リブートするだけなので、簡単5分でおわります。

  • simplelife より:

    sadaさん

    情報ありがとうございます。
    手順としては、いくらか大変ですね。
    私のように、カーネルのダウングレードなら、5分で復帰します。

  • tammy より:

    simplelife さん 、sadaさん

    ありがとうございます。

    カーネルのダウングレードはてっとり早くていいですね、脳内に存在せず機器検証もかねてクリーンインストールしました。
    別のドライバの存在したのですね、次回インストール時に利用します。いずれsimplelife さんがパッチ化すると思います・・・
    使用したPCは約2年ほど稼働していて、そろそろ更新を考えていた矢先の出来事でとにかく焦りました。とりあえずサーバーが稼働してなによりです。

    お疲れさまでした

  • simplelife より:

    sadaさん

    少し勘違いしていました。
    sadaさんが教えてくれた手順は、新しいカーネルに対応したドライバの組み込みだったんですね。
    私のscriptにこの変更を加えれば、問題が解消しますね。
    早速、作り替えて、新しいバージョンを作りましょう。
    教えていただき、感謝。

  • sada より:

    simplelife さん、お役に立ててよかったです。
    私自身こちらのサイトを見て、linuxで録画PCを組んでお世話になりました。
    少しでも参考になればと投稿させていただきました。
    これからもよろしくお願いします。

  • shin より:

    こちらのページのスクリプトを使用して、Ubuntu22.04にインストールしようとしています。
    PX-Q3U4を使用しているので、bash 6-install-q.shを実行しますが、以下のエラーが出てしまいます。

    ERROR: for docker-mirakurun-epgstation_mirakurun_1 Cannot start service mirakurun: error gathering device information while adding custom device “/dev/dvb”: no such file or directory

    ERROR: for mirakurun Cannot start service mirakurun: error gathering device information while adding custom device “/dev/dvb”: no such file or directory
    ERROR: Encountered errors while bringing up the project.

    1〜4までのスクリプトはページの表示どおり問題なく実行できます。
    解決方法をご教授いただけたら幸いです。
    よろしくお願いします。

  • simplelife より:

    shinさん

    スクリプト5の結果はどうなっていますか?

  • shin より:

    simplelife さん

    スクリプト5の結果は
    >Q3PE4/5、Q3U4の場合は、以下のように表示されます。
    のページと同様になっております。

  • simplelife より:

    shinさん

    ~/git/docker-mirakurun-epgstationmの中のdocker-compose.ymlを見てください。
    devices:
    – /dev/px4video0:/dev/px4video0
    – /dev/px4video1:/dev/px4video1
    – /dev/px4video2:/dev/px4video2
    – /dev/px4video3:/dev/px4video3
    – /dev/px4video4:/dev/px4video4
    – /dev/px4video5:/dev/px4video5
    – /dev/px4video6:/dev/px4video6
    – /dev/px4video7:/dev/px4video7
    – /dev/bus:/dev/bus

    となっていれば、ただしいですが、/dev/dvbとなっていれば、
    ただしくインストールされていません。

    rootでインストールして、上記エラーが出たことがあった記憶があります。

  • simplelife より:

    shinさん

    正しいdocker-compose.ymlが~/2023temp/epg-plex/dataからコピーされていないようです。
    正しい手順を実行していないとこうなります。

  • shin より:

    simplelife さん

    自分の指定したフォルダ/epg-plex/ からスクリプトを実行しておりました。
    ~/2023temp/epg-plex/ からスクリプトを実行するとエラーが出ることはありませんでした。

    解決方法をご教授下さりありがとうございました。

  • simplelife より:

    shinさん

    解決してよかったです。
    確かに、フォルダepg-plexをどこにおいてもスクリプトが問題なく実行できるようにすれば、
    良かったんですが、作成時頭が回っていませんでした。
    次回は少し改良できると思います。

  • sss15 より:

    コメント失礼します。
    PX-Q3PE5を購入しインストールを行っているのですがスクリプト1〜4が終了しスクリプト5をすると本来px4video0〜7が表示されるはずがpx4video0〜3しか表示されず全チューナーが認識されません。
    またスクリプト6のインストールをしようとしたのですがPX-Q3PE5のバージョンで行うとMirakurunの作成に失敗し、PX-W3PE4/5のバージョンで行うと成功し起動します。
    その後はチャンネルスキャンも正常に行われるのですがチューナー数がGR×2 BS/CS×2しか認識されずうまくいきません。
    対処法をご存知の方はいらっしゃいますか?

  • simplelife より:

    sss15さん

    今までにない事例ですね。
    ドライバを認識した時点で、Wとして動作しているようです。
    私はPX-Q3PE4の2台にインストールしましたが、問題は起こっていません。
    PX-Q3PE5のハードトラブルか、ドライバのPX-Q3PE5対応に問題があると思います。
    前者の可能性が高いですが、PLEX社は非公式ドライバでの動作は保証しないと思います。
    一度PLEX社の手順で、windowsでインストールして確認するか、
    PLEX社に事情を話して交換してもらうか。

  • sss15 より:

    simplelife さん

    上の方の回答のように~/git/docker-mirakurun-epgstationmの中のdocker-compose.ymlを見てみたのですがこのようになっていたのでインストールは一応できている感じです
    devices:
    – /dev/px4video0:/dev/px4video0
    – /dev/px4video1:/dev/px4video1
    – /dev/px4video2:/dev/px4video2
    – /dev/px4video3:/dev/px4video3
    – /dev/px4video4:/dev/px4video4
    – /dev/px4video5:/dev/px4video5
    – /dev/px4video6:/dev/px4video6
    – /dev/px4video7:/dev/px4video7
    – /dev/bus:/dev/bus

    ですがbash 5-checktuner.shを入力すると
    crw-rw-r– 1 root video 234, 0 1月 26 17:49 /dev/px4video0
    crw-rw-r– 1 root video 234, 1 1月 26 17:49 /dev/px4video1
    crw-rw-r– 1 root video 234, 2 1月 26 17:49 /dev/px4video2
    crw-rw-r– 1 root video 234, 3 1月 26 17:49 /dev/px4video3
    このようになってしまいます、、、

    一度問い合わせをしてみようかなと思っています。

  • simplelife より:

    sss15さん

    5-checktuner.shの結果が4チューナーということです。PX-W3PE5ではないんですね。念のため。

    docker-compose.ymlは、きちんとインストールできていませんよ。
    4台しかチューナーが認識されていないのならば、6-install-w.shでなければ正常に動きません。

  • simplelife より:

    sss15さん

    もしかしたら、勘違いしてませんか。
    地上波2チューナー、BS2チューナーが、PX-W3PE5
    地上波4チューナー、BS4チューナーが、PX-Q3PE5
    です。

    とにかく、bash 5-checktuner.shで
    crw-rw-r– 1 root video 234, 0 1月 26 17:49 /dev/px4video0
    crw-rw-r– 1 root video 234, 1 1月 26 17:49 /dev/px4video1
    crw-rw-r– 1 root video 234, 2 1月 26 17:49 /dev/px4video2
    crw-rw-r– 1 root video 234, 3 1月 26 17:49 /dev/px4video3
    と表示されたら、bash 6-install-w.shを実行して下さい。
    なんで、bash 6-install-q.shを実行するんですか?

  • sss15 より:

    simplelifeさん

    私はPX-Q3PE5を購入したため4チューナーずつ表示されないとおかしいのですがスクリプト5で4つしか表示されないため質問をいたしました。
    Qシリーズを購入したのでそのとおりに最初スクリプト6でq.shを実行したのですがmirakurunが作成失敗していたので試しにw.shを実行したら起動できたのでなぜだろうと思ったので…

  • simplelife より:

    sss15さん

    PX-Q3PE5を購入されたのは、わかりました。
    4チューナーしか認識されない時点で異常ですので、そこで中断して、PLEX社に連絡しましょう。
    6のスクリプトを実施する条件を満たしていません。

  • paroparo より:

     当方、チューナー:PX-Q3PE5を使用しておりますが、新しいOS(ubuntu-22.04.3-desktop)でも問題なく8ch認識しておりますので、スクリプト(ドライバ)は、問題なくPX-Q3PE5対応していると思います。
    サーバー:富士通格安サーバー(約8年物)
    USBカードリーダー:SCR-3310/V2.0
     カーネル6.5.0-14-genericで動かなくなり、1月13日の緊急報告を知り、カーネルを6.2.0-39-genericに戻して録画しておりました。
     つい先日、6.5.0-14-generic対応のスクリプトが公開されたことを知り、(古いドライバの削除)から(新しいドライバのインストール)を実行し、カーネルを6.5.0-14-genericにアップデートしたところ、うまく動作しなかったため、4-tunerdriver202401.shを実行してみましたが、こちらもうまくいかなかったため、その他の問題もあったためOS(ubuntu-22.04.3-desktop)ごと入れ直しを行いました。
     さすがに、8ch同時録画までは試しておりませんが、地デジ4ch同時録画は出来ております。
     最後に、簡単に録画サーバーを構築できるスクリプトありがとうございました。

  • simplelife より:

    paroparoさん

    情報ありがとうございます。
    現状からのアップデートだめでしたか。
    私のところでは、2台のPX-Q3PE4で、問題なくアップデートできたのですが。
    何か、条件があるのかもしれません。
    他の方のアップデート情報が欲しいですね。

  • simplelife より:

    paroparoさん

    今気がついたのですが、(新しいドライバのインストール)のタイミングが違ってますね。
    文面どおりだと、6.2.0-39-genericのカーネルにドライバをインストールしているので、
    カーネルアップデートで、新たなドライバが組み込まれないかもしれません。
    私の書いた手順で(古いドライバの削除)と(新しいドライバのインストール)の間に
    (カーネルアップデート)を入れ忘れてました。
    修正します。

  • fumifumi より:

    素晴らしいスクリプトありがとうございます。
    問題なくインストールできたと思うのですが、録画確認の前にEPGStationでテレビが見れるか確認したのですが、何も映らない状態です。
    構成はPX-W3U4とミニPC(N100)です。
    ここを見るといろいろな情報があるので、ひとつひとつ試してみようと思います。
    録画環境の移行って大変ですね。

  • simplelife より:

    fumifumiさん

    EPGStationでテレビが映らないということは、正常じゃないですね。
    チェックとしては、
    (1)EPGStationの左タブで放映中を選んで、チャンネル名、番組名が見られますか?
    (2)番組名が見えるならば、クリックしてください。
    (3)開いた画面で「視聴」をクリックしてください。
    (4)番組が表示。
    上記どこで、問題が起こっていますか?

  • fumifumi より:

    simplelifeさん
    お返事ありがとうございます。
    (4)で何も表示されない症状です。
    どこから確認してよいか今はわからない状態です。
    少し気になったのは6番目のシェル実行時に、赤色のメッセージ(ワーニングかエラー?)がたまに出てしまっていましたが、とりあえず終了してサービスが立ち上がっていますが、これで大丈夫ですか?
    メッセージが流れていってしまっているので、なんのメッセージか確認できていないのですが。。。

  • simplelife より:

    fumifumiさん

    確かにこちらでも確かめたところ、再生できないですね。
    しかし、録画は問題なくできますので、録画して確認して下さい。
    録画したものの再生は、TSファイルでストリーミングできましたが、mp4にするとできませんね。
    私は、PlexMediaServerで再生しているので問題ないですが、EPGStationを使って再生するには問題です。
    前のカーネルでは、webMの再生ができていましたが、新しいカーネルではうまくいきません。
    もう少し調べる必要がありそうです。

  • fumifumi より:

    simplelifeさん
    確認ありがとうございます。
    録画を行ったところ、ファイル出力は確認できました。
    このファイルをWindows、Androidから再生しようとしたら、再生されなかったので、
    TSファイルのストリーミングを検討します。(PlexMediaServer)
    あとは、録画ファイル先を外付けHDD化、いままの予約を以降、できればKonomiTVの実装を行っていきます。
    相談に乗っていただき、ありがとうございました。
    当方、Ubuntu初心者なので、また困ったときは相談させてください。
    よろしくおねがいします。

  • fumifumi より:

    simplelifeさん
    コメントの連投申し訳ございません。
    PlexMediaServerでファイルが見つからない事象があり、VLCで再生を行ったところ真っ黒な画面のまま時間だけが進んでいました。
    上記のコメントの中で同事象の人がいたため、同じようにchecksignalで電波強度を確認してみましたが、No signalとなっていました。
    前のPC(Windows10)では録画出来ていたのでアンテナは問題ないはず。
    pcsc_scanではB-CASカードは認識しています。
    これからその他問題ないか確認してみます。

  • simplelife より:

    fumifumiさん

    no signalということですが、番組表が表示されるなら、問題ないはずです。
    TSからmp4に変換して、VLCで見てください。
    EPGStationで左タブで、「録画済み」を選び、録画されたものが表示されますから、
    それをクリックして開き、ENCODEを実行してください。
    そこで、できたmp4ファイルをVLCで開いてください。
    その結果を教えてください。

  • fumifumi より:

    simplelifeさん
    お返事ありがとうございます。
    EPGStationでENCODEを実行してみましたが、即終了し0バイトのファイルが作成されました。
    ログをみると”encodingFinishCommand: undefined”と表示されたので、エンコードが失敗しています。
    番組表が取得できていてチューナーとかは問題ないのであれば、エンコードの問題でしょうか?
    エンコード周りを確認してみようと思います。

  • simplelife より:

    fumifumiさん

    迷走してますね。

    ”encodingFinishCommand: undefined”というのは、
    EPGStationのconfig.ymlにencodingFinishCommandという項を
    記述していて、更に悪いことに定義されていないということです。
    config.ymlを開いて、「encodingFinishCommand:」を探して、
    その行を削除してください。
    自分で追加したんだから、わかりますよね。

    ただし、そのことと、ENCODEが即終了するのは、別の問題です。
    録画したTSファイルがおかしいですね。TSファイルでもVLCで再生できます。
    TSファイルがVLCで再生できない限り、その先に進んでも意味はありません。
    まず録画したTSファイルをVLCで再生できるまで、試行錯誤してください。

  • fumifumi より:

    simplelifeさん

    お返事ありがとうございます。
    迷走しています。。。
    「encodingFinishCommand:」について追加した記憶が無く、試行錯誤したときに追加したかと思いcofig.ymlを確認しましたが、ありませんでした。
    やはり、TSファイルの不正に出来ている観点で確認してみます。

  • simplelife より:

    fumifumiさん

    再度トラブル内容を読み直してみましたが、
    単に復号化ができていないと思えます。
    3-checkcard.shを実行して、以下の中で、Active: inactive (dead)を確認して下さい。

    ○ pcscd.socket – PC/SC Smart Card Daemon Activation Socket
    Loaded: loaded (/lib/systemd/system/pcscd.socket; disabled; vendor preset:>
    Active: inactive (dead)
    Triggers: ● pcscd.service
    Listen: /run/pcscd/pcscd.comm (Stream)

    こちらがdeadになっていないと
    dockerの中のカードリーダーが機能しません。

    おそらく、この問題だと思います。

  • fumifumi より:

    simplelifeさん

    お返事ありがとうございます。
    再起動前はActive: inactive (dead)だったのですが、再起動したところ、
    Failed to stop pcscd.socket: Unit pcscd.socket not loaded.
    Failed to disable unit: Unit file pcscd.socket does not exist.
    Unit pcscd.socket could not be found.
    となっていました。
    チューナーは
    crw-rw-r– 1 root video 236, 0 2月 1 06:52 /dev/px4video0
    crw-rw-r– 1 root video 236, 1 2月 1 06:52 /dev/px4video1
    crw-rw-r– 1 root video 236, 2 2月 1 06:52 /dev/px4video2
    crw-rw-r– 1 root video 236, 3 2月 1 06:52 /dev/px4video3
    と、なっているので、問題ないです。
    なので、B-CASカードリーダーが認識していないようでした、
    pcsc-toolsをインストールし、pcsc_scanを実行しても
    SCardEstablishContext: Service not available.
    となりました。
    再起動したらカードリーダーが機能していないので、そのあたりを確認してみます。

  • fumifumi より:

    simplelifeさん

    コメントの連投申し訳ございません。
    カードドライバーの再インストール(2-carddriver.sh)を行い、3-checkcard.shを確認したところActive: inactive (dead)であることを確認しました。
    その後録画をして録画ファイルをVLCで実行したところ、黒い画面のまま時間が進んでいる(以前の報告している状態)の状態でした。
    もう少し悩んでみます。

  • simplelife より:

    fumifumiさん

    >pcsc-toolsをインストールし、pcsc_scanを実行しても
    >SCardEstablishContext: Service not available.

    インストールの前提条件は、以下の通り
    前提条件
    Docker, docker-compose の導入が必須
    ホスト上の pcscd は停止する
    チューナーのドライバが適切にインストールされていること

    つまり、ホスト上のpcscdを停止することです。
    ホスト上のPCSCDを停めないと、docker内のpcscdがカードへアクセスできなくなるからです。

    余計なことをすればするほど、おかしくなりますよ。

  • fumifumi より:

    simplelifeさん

    お返事ありがとうございます。
    ホスト上のpcscdは停止しました。
    docker内で電波の強さを確認したところ

    root@434d2023274c:/app# checksignal –device /dev/px4video2 26
    device = /dev/px4video2
    C/N = 21.568099dB
    SIGINT received. cleaning up…
    root@434d2023274c:/app# checksignal –device /dev/px4video3 26
    device = /dev/px4video3
    C/N = 21.082522dB
    SIGINT received. cleaning up…
    root@434d2023274c:/app# checksignal –device /dev/px4video1 101
    device = /dev/px4video1
    C/N = 19.252510dB
    SIGINT received. cleaning up…
    root@434d2023274c:/app# checksignal –device /dev/px4video0 101
    Cannot open tuner device: /dev/px4video0

    となりました。
    /dev/px4video0がオープンできない原因は現時点では不明ですが、その他のチューナーは
    動作していそうです。

    docker内でpcscd_scanを実行すると

    root@434d2023274c:/app# pcsc_scan
    Using reader plug’n play mechanism
    Scanning present readers…
    Waiting for the first reader… /

    となりましたので、docker内のpcscdがカードへアクセスできないようです。

  • simplelife より:

    fumifumiさん

    録画が真っ暗なのは、復号化ができていないというのは、いいですよね。

    次に、まずホストでカードが読めるようにしてから、確認した後、停止します。
    こうすれば、後はdocker内からアクセスはできるようになります。

    現状は、ホストからもカードが読めていないから、動かないわけです。
    dockerの中は、既に動くことを確認してあるものがインストールしてあるので、
    そこで、チェックする必要はありません。

    まずは、ホストからきちんとカードが認識できるようにしてから、ホスト上で停止させてください。
    そうすれば問題なく動きます。

  • fumifumi より:

    simplelifeさん

    お返事ありがとうございます。
    ホスト上でカードを読めるようにし、
    ・「Japanese Chijou Digital B-CAS Card (pay TV)」・・・このメッセージを確認

    以下のコマンドで停止をする
    ・sudo systemctl stop pcscd.socket
    ・sudo systemctl disable pcscd.socket

    の認識であっていますでしょうか。
    状況が変わらないので、自分の認識が誤っているのでもう少し調べます

  • simplelife より:

    fumifumiさん

    もう一つ気になることがあります。
    私のスクリプトは、root以外のユーザーでしかテストしていません。
    rootでインストールしていなければ、いいですが。

  • fumifumi より:

    simplelifeさん

    ご指摘ありがとうございます。
    残念ながらrootでインストールは行っていません。
    手順通りに行っているはずです。
    なんの前提の環境が異なっていたのか?分からない状況です。
    Ubuntuの再インストールも検討しています。

  • sss15 より:

    コメント失礼します。
    先日チューナーがおかしく初期不良で交換をしてインストールをし直そうと思ってるのですが
    前回と違ってスクリプト2を実行するとB-CASカード(カードリーダー)が読み込まれなくなってしまい進めない状況になっています。
    また、一からインストールをやり直すには何か特別なことをしなければならないなどはありますか?
    スクリプト1から再度実行すれば良いのでしょうか。
    初歩的な質問ですいません。

  • sss15 より:

    連投失礼します。
    スクリプト2ではカードリーダーが読み込まれず成功画像のように表示されなくなってしまっていますがスクリプト3・4・5は正常に完了しています。
    スクリプト6では、docker-compose.ymlが~/2023temp/epg-plex/dataにコピーされていなかったので、同じ症状が起きている方と同じようにやってみましたがうまくいかずこのように表示されてしまいます。

    ERROR: for docker-mirakurun-epgstation_mirakurun_1 Cannot start service mirakurun: error gathering device information while adding custom device “/dev/dvb”: no such file or directory

    ERROR: for mirakurun Cannot start service mirakurun: error gathering device information while adding custom device “/dev/dvb”: no such file or directory
    ERROR: Encountered errors while bringing up the project.

  • sss15 より:

    すいません。
    今もう一度実行してみたらうまくいき無事mirakurunとepgstationが起動し、8チューナー認識するようになりました。
    やはり初期不良だったようです。

  • simplelife より:

    sss15さん

    その状況だと、まだB-CASカードが使えない状況ですね。
    録画しても映像は見えないかもしれません。

    他の方も、B-CASカードが読めいないと言っているので、
    つい最近2のスクリプトで問題が発生しているのかも
    しれません。

    録画して、正常でない場合は、ここのコメントください。

  • fumifumi より:

    simplelifeさん

    BIOSの出荷状態にリセット、Ubuntuのクリーンインストール’(インストール時に作成したユーザで)して最初から行いましたが、事象は変わりませんでした。録画が真っ暗で復号化ができてい状態です。
    3-checkcard.shをでActive: inactive (dead)であることを確認。チューナーも4つ認識しています。
    もう少し情報を収集します。
    いろいろと有難うございました。

  • simplelife より:

    fumifumiさん

    再インストールでも駄目ですか。原因としては、2つ考えられますね。
    (1)カードの問題
    (2)チューナーの問題

    (1)は、
    2のスクリプトで、
    Japanese Chijou Digital B-CAS Card (pay TV) が確認できて、
    3のスクリプトで
    Active: inactive (dead) が確認できていれば、
    これ以上することはありません。

    (2)は、
    同時に4つの地上波の番組を録画してみてください。
    4つとも真っ黒ならば、なすすべはないですね。

  • fumifumi より:

    simplelifeさん

    (1)については確認できています。また、別のHDDレコーダーにB-CASカードを挿入してTVが見れることも確認しています。(カードは問題なし)
    (2)の録画もダメでした。ただし、チューナーとしては元々の録画環境(Windows10)で正しく録画できているので、問題ないと思われます。
    初めてのLinuxでの録画環境構築はいったん諦めて、情報収集を行います。
    いろいろありがとうございました。

  • simplelife より:

    fumifumiさん

    残念です。今まで聞いたことのない症状です。
    もし時間があれば、PC,TunerCard,カードリーダーの型番を教えてください、

  • simplelife より:

    fumifumiさん

    もう一つ、時間があれば、以下を調査して下さい。
    Windowsで以下を実行して下さい。
    以下のサイトで、
    https://app.h3z.jp/uploader/main/
    下の方のファイル一覧からMulti2Decを検索してください。
    Multi2Dec.rarをダウンロードしてください。
    rarを開くWinrar等のソフトをMicrosoft Storeからダウンロードして、
    Multi2Dec.rarを解凍してください。
    その中の、Multi2DecWinを実行してください。
    このアプリで、TSファイルの復号や状態確認ができます。
    VLCで見えないファイルを、復号して問題ないか確認してください。

  • fumifumi より:

    simplelifeさん

    PCは自作PCとなっています。チューナーはPlex W3U4です。
    PCではカードリーダーを使用していません。
    今回使用したカードリーダーはIO DATAのUSB-ICCRW2になります。
    Multi2Decですがサイドバイサイド構成が正しくないとエラーになり実行できませんでした。
    よろしくお願いします。

  • fumifumi より:

    simplelifeさん

    連投申し訳ございません
    Multi2DecWinが実行できない中、いままで復号化が出来ないだけと思いつきPC上のTVTESTで再生してみると、再生出来ました!
    Ubountu上のインストール内容は正しかったですね。あとは復号化が出来ないとTVTEST限定となり使い勝手が悪いので、Softcas等で復号化してみるなど構成の変更が必要なんですね。
    カードリーダーの変更でうまくいけばいいんですけどね。何を機器にすればよいのか??ですね。

  • simplelife より:

    fumifumiさん

    ICカードリーダーは、SCR3310v2.0です。

  • fumifumi より:

    simplelifeさん

    すみません。
    家にあったカードリーダー(確定申告用)では出来ないってことですね。
    SCR3310v2.0を購入して確認してみます。

  • simplelife より:

    fumifumiさん

    SCR3310v2.0は、B-CASカード御用達です。

  • simplelife より:

    fumifumiさん

    ただし、
    2のスクリプトで以下を確認しているんですよね。
    Japanese Chijou Digital B-CAS Card (pay TV)

    そして、3のスクリプトで以下を確認していますよね。
    Active: inactive (dead) 

    だとすると、カードリーダーは正常に動作していると思われます。
    本当に、USB-ICCRW2とSCR3310v2.0との違いなのか、分からない状態です。

    もし、SCR3310v2.0がだめでも、私を恨まないで下さい。
    よろしくお願い致します。

  • fumifumi より:

    simplelifeさん

    2のスクリプト、3のスクリプトで確認はしています。
    SCR3310v2.0は自己責任で購入します。
    素晴らしいスクリプトを公開していただいているのに、恨むことはありませんよ。

  • あんどうりん より:

    大変有意義なブログで以前から参照させていただいております。
    最近/rootの容量が足りなくなってしまったこともあり、新たに組み直してみているのですが、少々手こずっております。

    現在、ubuntuを普通にインストールするとカーネル6.5.0-15になってしまうようで、4-tunerdriver202401.shの最後に

    pkg: パッケージ px4-drv-dkms の処理中にエラーが発生しました (–install):
    installed px4-drv-dkms package post-installation script subprocess returned error exit status 10
    処理中にエラーが発生しました:
    px4-drv-dkms
    となってしまいます。

    ハードウエアの環境のせいなのか、カーネルをダウングレードしても、下のバージョンからアップグレードしても、なぜか6.5.0-14にするとネットワークが使えなくなってしまう事象に遭遇しており、どうにもなりません。
    6.2.0-39-genericで行こうとすると、現在のスクリプトでは駄目なようで、以前のスクリプトをサイド公開していただくことはできないでしょうか?

  • simplelife より:

    「あんどうりん」さん

    ドライバのインストールでエラーですか。
    後で調べてみます。

    以下に前のスクリプトを掲載します。

    4-tunerdriver.shの中身は、以下です。

    #!/bin/bash
    cd ~/git
    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/
    cd ../
    sudo cp -a ./ /usr/src/px4_drv-0.2.1
    sudo dkms add px4_drv/0.2.1
    sudo dkms install px4_drv/0.2.1
    read -p “ドライバがインストールされました。enterキーを押すとリブートします。”
    sudo reboot

  • fumifumi より:

    simplelifeさん

    いろいろ相談にのっていただきありがとうございます。
    SCR3310v2.0を購入し録画したところ、無事にPCで再生できました。
    カードリーダーが正常に認識しても、B-CASが正しく読める機器と読めない機器があるんですね。
    勉強になりました。

  • simplelife より:

    fumifumiさん

    そうですか。良かったですね。
    Amazonでは、SCR3310v2.0は、B-CAS・住基カード対応で売ってます。
    こちらも参考になりました。カード認識とB-CAS対応は違うことがわかりました。

  • コメントを残す

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

    このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください