DLNAサーバーソフト:”TVersity”を試してみました。
ネットで”TVersity”を調べると、結構な数の情報が検索されますが、残念ながらREGZAで上手くいった人の情報を見つけることができませんでした。
この”TVersity”はREGZAとの相性が良くないらしく、「REGZAから認識できない。表示されない。」などでした。現在、色々なDLNAサーバーソフトを調査している一環として、どんなものか試してみました。
ホームページから体験版フリー版(バージョン1.9.2)をインストールしました。インストールしたパソコンのOSはWindows7です。
インストール後、メイン画面が起動します。画面はFlashベースのようです。
REGZAから確認してみましたが、案の定それらしい機器が表示されません。
[Settings]タブから設定できる項目を確認していたところ、[General Setting]の中に通信ポートの設定項目がありました。
この手のソフトは、インストール時や最初の起動時に「ファイアウォールを空けて通信を許可しますか?」的なメッセージが表示されるのですが、そういえば何も表示されていません。
念のため、「ファイアウォール」の状態を確認するとブロックされていたので、”許可”に変更しました。
サーバーを再起動してみると、[Status]タブにREGZAのIPアドレス(※我が家の環境では:”192.168.11.2″)が表示され、”TVersity”からREGZAを認識したようです。
しかし、認識したデバイスが”Sony PS3″となっています。
このタイミングでREGZAから確認してみましたが、それらしい機器は表示されません。[Settings]タブ内に”Media Playback Device”の項目があり、そこからデバイスを選択出来るようになっているのですが初期値は[Auto Detect (recommended)](※自動検出)となっていて、一覧の中を探してもREGZAに関連するようなデバイス情報がありません。
やはり、REGZAからの認識は不可なのか?。。。
TVersityのホームページ内にあるSupportに一通り目を通した結果、次のようなことが分かりました。
- 認識するデバイスは基本[Auto Detect (recommended)]にしていれば問題ない。
- [Auto Detect (recommended)]で認識しない場合は自分でデバイスを追加する。
- デバイスを追加するファイルは”profiles.xml”になる。
- “Media Playback Device”の一覧に載せたい場合は連絡する。
てな感じでしょうか。
“profiles.xml”は、”C:\ユーザー\[ユーザー名]\AppData\Local\TVersity\Media Server”に存在します。
※”AppData”フォルダは隠しフォルダなので、表示するように変更します。
※パソコンのOSによってインストールされる初期値のフォルダは異なるようです。
少し分かりずらいのが、”profiles.xml”に新しいデバイスを追加しても、”Media Playback Device”の一覧に現れるわけではなく、
追加した場合でも[Auto Detect (recommended)]にしていれば問題ないということです。”Media Playback Device”の一覧に載せたい場合は連絡してお願いするのかな?
結局、TVersityが変なデバイスを認識してしまうのと、REGZAもTVersityを認識しないので新しいデバイスを”profiles.xml”に追加して試すことにしました。デバイスの追加方法は”wiki”を参考にしました。
TVersityは各デバイスを認識するためにUser-Agentを確認しているようです。DLNAは基本通信に”UPnP”を使用しており、プロトコルは”HTTP”です。HTTPはUser-Agentを受け渡しする決まりがあり、TVersityは”profiles.xml”に設定してあるUser-Agentが一致するプロファイルからデバイスを特定して通信をおこなっているようです。
REGZAが通信する時のUser-Agentを調べたところ、以下のようなUser-Agentでした。
{code}UPnP/1.0 DLNADOC/1.50 Intel_SDK_for_UPnP_devices/1.2{/code}
なんでか”Intel”のそれもSDKになっています。
この情報をもとに”profiles.xml”に新しいデバイス設定を追加します。User-Agentの指定方法は、以下のように書きます。
{code}<HTTPHeader inUASubstr=”UPnP/1.0 DLNADOC/1.50 Intel_SDK_for_UPnP_devices/1.2″/>{/code}
実は、この設定を加えても”TVersity”が認識するREGZAのデバイスが”Sony PS3″となってしまいます。その理由は、”profiles.xml”に最初から設定してある”Sony PS3″のUser-Agent指定が
{code}PLAYSTATION 3|PLAYSTATION3|UPnP/1.0 DLNADOC{/code}
となっており、設定されている”UPnP/1.0 DLNADOC“がREGZAのUser-Agentと部分的(青字)に一致しているため”Sony PS3″と認識されてしまうようです。
User-Agentの検索は完全一致ではなく部分一致でもOKということですかね。”|”‘(パイプ文字)で区切られていますが、これは”OR”(または)的な扱いかと思われます。
そこで、次のような設定を加えます。
{code}<devicesIP value=”192.168.11.2″/>{/code}
これは、使用するデバイス(REGZA)のIPアドレスを固定で設定できます。
以上のことを踏まえて、以下が新しく”profiles.xml”に追加したREGZA用のプロファイルです。
※トランスコーディングの設定は省いています。
※”devicesIP”のIPアドレスは変更してください。
{code}
<profile id=”defd8fb0-c85c-11df-bd3b-0800200c9a66”>
<friendlyName>REGZA</friendlyName>
<manufacturerName>Toshiba</manufacturerName>
<modelName>Z9000</modelName>
<HTTPHeader inUASubstr=”UPnP/1.0 DLNADOC/1.50 Intel_SDK_for_UPnP_devices/1.2″/>
<devicesIP value=”192.168.11.2″/>
<deviceDescription name=”UPNP_AV_MediaServer_1.0.allservices.xml”/>
</profile>
{/code}
サーバーを再起動すると、設定したプロファイル:”REGZA”が認識されました。よし。
期待を込めて、REGZAから確認してみると、、これでも表示されない・・・。 なんで?。
ここで心が折れそうになり、「やっぱ無理なのねぇ (W) 」 と諦めそうになるが折角ここまでやったのにと思い、また色々調査を開始・・。
“TVersity”から”REGZA”は認識しているので、問題は”REGZA”から”TVersity”の認識方法になります。REGZA Z9000のDLNAデバイスはDMP、TVersityのDLNAデバイスはDMSです。DMSとDMP間のUPnPでの通信方法を調査しました。
追加したプロファイル内に以下のような設定があります。
{code}<deviceDescription name=”UPNP_AV_MediaServer_1.0.allservices.xml”/>{/code}
ここに書かれている”UPNP_AV_MediaServer_1.0.allservices.xml”ファイルは物理的に存在していてDMSの”UPnP AV”に関する基本的な情報が記述されています。このファイルに書かれている内容を次のように変更します。※”UPNP_AV_MediaServer_1.0.allservices.xml”は”profiles.xml”と同じフォルダに存在します
変更する箇所だけ抜粋しています。
※2行を変更します
※8行目と9行目を追加します
{code}
<?xml version=”1.0″ encoding=”utf-8″?>
<root xmlns=”urn:schemas-upnp-org:device-1-0″>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<dlna:X_DLNADOC xmlns:dlna=”urn:schemas-dlna-org:device-1-0″>DMS-1.50</dlna:X_DLNADOC>
<dlna:X_DLNADOC xmlns:dlna=”urn:schemas-dlna-org:device-1-0”>M-DMS-1.50</dlna:X_DLNADOC>
<deviceType>urn:schemas-upnp-org:device:MediaServer:1</deviceType>
<friendlyName>${HOSTNAME} : ${APPNAME}</friendlyName>
{/code}
サーバーを再起動してREGZAから確認してみると、、
見事に表示されました。 :o) よしよし。。
トランスコーディングの設定を行っていないため動画(AVCHD)は視聴できません。また、本体のトランスコードを停止するように設定しておかないとコンテンツによっては”TVersity”が異常終了するので注意が必要です。
あとは、トランスコーディングの設定をプロファイルに追加すれば、AVCHDなどの動画の視聴も可能になるはずです。
とりあえずREGZAから認識できたということで、今日はここまで・・・。
すばらしすぎます!
トランスコードも期待しております!!!
REGZAでトランス再生できることを楽しみにしております。
素晴らしい内容で、非常に参考になりました。
ブログの内容を参考にpmsでも試したところ、認識、再生できました。
といってもvobと一部のisoしか再生できませんが・・・。
完全に再生できるようにがんばってみます。
:o) 大変すばらしい内容なのはもちろんのこと、知識と課題にとりかかる姿勢がすごいです!
今、同じ手順でしているのですが・・・
ps3と認識のまま・・・
z1でも可能だと思うのでがんばってみます
凄い参考になりました。
ありがとうございました。
自分Z8000を購入してすぐに試したのですが全然ダメで挫折したのですごいの一言です!!
REGZAユーザー(DLNA機能付き)は必見です。
貴重な情報ありがとうございます :o)
こんにちわ。はじめまして。
少しお伺いしたいんですが、
profile idで指定するGUIDはどのように調べれば判明するんでしょうか。
当方もREGZAですが、Z9000ではないので。
よろしくお願いします。
GONZOさん
こんばんは。管理人です。 :-$
ここで指定しているGUIDは、
TVersityで使用する、ProfileのGUIDなので
REGZAのGUIDということではありません。
また、REGZAに決められたGUIDがあるわけでもありません。
使用するProfileのGUIDは、
重複しないように自分で生成したのを使用しても、
特に問題ありません。 :-$
わたしは以下のサイトから生成したGUIDを使用しました。
参考:www.guidgenerator.com
なるほど!
GUIDは固有ではあるものの、
『MACアドレス』みたいに機器にあらかじめ割り振られたものではなく、
自分のコンピューター上で認識するために割り振るものなんですね。
ありがとうございます。非常にスッキリしました。
記事に従いxmlの書き換えで37Z1の相互認識には成功しました。
が。
機器選択にはリスティングされるのですがコンテンツの取得の際にTVersityがエラー起こしてしまい先へ進めなくなってしまいました。
バージョンは1.9.7、サーバーPCはXPSP3です。
スパルタさん こんばんは。 :-$
私が1.9.6および1.9.7のバージョンを試した時、
コンテンツの一覧表示まで動作することは確認しています。
TVersityを初めて起動すると、
指定したフォルダのコンテンツスキャンが開始されます。
コンテンツの数が多いと結構な時間がかかります。
※もしスキャンされないなら手動でスキャンします。
REGZAからの一覧表示は、
TVersityのコンテンツスキャンが完了した時点で
行ったほうがいいかもしれません。
ざっくり私の環境を載せておきます。
環境:
OS:Win7 Ultimate sp1 32bit
LAN:有線1000BASE-T ※Z9000は100BASE-TX
一覧表示したコンテンツ:m2ts、wmv、mpg