SAMPLE GALLERY

  • PX-W3PE4チューナー+非公式版ドライバー
  • Docker+PX-W3PE4+Mirakurun+EPGStation

    「2021年初秋版 15分でできる自宅録画サーバー(Ubuntu 20.04)」ー> 書いてある通りに実行してみました
    動いています
    Dockerで録画(更新が早く再現性が悪くなりました)
    このサイトを参考(コピペです)にしています

    たまたま記事を読みインストールしてみたら・・・
    使っていないPC:ubuntu desktop 20.04 LTS
    CPU:Celeron
    メモリ:8G
    TVチューナー:PX-W3PE4
    非公式版ドライバーまでインスト済みであること
    このPCはディスクトップですがリモートで動かしています

    Docker / Docker Compose のインストール

    参考サイト-1
    参考サイト-2
    ------------ Docker,Docker-Composeをインストールをする 2021-3-26 ------------
    # セットアップ用スクリプトを導入
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh ./get-docker.sh
    #自動的にDocker Engineも起動させる
    sudo systemctl enable docker
    #Docker Compose のセットアップ
    #現時点のバージョンのバイナリをダウンロードし、パスの通った場所に設置します
    curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose

    #グループ確認。グループを作成するなら sudo groupadd docker
    cat /etc/group | grep docker
    #グループに入ります
    sudo usermod -aG docker $USER
    #グループに入ったら、1度ログアウトして入り直すか下記を実行
    newgrp docker
    #Dockerのバージョン確認
    docker-v
    #テストイメージを試します(下記を実行)。ダウンロードして、コンテナー内で実行します
    #コンテナーが起動すると、メッセージを表示して終了します
    #DockerのSign Upがまだなら実行できません
    docker run hello-world

    #docker-composeのバージョン確認
    docker-compose --version
    sudo docker-compose build


    #Mirakurunのインストール前提条件
    #Docker, docker-compose の導入が済んでいる
    #ホスト上の pcscd は停止する
    #チューナーのドライバが適切にインストールされていること

    # docker-mirakurun-epgstation インストールガイド
    #node,python,gcc,ffmpegをインストールをする
    #ホストマシン上のpcscdは停止。Mirakurunコンテナ内で管理
    sudo systemctl stop pcscd.socket
    sudo systemctl disable pcscd.socket

    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.sample.yml 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

    #docker-compose.ymlの設定を適宜変更する。devicesの項目を注意する。設定を表示
    nano docker-compose.yml
    #チューナー設定表示
    nano mirakurun/conf/tuners.yml
    #チャンネル設定表示
    nano mirakurun/conf/channels.yml

    docker-compose run --rm -e SETUP=true mirakurun

    #起動(時間がかかります)
    sudo docker-compose up -d


    #ブラウザから確認します
    ローカルからmirakurunにアクセス http://192.168.3.4:40772/
    ローカルからEPGStationにアクセス http://192.168.3.4:8888/#/

    #停止から更新をします
    sudo docker-compose down
    #更新
    #mirakurunとdbを更新
    sudo docker-compose pull
    # epgstationを更新
    sudo docker-compose build --pull
    # 最新のイメージを元に起動
    sudo docker-compose up -d
    # status表示
    docker-compose ps


    ------------- end --------------
    # アンインストール (古いバージョンがインストールされている場合)
    # Docker CEを削除する
    sudo apt-get purge docker-ce
    # dockerイメージやコンテナも削除する
    sudo rm -rf /var/lib/docker
    sudo rm /usr/local/bin/docker-compose
    # Dockerを使ってて自動でインストールされたもう不要なパッケージを削除する
    //sudo apt-get remove docker docker-engine docker.io containerd runc
    sudo apt-get autoremove
    sudo apt-get autoclean
    sudo groupdel docker

    # Docker のインストール
    sudo curl -sSL https://get.docker.com/ | CHANNEL=stable sh
    # dockerの実行確認
    sudo systemctl status docker

    # ユーザーで Docker コマンドを利用可能にする
    #グループに追加しておきます
    sudo usermod -aG docker $USER
    newgrp docker

    # Docker Compose のインストール
    -----------------------
    最新のバージョンを確認
    https://github.com/docker/compose/releases
    1.28.0-rc1の部分を最新のバージョンに書き直す
    -----------------------
    sudo curl -L "https://github.com/docker/compose/releases/download/1.28.0-rc1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
    # 確認
    docker version
    20.10.0

    docker-compose version
    1.28.0-rc1

    Docker-Mirakurunのインストール

    元サイトはここです
    ホスト上の pcscd は停止が条件。コンテナ内で管理しているようです

    mkdir docker
    cd docker
    git clone https://github.com/l3tnun/docker-mirakurun-epgstation -b vaapi
    cd docker-mirakurun-epgstation

    docker-compose.ymlの変更


    docker-compose.ymlを表示,ダウンロード
    エディタで編集をします(位置-> ~/docker/docker-mirakurun-epgstation/)
    nano docker-compose.yml

    変更の箇所

    19行目からのデバイスの部分
    devices:
    - /dev/px4video0:/dev/px4video0
    - /dev/px4video1:/dev/px4video1
    - /dev/px4video2:/dev/px4video2
    - /dev/px4video3:/dev/px4video3
    - /dev/bus/usb/00x/00x # card readerカードリーダのUSBポート
    #restart: always

    24行目のカードリーダのUSBポートを調べて書き込みます
    'lsusb'コマンドを打ち込みますと下記のような表示がでます
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 004: ID 0511:023f N'Able (DataBook) Technologies, Inc. PXW3PE4
    Bus 001 Device 003: ID 08e6:3437 Gemalto (was Gemplus) GemPC Twin SmartCard Reader
    Bus 001 Device 002: ID 046d:c534 Logitech, Inc. Unifying Receiver
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    'GemPC Twin SmartCard Reader'の行から書き直します
    - /dev/bus/usb/001/003 # card readerカードリーダのUSBポート

    全部の'restart: always'の行をコメントアウト(3箇所の先頭の'#'を削除)します
    現状、録画されたファイルは下記のホルダーの中です
    ~/docker/docker-mirakurun-epgstation/recorded

    録画ファイル保存先
    また録画ファイルはプロジェクトフォルダ内の./recordedに保存されます
    保存先を別HDDにしたい場合は、docker-compose.ymlの./recordedを変更することで保存先を変更可能
    ./recorded:/usr/local/chinachu/recorded

    tuners.yml チューナー設定

    エディタで編集をします
    cd ~/docker/docker-mirakurun-epgstation/mirakurun/conf/
    nano tuners.yml

    tuners設定
    sudo EDITOR=nano mirakurun config tuners

    チューナ設定を表示,ダウンロード

    (注意)なお、recpt1コマンドオプションの”–lnb 15”はBS/CSチューナーの15V給電なので、今まで指定せずに問題なく動作している場合は削除して良いです

    channels.yml チャンネル設定

    エディタで編集をします(位置-> ~/docker/docker-mirakurun-epgstation/mirakurun/conf/)
    nano channels.yml

    channels設定(関東圏)
    全部入っています。ここから使うチャンネルをチョイスします
    地デジ・BS・CS設定ファイルを表示
    自分用ではこんなものです
    地デジ・BS設定ファイルを表示
    ダウンロード

    コンテナ起動

    作業をします(ここは時間がかかります
    cd ~/docker/docker-mirakurun-epgstation/
    sudo docker-compose pull && docker-compose build --no-cache && docker-compose up -d

    -------ここでエラーがでた場合(Couldn't connect to Docker daemon - you might need to run `docker-machine start default`.)---------
    グループに追加したら実行が出来ました。最初から追加しておきましょう
    sudo usermod -aG docker $USER
    newgrp docker
    -----------------------------

    プロンプトが返ってきても、MirakurunとEPGStationが番組表を読み込むまでは利用できない

    EPGデータ取得状況(ローカルアドレス 192.168.3.4)
    http://192.168.3.4:40772/api/channels
    途中で開けてみると数は少ないですが取得できています
    失敗は全部の箇所でデータが空です。「"services":[]」の大括弧が空です
    {"type":"GR","channel":"16","name":"MX","services":[]}
    この場合は設定ファイルを見直しましょう

    EPGStationを開く
    http://192.168.3.4:8888
    取得できていなくても成功なら歯抜けで、番組が表示されています

    コンテナを起動する時
    sudo docker-compose pull
    sudo docker-compose build --no-cache
    sudo docker-compose up -d

    停止は
    sudo docker-compose down

    再起動
    sudo docker-compose restart

    コンテナの一覧表示
    sudo docker-compose ps

    ステータスを確認
    docker ps -a

    サーバーを再起動させるとEGPStarionに入れなくなる

    確認と'docker-compose'のリセットで動きます cd ~/docker/docker-mirakurun-epgstation/
    sudo docker-compose ps
    動いているがEGPStationには入れなかった
     Name   Command            State   Ports
    --------------------------------------------------------------------------------
    epgstation  /bin/sh -c npm start     Exit 137             
    mirakurun  /bin/sh -c /etc/init.d/pcs   Up     0.0.0.0:40772->40772/tcp
           ...                              
    mysql    docker-entrypoint.sh mysql  Exit 0             
           ...                              

    再起動をする
    sudo docker-compose restart
    結果
    Restarting epgstation ... done
    Restarting mysql ... done
    Restarting mirakurun ... done
    これで入れるようになり番組表が見れるようになった

    ログの確認
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Operator/stream.log
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Operator/access.log
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Operator/system.log
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Service/stream.log
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Service/access.log
    ~/docker/docker-mirakurun-epgstation/epgstation/logs/Service/system.log

    inserted by FC2 system