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

2019年版自宅録画サーバーの構築方法を紹介する。

2019年版自宅録画サーバーの優位性

2019年6月現在、この録画サーバーが優れている点は、コストパフォーマンスと信頼性。

  • コストパフォーマンス
    • Intelの第6世代CPU(skylake)を使うので、CPUが安価で入手できる。(ヤフオクでi3-6100は、7000円程度)
    • 録画サーバーで最も重要なtsからmp4へのトランスコード速度を、Intelのqsv(Quick Sync Video)技術を使うことで6倍速にできる。(1サーバーで1日30番組程度は問題なく録画・トランスコードできる。)
    • トランスコードによって、ファイルサイズを1/4にでき、4台のディスクコストを1台で賄える。
    • 利用するすべてのソフトウェアは、フリーで、安定稼働する。
    • リモートデスクトップを使うことで、運用時キーボード・マウス・ディスプレイが必要ない。
  • 信頼性
    • サーバーの監視は、muninを利用してリアルタイムで行っている。
      • HDDの温度管理(50℃以下)を行い、トラブルを未然に防ぐ。
      • CPU負荷も記録に残るので、負荷分散の対策も行える。
      • ディスク容量は、90%を越えるとアラートで知らせてくれる。
    • すべてのソフトウェアは、半年以上稼働していて、大きなトラブルは起こっていない。
      • PLEX社製チューナーカード非公式ドライバは、公式より安定している。
        さらに、外付け、内蔵どちらも、今まで問題は発生していない。

構築概要

今回利用するソフトウェアの一覧は、以下の通り。

項目名前備考
OSCentOS7.4(Gnome Desktop)
ffmpeg、qsvIntel Media Server Studio2018R2
前準備セキュリティ、カードリーダ
チューナードライバ非公式ドライバ
録画ディスク設定
録画制御mirakurun
録画予約epgstationブラウザから利用
サーバー監視muninブラウザから利用
ファイルサービスsambaWindowsから利用
リモートデスクトップxrdpWindowsから利用
録画視聴plex media serverブラウザから利用

CentOS 7.4

CentOS 7.4を利用するのは、Intel qsvを利用するためである。Intel qsvに対応したffmpegを作るために、Intel Media Server Studio 2018R2が必要で、推奨OSがCentOS7.4となっている。他のLinuxでも利用できるとは思うが、余計な手間はかけない方針で、CentOS7.4を選択している。

CentOS7.4を簡単にインストールするために、インストール先はSSD、インストールメディアはUSB接続のMicroSDメモリーカードリーダーの使用をおすすめする。

インストールの詳細は、以下の記事を参照。
2018年版 CentOS 7.4 SDメモリーカードを使ってインストール

上記記事では、SDメモリとSDメモリーカードリーダーを使用している。しかし、2019年6月現在は、8GBのMicroSDメモリーカードとMicroSDメモリーカードリーダーの利用をおすすめしたい。

CentOS 7.4のインストールで、ポイントは以下の2つ。

Gnome Desktopの選択

ソフトウェアの選択をクリックする。

Gnome Desktopを選ぶ。「スマートカードサポート」だけ外す。

ユーザーがsudoコマンドを使えるようにする

ユーザー登録時必ず「このユーザーを管理者にする」をチェックする。

Intel Media Srver Studio 2018R2

Intel Media Server Studio 2018R2をインストールして、qsv対応のffmpegを作る。

リリース当初は、Community Editionというフリーバージョンがあったが、2019年6月現在は、Professional Editionの30日評価版だけが公開されている。

利用方法は、以下のサイトに詳細説明がある。

Intel Media Server Studio – Professional Edition 2018 R2 と FFmpeg 4.1 と Linux (CentOS 7.4 1708) で QSV (Quick Sync Video)

録画サーバー構築の前準備

録画サーバーを構築するための前準備を行う。

実施する内容は、以下の通り

  1. SELinuxの無効化
  2. firewalldの無効化
  3. 開発環境のインストール
  4. epelリポジトリの追加
  5. nkf(文字コード変換ツール)のインストール
  6. dkms(カーネルモジュール自動生成ツール)のインストール

SELinuxは、rootの権限を制限する。これは、外部から侵入されてrootのパスワードをハッキングされても被害を最小限にできる、という効果がある。ただし、SELinuxによってトラブルが発生することもあり、無効化する方が利用上簡単になる。

そもそも、自宅のLANでは、ルーターの設定をきちんと行えばSELinuxもfirewalldも必要ない。また、サーバー内のコンテンツを削除されたり、盗まれたとしても、TV番組の録画であれば被害は小さいと考える人も多いだろう。

SELinuxの無効化
sudo gedit /etc/selinux/config

以下のようにファイルを修正する。

変更前) SELINUX=enforcing
変更後) SELINUX=disabled

変更後、リブートし、以下のコマンドで確認する。

getenforce

以下のように表示されれば、設定完了。

Disabled
firewalldの無効化
sudo systemctl stop firewalld
sudo systemctl disable firewalld
開発環境のインストール
sudo sudo yum install wget git unzip bzip2 gcc gcc-c++ make autogen automake kernel-devel patch perl-ExtUtils-MakeMaker libtool openssl-devel boost-devel cmake
epelリポジトリの追加
sudo yum -y install epel-release

epelリポジトリは、一時的な使用に変更する。

sudo gedit /etc/yum.repos.d/epel.repo

以下のようにファイルを修正する。

変更前) enabled=1
変更後) enabled=0
nkfとdkmsのインストール
sudo yum -y --enablerepo=epel install nkf dkms

カードリーダーのインストール

USBでカードリーダーを接続して、以下のコマンドでインストールする。

sudo yum -y install ccid pcsc-lite-devel
mkdir ~/src
cd ~/src
wget http://search.cpan.org/CPAN/authors/id/W/WH/WHOM/pcsc-perl-1.4.13.tar.bz2
tar xvjf pcsc-perl-1.4.13.tar.bz2
cd pcsc-perl-1.4.13
perl Makefile.PL
make
sudo make install
cd ~/src
wget https://launchpad.net/ubuntu/+archive/primary/+files/pcsc-tools_1.4.23.orig.tar.gz
tar xvzf pcsc-tools_1.4.23.orig.tar.gz
cd pcsc-tools-1.4.23
make
sudo make install
sudo systemctl enable pcscd
sudo systemctl start pcscd

正常にインストールできたかは、以下のコマンドでチェックできる。

pcsc_scan

以下のように表示されれば、成功。

Japanese Chijou Digital B-CAS Card (pay TV)

arib25ライブラリのインストール

arib25ライブラリは、以下のコマンドでインストールする。

mkdir ~/git
cd ~/git
git clone https://github.com/stz2012/libarib25.git
cd libarib25/
cmake .
make
sudo make install
sudo sh -c "echo /usr/local/lib64 > /etc/ld.so.conf.d/usr-local-lib.conf"
ldconfig

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

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

関連記事

コメント3件

  • TL より:

    Intel Media Srver Studio 2018R2 が公開修了していると思うのですが、この部分の代替方法はありませんでしょうか?

  • simplelife0530 より:

    TLさん、
    Intelは、Media-SDKをオープンソースにしました。https://github.com/Intel-Media-SDK/MediaSDK/releases

    CentOSではなく、UbuntuでMedia-SDKを使いqsvにした記事がありました。Ubuntu 18.04 + mirakurun + EPGStation 構築 QSVエンコード編

    現在、「2020年の自宅録画サーバー環境」を検討中ですが、いよいよ第6世代CPUとはお別れしそうです。
    動作確認は、第8世代CPUでCentOS7.6、i3-8100で行いました。libx264でも3-4倍速でトランスコードができました。つまりqsvなしでそこそこ使えるということです。この構成の方が、制約なく作れるので、これから録画サーバーを作る人には、おすすめです。これに、Intel-Media-SDKのオープンソースを使って、qsvが使えれば、さらに性能向上が見込めます。

    ということで、これから自宅録画サーバーを組み立てる人は、第8世代CPUでシステムを構築しましょう。そして,最初はlibx264、そのうちqsvと考えれば、いいと思いますよ。詳しくは、「2020年自宅録画サーバーの準備」という記事で11月中にお知らせします。

  • TL より:

    返信ありがとうございます。Media-SDKをビルドを試みているのですがなかなかなので、ハードウェアをとりあえず揃えたので、もう少し試行錯誤してみます。Ubuntuの方も参考にさせていただきます。

    「2020年の自宅録画サーバー環境」楽しみにしています、月内に記事を書かれるようなのでそちらでのチャレンジも考えます。

  • コメントを残す

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

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