2019年版自宅録画サーバーのソフトウェア(2)

PLEX社製TVチューナーの非公式ドライバー

この内容に関しては、以下のサイトで詳しく紹介されている。

PLEX社製TVチューナーの非公式Linuxドライバインストール方法

非公式ドライバだけでなく、録画コマンドrecpt1_px4や録画制御サービスmirakurunまでのインストール手順が含まれている。

私のところでは、非公式ドライバでPX-Q3PE4、PX-Q3U4の2機種で動作確認をしている。

録画用ディスクの設定

録画用ディスクの設定に関して、具体的な例で説明をする。

  • ディスク名:data1
  • 録画フォルダ:tv
  • mp4保存フォルダ:cinema、drama、anime、temp

録画用ディスクを接続して、「ディスク」アプリを開く。

ディスクアプリの中から、録画ディスクを選択し、メニューを表示する。

メニューから「ファイルシステムを編集」を選ぶ。

ラベルを「data1」として、「変更」ボタンをクリックする。

次に、メニューから「マウントオプションを編集」を選ぶ。

識別名で、「LABEL=data1」を選び、「OK」ボタンをクリックする。

この設定により、録画ディスクは「/mnt/data1」としてアクセスできる。

録画用フォルダ、mp4用フォルダのアクセス権の設定を行う。

sudo mkdir /mnt/data1/tv
sudo mkdir /mnt/data1/anime
sudo mkdir /mnt/data1/drama
sudo mkdir /mnt/data1/cinema
sudo mkdir /mnt/data1/temp
sudo chmod -R 777 /mnt/data1
sudo chown -R nobody:nobody /mnt/data1

EPGStation

EPGStationをインストールする前に、mysqlをインストールする。
EPGStationのルール記述で、正規表現を使いたい場合mysqlが必要となる。
現在mysqlのオリジナルコードの作成者が開発しているmysql派生が、mariaDBである。

sudo yum -y install mariadb mariadb-server
sh -c "echo character-set-server=utf8 >> /etc/my.cnf"
systemctl enable mariadb.service
systemctl start mariadb.service

mariaDBが起動したら、初期設定を行う。

mysql_secure_installation
mysql -u root -p

初期設定では、パスワードを2回入力したら、後はリターンキーを押すだけで問題ない。
その後は、以下のように設定する。

MariaDB [(none)]> CREATE DATABASE epgstation CHARACTER SET utf8;
MariaDB [(none)]> GRANT ALL ON epgstation.* TO epgstation@localhost IDENTIFIED BY 'mirakurun';
MariaDB [(none)]> exit

DB名・ユーザー名がepgstation、パスワードがmirakurunに設定された。これで、EPGStationをインストールする準備が完了。

EPGStationのインストールは以下のサイトを参照。

Linux / macOS 用 セットアップマニュアル

インストールが完了したら、設定ファイルを編集する。

cd ~/EPGStation/config
gedit config.json

ファイルの先頭部分を以下のように書き換える。

{
    "readOnlyOnce": false,
    "serverPort": "8888",
    "mirakurunPath": "http+unix://%2Fvar%2Frun%2Fmirakurun.sock/",
    "dbType": "mysql",
    "mysql": {
    "host": "localhost",
    "port": 3306,
    "user": "epgstation",
    "password": "mirakurun",
    "database": "epgstation",
    "connectTimeout": 20000,
    "connectionLimit": 10
     },

    "ffmpeg": "/usr/local/bin/ffmpeg",
    "ffprobe": "/usr/local/bin/ffprobe",

    "recorded": "/mnt/data1/",
    "recordedTSDefaultDirectory": "/tv/",
    "recordedEncodeDefaultDirectory": "/temp/",
    "recordedFormat": "%TITLE%_%YEAR%-%MONTH%-%DAY%",

    "maxEncode": 1,
    "encode": [
        
        
            "name": "qsv",
            "cmd": "/bin/bash %ROOT%/config/enc-qsv.sh",
            "suffix": ".mp4",
            "default": true
        },
 
            "name": "qsv-main",
            "cmd": "/bin/bash %ROOT%/config/enc-qsv-main.sh",
            "suffix": "-main.mp4"
        },
        
            "name": "qsv-sub",
            "cmd": "/bin/bash %ROOT%/config/enc-qsv-sub.sh",
            "suffix": "-sub.mp4"
        
    ],

修正は、”encode”まで、それ以下修正する必要はない。
さらに同じ「config」フォルダに、以下の3つのファイルを追加する。
enc-qsv.sh
enc-qsv-main.sh
enc-qsv-sub.sh
以下に示す。
enc-qsv.sh

#!/bin/bash
# epgstation-qsv
export LIBVA_DRIVERS_PATH=/opt/intel/mediasdk/lib64
export LIBVA_DRIVER_NAME=iHD
export MFX_HOME=/opt/intel/mediasdk
export PKG_CONFIG_PATH=/opt/intel/opencl:

$FFMPEG -y -i "$INPUT" -init_hw_device qsv=hw -filter_hw_device hw -c:v h264_qsv -vf hwupload=extra_hw_frames=64,format=qsv -b:v 4M -maxrate 8M  -acodec aac  -loglevel error "$OUTPUT"

enc-qsv-main.sh

#!/bin/bash
# epgstation-qsv-main
export LIBVA_DRIVERS_PATH=/opt/intel/mediasdk/lib64
export LIBVA_DRIVER_NAME=iHD
export MFX_HOME=/opt/intel/mediasdk
export PKG_CONFIG_PATH=/opt/intel/opencl:

$FFMPEG -dual_mono_mode main -y -i "$INPUT" -init_hw_device qsv=hw -filter_hw_device hw -c:v h264_qsv -vf hwupload=extra_hw_frames=64,format=qsv -b:v 4M -maxrate 8M  -acodec aac  -loglevel error "$OUTPUT"

enc-qsv-sub.sh

#!/bin/bash
# epgstation-qsv-sub
export LIBVA_DRIVERS_PATH=/opt/intel/mediasdk/lib64
export LIBVA_DRIVER_NAME=iHD
export MFX_HOME=/opt/intel/mediasdk
export PKG_CONFIG_PATH=/opt/intel/opencl:

$FFMPEG -dual_mono_mode sub -y -i "$INPUT" -init_hw_device qsv=hw -filter_hw_device hw -c:v h264_qsv -vf hwupload=extra_hw_frames=64,format=qsv -b:v 4M -maxrate 8M  -acodec aac  -loglevel error "$OUTPUT"

ファイルのプロパティで、実行可能にする。

ここまで設定を行った後、EPGStationの自動起動の設定を行い、起動する。
まず、EPGStationのフォルダに移動する。

cd ~/EPGStation

次に、自動で起動するための設定を行う。

sudo npm install pm2 -g
pm2 startup
[PM2] Init System found: systemd
[PM2] To setup the Startup Script, copy/paste the following command:
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u euser --hp /home/euser

CentOSの場合、例えばユーザーがeuserとすると、上記の実行結果になる。
そこで、指示通りにコマンドを実行する。

sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u euser --hp /home/euser

これで、自動起動の準備は完了である。EPGStationを起動して、自動起動を設定する。

pm2 start dist/server/index.js --name "epgstation"
pm2 save

EPGStationの起動は、ブラウザで「http://localhost:8888」を確認する。

munin

CPUの負荷やHDDの温度・容量を管理するために、muninをインストールする。

sudo yum -y install httpd
sudo yum -y --enablerepo epel install munin

サーバーに名前をつけて認識するために、以下の設定をする。

gedit /etc/munin/munin-node.conf

例えば、サーバーの名前をtvserverとするならば、以下のように変更する。

(修正前)#host_name localhost.localdomain
(修正後)host_name tvserver

muninの自動起動を設定し、起動する。

sudo systemctl enable munin-node
sudo systemctl start munin-node
sudo systemctl enable httpd
sudo systemctl start httpd

muninを確認するために、ブラウザで「http://localhost/munin/」を確認する。

上記の表示で、HDDの温度を常時確認できる。

samba

WindowsやLinuxから、簡単にファイルをコピー・削除するために、sambaをインストールする。

sudo yum -y install samba

sambaの設定をする。

sudo gedit /etc/samba/smb.conf

smb.confを以下のように書き換える。

[global]
	workgroup = workgroup
	security = user

	passdb backend = tdbsam

	printing = cups
	printcap name = cups
	load printers = no
	disable spoolss = yes

[tv]
  comment = tv folder
  path = /mnt/data1/tv
  guest ok = yes
  guest only = yes
  writable = yes
  create mode = 0777
  directory mode = 0777

[anime]
  comment = anime folder
  path = /mnt/data1/anime
  guest ok = yes
  guest only = yes
  writable = yes
  create mode = 0777
  directory mode = 0777

[cinema]
  comment = cinema folder
  path = /mnt/data1/cinema
  guest ok = yes
  guest only = yes
  writable = yes
  create mode = 0777

[drama]
  comment = drama folder
  path = /mnt/data1/drama
  guest ok = yes
  guest only = yes
  writable = yes
  create mode = 0777

[temp]
  comment = temp folder
  path = /mnt/data1/temp
  guest ok = yes
  guest only = yes
  writable = yes
  create mode = 0777

以下のコマンドを実行し、設定を確認する。

sudo testparm

ユーザ(例としてeuser)を登録して、自動起動を設定し、sambaを起動する。

sudo pdbedit -a euser
sudo systemctl enable smb nmb
sudo systemctl start smb nmb

別のWindowsやLinuxのファイル管理ツールでアクセスして、ファイルのコピー・削除を確認する。

xrdp

Windows10のPCからリモートデスクトップを使うために、インストールする。

sudo yum -y --enablerepo=epel install  xrdp tigervnc-server
sudo systemctl enable xrdp 
sudo systemctl start xrdp

WindowsのPCから、「Windowアクセサリ>リモートデスクトップ接続」を使って確認する。

Plex Media Server

録画を視聴するために、Plex Media Serverをインストールする。

以下のサイトから「Fedora/CentOS/SUSE – Intel/AMD 64-bit」を選択してダウンロードする。

Plex Media Serverのダウンロードサイト

Plex Media Serverをインストールし、自動起動を設定し、起動する。

sudo rpm -ivh plexmediaserver-xxxxx.rpm
sudo systemctl enable plexmediaserver
sudo systemctl start plexmediaserver

確認をするために、ブラウザで「http://localhost:32400/web/index.html#」にアクセスする。

以上で完成。

2019年06月27日 | Posted in 電脳:録画サーバー | タグ: , , No Comments » 

関連記事

コメントを残す

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

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