minidlnaにて動画コンテンツを登録する話

現在、お家のネットワーク上においてDLNAで音楽配信をしております。
今回、これのDLNAサービスに動画コンテンツを含めたいと思います。
その方法を簡単にまとめましたので作業メモを残しておきます。

minidlnaの実行環境

DLNAサーバはminidlnaを用いています。

bash-5.1# minidlnad -V
Version 1.3.0

メディア情報をRAIDに構えたサーバ(gitlab)においてDockerでプロセス管理しています。

詳しくは… あ、QNAPのContainerStationでのminidlnaサーバ構築の記事はあるけれども、現在のサーバ構築のメモを書いていませんでした。

時間が取れれば書いておきたいと思います。

変更前の状態

作業前に現状をまとめておきます。

提供コンテンツ数確認

現在の提供ファイル数などをWebで確認するにはポート8200をブラウザで確認可能です

http://192.168.1.201:8200/

Media Libraryにそれぞれのメディア種別に提供カウントが表示されています。

今回は音楽データのみなのでAudioだけがカウントがあることを確認しました。
(Picture / Videoは0件です)

実行コマンド

コマンドをファイルに書き出して残しておいた方が楽ですね

sudo docker run -d   --net=host   -v /mnt/raid/music/songs:/media/audio   -e MINIDLNA_MEDIA_DIR_1=A,/media/audio   -e MINIDLNA_FRIENDLY_NAME=MySongs   vladgh/minidlna

解説は不要かと思いますが、

サービス名として抽出される名前はMySongsです

ローカルサーバにおいて、/mnt/raid/music/songsをdocker内部の/media/audioにボリュームをマウントしております。

minidlna設定は環境変数でディレクトリの指定が可能です。
環境変数(MINIDLNA_MEDIA_DIR)にてオーディオ情報を指定します。
A(オーディオ) , /media/audio

はい、これだけのことです。

[実作業]動画コンテンツの追加作業

作業としては

  • 1. 動画コンテンツを含めた実行コマンドを作成する
  • 2. 既存の音楽のみを配信していたDockerプロセスを止める
  • 3. 動画コンテンツを追加したプロセスを実行します

dockerコマンドで引数を変更する方法を知らないので!

プロセスStopして削除して対応しました。

1. 動画コンテンツを含めた実行コマンドの作成

今回追加するのは以下の動画ディレクトリを公開します

  • 映画 (movie) :  /mnt/raid/movie/movie
  • アニメ (anime) : /mnt/raid/movie/anime

動画コンテンツを追加したdockerコマンドは以下です

sudo docker run -d   --net=host   -v /mnt/raid/music/songs:/media/audio  -v /mnt/raid/movie/anime:/media/anime  -v /mnt/raid/movie/movie:/media/movie   -e MINIDLNA_MEDIA_DIR_1=A,/media/audio  -e MINIDLNA_MEDIA_DIR_2=V,/media/anime  -e MINIDLNA_MEDIA_DIR_3=V,/media/movie   -e MINIDLNA_FRIENDLY_NAME=MyDLNA   vladgh/minidlna

変更内容は以下を変更しています。

DLNAサービス名の変更

サービス名が音楽データを配信していたのでMySongsだとしていましたが、動画も提供するとMySongsではおかしいのでMyDLNAに変更しました。

マウントディレクトリの追加

先のディレクトリのマウント
/mnt/raid/movie/movie -> /media/movie
/mnt/raid/movie/anime -> /media/anime

メディアディレクトリ指定を追加

マウントしてディレクトリを実行時にメディアディレクトリとして指定する。
MINIDLNA_MEDIA_DIR

2. 既存の音楽配信プロセスの削除

wataru@gitlab:~$ sudo docker stop df50
df50
wataru@gitlab:~$ sudo docker rm df50
df50

3. 動画コンテンツを含めたプロセスの実行

wataru@gitlab:~$ sudo docker run -d   --net=host   -v /mnt/raid/music/songs:/media/audio  -v /mnt/raid/movie/anime:/media/anime  -v /mnt/raid/movie/movie:/media/movie   -e MINIDLNA_MEDIA_DIR_1=A,/media/audio  -e MINIDLNA_MEDIA_DIR_2=V,/media/anime  -e MINIDLNA_MEDIA_DIR_3=V,/media/movie   -e MINIDLNA_FRIENDLY_NAME=MyDLNA   vladgh/minidlna
51fc68c65b846cc42d20ef95a88560cae2a4cda1583e1e47d112db8ad03eeb7c

反映の確認

これで、管理画面にてメディア数を確認するとVideoがカウントされているのを確認します

http://192.168.1.201:8200/

コマンド実行直後はメディアのキャッシュをクリアされるのでカウントが伸びていきます。
しばらくするとメディアスキャンが終了しますのでカウントが正しくなります!

終いに

今回はDLNAサービスに新しいメディアディレクトリを追加する方法を書きました。

本当はもっとかっこいい方法もありますが、設定ファイルとかめんどくさいので環境変数にしています。

ついでに、dockerプロセスを削除して再実行していますが… 置き換えとかできないかな(勉強不足ですみません)

そもそもなぜDLNAにて動画コンテンツが必要になったか!というと

BDプレイヤの選定をしておりまして(理由は長くなるので略)、panasonicのBDプレイヤがDLNA機能を持っているものがありました。
それで動画コンテンツを再生できればと考えておりました。

ちょうど手元にDLNAクライアント機能のあるBDレコーダ(DIGA)がありました。
これで再生が可能かを検証したい!ということで構築したわけです。

BDレコーダでのDLNA動画コンテンツの再生検証の結果は…

  • DLNAにてコンテンツタイトルは表示されます。
  • 収録日時などはおかしい、コンテンツ長もおかしい
  • 動画コンテンツ(mp4)を選択しても再生はできません…

購入前で助かりました。

次回の記事

続きとはならないですが、次回はDLNA動画コンテンツを再生する方法をまとめておきたいともいます。

Raspberry piとkodiを使い再生していたDLNAクライアントものも書いておりました。

http://35.78.51.61/archives/1249

が!Raspberry piってキーボード・マウスって操作がめんどくさいので使っていないのですよ。

では!PCを使っては!?再生はできますが何か違います

動画ってTVで見るのがベストなのですよ。

なので!FireTVを使えば視聴可能です!
その辺りを書いておこうかと思います。