Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
ReadyMediaのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
ReadyMedia
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:メディアサーバー]] [[en:ReadyMedia]] [[es:MiniDLNA]] [https://sourceforge.net/projects/minidlna ReadyMedia] (旧名 '''MiniDLNA''') は [[wikipedia:ja:Digital_Living_Network_Alliance|DLNA]]/[[wikipedia:ja:Universal_Plug_and_Play|UPnP]] クライアントに完全に対応することを目標に掲げているサーバーソフトウェアです。MiniDNLA デーモンはネットワーク上のクライアントに対してメディアファイル (音楽、画像、動画) を供給します。クライアントアプリケーションとしては totem や [[kodi]] などが、デバイスとしてはポータブルメディアプレイヤーやスマートフォン、テレビ、ゲーム機 (PS3 や Xbox 360) などが挙げられます。 ReadyMedia は [[MediaTomb]] をシンプルかつ軽量なサーバーとして置き換えますが、備わっている機能は多少少なくなっています。管理用のウェブインターフェイスは存在しないため、テキストファイルを編集することで設定を行います。 == インストール == [[公式リポジトリ]]から {{Pkg|minidlna}} を[[インストール]]してください。 トランスコードをサポートしている非公式ブランチを使いたい場合は、[[AUR]] から {{AUR|readymedia-transcode-git}} をインストールしてください。 == 設定と起動 == {{Warning|1=2019年3月時点で、現行の ReadyMedia には致命的なバグがあります: 特定の IP アドレスへのバインドに用いられる {{ic|-i}} コマンドラインオプションおよび {{ic|network_interface}} 設定オプションは、HTTP サーバーには適用されません。このバグは2017年に[https://sourceforge.net/p/minidlna/bugs/297/ 上流]へ報告されました。Web サーバーに全てのインターフェースから接続できるので、公開されたホストで ReadyMedia を運用している場合セキュリティ上の問題が生じている可能性があります。}} デフォルトでは、minidlna はシステムサービスとして実行されます (もしくは、[[#ユーザーで minidlna を実行|ユーザーで実行する]]ことも可能です)。設定は {{ic|/etc/minidlna.conf}} に記述します。以下の必須設定を設定してください: {{bc|1=#network_interface=eth0 # Self-discovers if commented (at times necessary to set) media_dir=A,/home/user/Music # Mounted Media_Collection drive directories media_dir=P,/home/user/Pictures # Use A, P, and V to restrict media 'type' in directory media_dir=V,/home/user/Videos friendly_name=Media Server # Optional inotify=yes # 'no' for less resources, restart required for new media presentation_url=http://www.mylan/index.php # or use your device static IP http://192.168.0.14:8200/}} デフォルトでは MiniDLNA は ''minidlna'' ユーザーで実行されますが、ユーザーは {{ic|/etc/minidlna.conf}} の {{ic|user}} 行で変更ができます。MiniDLNA ユーザーを変更した場合、{{ic|db_dir}} と {{ic|log_dir}} オプションをそのユーザーから書き込みができるディレクトリに変更する必要があります。 minidlna サービスは [[systemd#ユニットを使う|systemd]] を使って {{ic|minidlna.service}} で管理できます。 === Media_DB の自動更新 === {{ic|/etc/minidlna.conf}} に設定されている ''Media_Collection'' ディレクトリ内のディレクトリ/サブディレクトリごとにカーネルは [[wikipedia:Inotify|inotify]] で監視を行い、変更が見つかったら MiniDLNA が即座に ''Media_DB'' を更新します。通常ユーザーで MiniDLNA を実行している場合、カーネルの ''inotify'' の上限を変更することができません。MiniDLNA が全てのメディアフォルダを監視するためには ''inotify'' で監視できる数のデフォルトは十分とは言えないため、{{ic|sysctl}} を使って ''inotify'' の監視数を増やして下さい (大抵の場合は 100000 が十分な値となります): # sysctl fs.inotify.max_user_watches=100000 この変更を永続化させるには、以下を {{ic|/etc/sysctl.d/90-inotify.conf}} に追加してください: # Increase inotify max watchs per user for local minidlna fs.inotify.max_user_watches = 100000 ''inotify'' のパフォーマンスはデバイスのタイプによって変わります。メディアドライブをたまにしか再スキャンしなかったり全くしなかったりすることがあります。監視しているメディアディレクトリにファイルが追加/削除されたときでも、DLNA のデバイスクライアントを再起動するまで変更が適用されないかもしれません。 MiniDLNA の ''presentation_url'' でファイルの数を比較して ''inotify'' の更新を確認してください。変更が行われない場合、MiniDLNA を実行しているユーザーに DB フォルダへの ''rw'' アクセス権があるか確認してください。それでも問題が修正されない場合、新しいファイルを ''inotify'' によって監視されていない同一ドライブの '''Downloads''' フォルダにコピーまたはダウンロードして、それから問題のメデイアフォルダに移動してみてください。重いメディアファイルのコピーやダウンロードは ''inotify'' を混乱させることがあります。 もしくは、MiniDLNA デーモンを停止して MiniDLNA の DB を手動で削除・再作成したり、デバッグ出力を解析しても良いでしょう (Ctrl+C で終了): MiniDLNA デーモンを停止: # systemctl stop minidlna 強制的に Media_DB を再作成するには: # minidlnad -R Media_DB を再作成した後はデーモンを停止してください。例: {{Ic|killall minidlnad}}。 デバッグモードで起動するには: # minidlnad -d {{ic|Ctrl+C}} で終了してください。 === サービスの自動起動のトラブルシューティング === ときどき minidlna デーモンがブート時に起動に失敗することがあります。この問題は [[NetworkManager#NetworkManager Wait Online を有効にする]] で解決します。{{Bug|35325}} を参照。 === ユーザーで minidlna を実行 === システムサービスとしてではなく、自分のユーザーを使って minidlna を実行することもできます。マシンの管理者権限がないときにメディアを共有したい場合に便利です。 ローカルで必要なファイルとディレクトリを作成して設定を編集してください: $ install -Dm644 /etc/minidlna.conf ~/.config/minidlna/minidlna.conf $ $EDITOR minidlna.conf 上で書かれているように設定を行って下さい、特に: media_dir=/home/$USER/dir db_dir=/home/$USER/.config/minidlna/cache log_dir=/home/$USER/.config/minidlna 次のコマンドで minidlna を起動できます: $ minidlnad -f /home/$USER/.config/minidlna/minidlna.conf -P /home/$USER/.config/minidlna/minidlna.pid ログイン時に自動的に起動させるには、前記の行を {{ic|~/.bash_profile}} に追加します。 == その他の設定 == 性能を発揮するために考える必要がある設定と MiniDLNA の制限。 === ファイアウォール === ファイアウォールを使用する場合、ssdp (1900/udp) と trivnet1 (8200/tcp) のポートを開いておく必要があります。例えば、arno's iptables firewall の場合 {{ic|firewall.conf}} を編集して以下のようにすることでポートを開きます: OPEN_TCP="8200" OPEN_UDP="1900" === ファイルシステムとローカリゼーション === Linux と Windows の両方からアクセスできる外部ドライブに MiniDLNA の ''Media_DB'' を配置する場合は、適切な[[ファイルシステム]]を選ぶようにしてください。'''NTFS''' は Windows で Linux のデフォルトを保ちます: ''root'' ユーザーには ''rw'' アクセス権をファイルの名前には ''UTF8'' のフォント''エンコーディング''を使うため、ターミナルやメディアプレイヤーが ''UTF8'' をサポートしていれば、''Media_DB'' を見た時にあなたの使っている言語で書かれたメディアの題名も適切に表示されるはずです。古いプレイヤーでの USB ドライブの互換性のために '''Vfat''' (FAT32) を使用したい場合、または ''Media_Collection'' ドライブが Vfat で、フォルダやファイルの名前があなたの地域言語で書かれている場合、MiniDLNA はフォルダをスキャンして ''Media_DB'' を作成する際に名前を ''UTF8'' に変換することができます。''Media_Collection'' と ''Media_DB'' のドライブのマウントオプションにあなたの言語の[[wikipedia:ja:コードページ|コードページ]] (短い DOS ファイル名に変換するため) と [[wikipedia:ja:文字コード|iocharset]] (ターミナルのロケールに長いファイル名を変換するため) を追加してください。例: ''codepage=cp866,iocharset=utf8 (または ISO-8859-5)''。''Vfat'' は Linux のアクセス権限を保たないので、全てのユーザーに ''rw'' 権限を設定します: {{bc|1=UUID=6140-75F7 /media/MyDrive/Media_DB vfat user,rw,async,noatime,umask=111,dmask=000,codepage=cp866,iocharset=utf8 0 0}} システムの ''iocharset'' と[[ロケール]]が一致する場合、ターミナルやプレイヤーが短いファイル名しかサポートしていないときは、''codepage'' も有効になっていることを確認してください (例: ru_RU.CP866)。Arch Linux リリースがコンパイルされたときにシステム設定に含まれている可能性があります。存在しない場合はリリースを再コンパイルして追加してください: ls /usr/share/fonts/encodings MiniDLNA はデータベース内の ''Movies'' や ''Photos'' をファイル名でリストアップしますが、''Music'' エントリはファイル名ではなく [http://id3lib.sourceforge.net/id3/ ID3 タグ] が使われます。音楽のコレクションのタグで UTF-8 ではなくローカルな文字セットが使用されている場合、MiniDLNA はタグを認識することができず UTF-8 に変換してメディアプレイヤーに表示します。あるいはオリジナルのタグの''コードページ''がシステム上に存在しない場合、(たとえメディアファイルの名前が読めたとしても) タグを読むことができません。その場合、'''ID3 Tag Converter''' を使って音楽ファイルのタグを ''UTF-16BE'' や ''UTF-8'' エンコーディングで再度設定してください。 ''Media_Collection'' のファイルシステムの選択はトレードオフです: XFS や EXT4 はハードディスクの読み書き速度が速くて、ストレージが付属している小さな [https://archlinuxarm.org/platforms/armv5/pogoplug-series-4 Plug コンピュータ] で CPU 負担が低くなります。NTFS は Windows との互換性が最も優れており、ドライブを直接接続して高速にコピーすることができます。Samba, NFS, iSCSI などのネットワークファイルシステムを使って Windows に Linux のファイルシステムをインポートすることもできますが、データコピーは低速です。ファイルの断片化は再生に影響するので、動画を保存する場所は XFS (断片化しづらい), NTFS (断片化しづらくてデフラグが簡単), EXT4 (巨大なファイルの''エクステント''を使用) などでフォーマットして、EXT3 や[[wikipedia:File_Allocation_Table#Fragmentation|断片化しやすい]] FAT32 を使うのは避けてください [https://trac.transmissionbt.com/ticket/849]。賢いフラッシュドライブでは音楽や写真ファイルが断片化することはほとんどなく、VFAT (FAT32) や EXT4 で高速な書き込み速度が発揮され CPU 負担が低くなります。ただし EXT4 はジャーナリングによってメモリのウェアに影響を与える可能性があり、メディアプレイヤーとの互換性はあまり高いと言えません。ドライブをパーティショニングするときは、ブロックの [https://lwn.net/Articles/428584/ アライメント] を行なって適当な''マウントオプション'' (''async,noatime'' など、ファイルシステムやメモリの種別によって選択してください) を使うことでフラッシュドライブやハードディスクドライブの速度を劇的に [http://linux-howto-guide.blogspot.ca/2009/10/increase-usb-flash-drive-write-speed.html 向上] させることができ、他にも[[wikipedia:Logical_Disk_Manager#Advantages_of_using_a_1-MiB_alignment_boundary|メリット]]が存在します。 === メディアの操作 === MiniDLNA は小型デバイスを対象としているため、動画のサムネイルを作成しないことで CPU の負担や DB のビルド時間を少なくしています。動画と同じフォルダにサムネイルが存在する場合はそれを使い、MP4 や MKV などのメディアコンテナにアルバムアートタグが埋め込まれている場合はそれを抽出します (AVI は対象外)。'''Thumbnail Maker''' を使うことでメディアフォルダにサムネイル (160x160 以下の JPG) を追加することができ、miniDLNA は再スキャン後にメディアファイルとサムネイルを関連付けます。''Media_DB'' 内に保存した巨大なサムネイルはリサイズされるためスキャンが遅くなります。フォルダ一つごとに動画一つを配置して、''minidlna.conf'' のサムネイルの命名規則に従って下さい。複数のエピソードがある場合、サムネイルの名前をエピソードの名前に一致させる必要があります (''<file>.cover.jpg'' または ''<file>.jpg'')。GUID で ''MS Album Art'' のサムネイル名を扱うには、* を名前の最後に付けて下さい: ''"AlbumArt_{*".jpg''。MiniDLNA は選択したメディアタイプだけを画面上に表示します (つまり Movies)、同一フォルダの他のファイルは表示しません。 写真を閲覧する場合、プログレッシブ JPG やロスレス圧縮の JPG が DLNA を使用するプレイヤーによってサポートされていない可能性があります。また、画像のスライドショーで問題が発生する場合、プレイヤーの仕様書に書かれた最大写真サイズまで写真をリサイズしてください。DLNA の仕様では画像のタイプは JPG または PNG のみで、最大サイズは 4096 x 4096 ピクセルまでとなっています (DLNA サーバーが LARGE フォーマットをサポートしている場合)。もうひとつ下のサイズ制限 (MEDIUM) は 1024 x 768 となっているので、このサイズまで写真をリサイズすることで正しく表示されるかもしれません。 システムの負担を抑えるために、MiniDLNA はサポートされていないメディアファイルを、プレイヤーによってサポートされているフォーマットにその場で変換するということをしません。''Media_DB'' の作成時に、プレイヤーによってサポートされているフォーマットかどうか正しく認識されない可能性があります。プレイヤーによっては UPnP で幅広いフォーマットを再生できることがあります。DLNA の仕様ではメディアコンテナの UPnP サブセットや使用できるコーデックの''プロファイル''はかなり制限されています。TV 画面で表示されなかったり、''Media_DB'' に含まれているメディアファイルが再生できない場合、ハードディスクが回っているか確認したりメディアプレイヤーに USB で接続して再生してみてください。MiniDLNA はオーディオトラックや字幕、ディスクチャプターの選択やソートなど、プレイヤーの機種によって高度な再生機能をサポートしていないことがあります。 == メディアサーバーの作成 == 開発ボード (Raspberry Pi, CubeBoard など) のような安価で軽量なシステムを使ってメディアを流したいということもあるでしょう。このようなボードでは X サーバーすら必要としないのが普通です。 === 外部ドライブの自動マウント === サーバーを自動化したい場合に便利です。詳しくは [[udev]] を見て下さい。 ===問題=== MiniDLNA ベースのメディアサーバーにはドライブの再スキャン問題が存在します。接続した外付け HDD が何度もスキャンされるという問題です。スキャンが発生するのはドライブが切断されるたびに MiniDLNA が DB レコードを削除するのが原因です。ドライブをずっと接続したままにしておくのであれば問題ありませんが、"抜き差しする"巨大な外付けドライブにメディアライブラリを保存している場合、動画を視聴する前に多大な待ち時間が発生します。 minidlna の [https://code.google.com/p/minidlna-fastscan フォーク] を使うことで再スキャン問題は解決できます。フォークでは動画ファイルと同じ場所にメタデータファイルが作成されます。巨大なメディアでスキャン時間が大幅に増えます。 ==トラブルシューティング== ===無線でルーターを介したときにサーバーが認識されない=== MiniDLNA サーバーを動作させているマシンをイーサネットでルーターに接続している場合、(同一ルーターの) WiFi で MiniDLNA サーバーにアクセスできないという問題が発生することがあります。この問題を解決するには、ルーターで "Multicast Isolation" をオフにしてください。例えば、ADB / Pirelli P.RG EA4202N ルーターの場合、設定ページに接続して、Settings->Bridge and VLAN->Bridge List->Bridge Ethernet WiFi の edit をクリック->Multicast Isolation を No に設定->Apply。 ===メディアディレクトリにアクセスできない=== デフォルトの systemd サービスファイルでは {{ic|1=ProtectHome=on}} パラメータを使っています。{{ic|/home}} ファイルシステムの中に保存しているファイルを共有したいときは、制限を緩和しましょう。systemd ユニットファイルを上書きすることでパラメータを変更できます (例: {{ic|systemctl edit minidlna.service}}): {{hc|/etc/systemd/system/minidlna.service.d/override.conf|<nowiki>[Service] ProtectHome=read-only</nowiki>}} ===ブリッジデバイスで共有したときに DLNA サーバーが表示されなくなる=== (Ethernet デバイスにブリッジした OpenVPN デバイスなど) ブリッジデバイスで ReadyMeadia を外部から使えるようにしている場合、一定時間後にサーバーがクライアントから表示されなくなることがあります (表示されなくなる時間は数秒から半日までと幅があります)。問題を解決するにはマルチキャストスヌーピングを無効化する必要があります。以下のコマンドで一時的に設定できます: # echo 0 >> /sys/devices/virtual/net/br0/bridge/multicast_snooping 上記のコマンドを実行するとすぐにクライアントからサーバーにアクセスできるようになります。ただし再起動すると元に戻ります。上記のコマンドで問題が解決することが確認できたら、以下のコマンドで変更を永続化できます: # echo 'net.br0.bridge.multicast_snooping=0' > /etc/sysctl.d/35-minidlna_no_snoop.conf
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Bc
(
ソースを閲覧
)
テンプレート:Bug
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Warning
(
ソースを閲覧
)
ReadyMedia
に戻る。
検索
検索
ReadyMediaのソースを表示
話題を追加