2013年12月5日木曜日

DLNA resource タグの順序 / Viera , iPod での認識状況

さて、 昨日 AV Media Controller で DLNA の resource タグ内容が見れるようになった。
mp4 を Viera / iPod Touch でそれぞれエンコードしてみるための3つの準備の1つでした。

・ resource タグの中身が見られるようにする
・ Viera / iPod Touch が first-resource しか見ないのか、すべての resource タグを見て
  自分に最適なものを選ぶのか確認する
・ Viera / iPod Touch に最適な profile 構成を確認する

で、 今日は 2点目の  first-resource しか見ないのか、すべての resource タグを見て選択するのか?について。

結論を言うと、 Viera は first-resource でなくてもよい。
iPod Touch は first-resource しか見ていなさそう。


まずは config.xml のテスト時の設定状況を。

●<mapping> 部分
<map from="mp4" to="video/mp4"/>

●<mimetype-profile-mappings> 部分
<transcode mimetype="video/mp4" using="ffmpeg-viera"/>
<transcode mimetype="video/mp4" using="ffmpeg-ipod"/>

ここで、 video/mp4 の mimetype に対して、 ffmpeg-viera, ffmpeg-ipod という
2つの profile を指定している。

●profile 部分 (最終的な設定ではないです)

<!-- for Viera -->
      <profile name="ffmpeg-viera" enabled="yes" type="external">
        <mimetype>video/vnd.dlna.mpeg-tts</mimetype>
        <accept-url>no</accept-url>
        <first-resource>no</first-resource>
        <hide-original-resource>no</hide-original-resource>
        <agent command="/data/bin/ffmpeg-viera" arguments="%in %out %seconds" can-seek="yes"/>
        <buffer size="14400000" chunk-size="512000" fill-size="1024000"/>
      </profile>

<!-- experimental for iPod touch -->
      <profile name="ffmpeg-ipod" enabled="yes" type="external">
        <mimetype>video/M2TS</mimetype>
        <accept-url>no</accept-url>
        <first-resource>yes</first-resource>
        <hide-original-resource>no</hide-original-resource>
        <agent command="/data/bin/ffmpeg-ipod" arguments="%in %out %seconds" can-seek="yes"/>
        <buffer size="14400000" chunk-size="512000" fill-size="1024000"/>
      </profile>
<!-- experimental for iPod touch -->

ポイントとしては、以下3点
  • Viera profile では  video/vnd.dlna.mpeg-tts を指定し、iPod profile では、 video/M2TS を指定している
  • first-resource は Viera : no / iPod : yes
  • hide-original-resource は 両方とも no
この設定でテストを実施。
AV Media Controller で見ると、 resource タグは以下のようになっていた
(一部のみ抜粋)

●Resource 1  ( iPod Profile 設定 )
Mime Type : video/M2TS;rate=44100;channels=1
Protocol Info : http-get:*:video/M2TS;rate=44100;channels=1:DLNA.ORG_OP=10;DLNA.ORG_CI=1


●Resource 2  ( Original Resource )
Mime Type : video/mp4
Protocol Info : http-get:*:video/mp4:DLNA.ORG_OP=01;DLNA.ORG_CI=0

●Resource 3  ( Viera Profile 設定)
Mime Type : video/vnd.dlna.mpeg-tts;rate=44100;channels=1
Protocol Info : http-get:*:video/vnd.dlna.mpeg-tts;rate=44100;channels=1:DLNA.ORG_OP=10;DLNA.ORG_CI=1

なぜか  rate,  channels という設定が入っている。 しかも channels=1 ... いいのか。。
Mediatomb の Transcode 設定の Documentation を確認し、 
各 Profile に以下の設定を追加。
また、 Original Resource はちょっと見たかっただけなので yes に設定して消す。

追加部分
<sample-frequency>off</sample-frequency>
<audio-channels>off</audio-channels>
いずれも、 mediatomb か player に通知する設定の模様。 source とか具体的設定などを入れられる。

config.xml を修正し、再起動後、 下記のようになった。
●Resource 1  ( iPod Profile 設定 )
Mime Type : video/M2TS
Protocol Info : http-get:*:video/M2TS:DLNA.ORG_OP=10;DLNA.ORG_CI=1

●Resource 2  ( Viera Profile 設定)
Mime Type : video/vnd.dlna.mpeg-tts
Protocol Info : http-get:*:video/vnd.dlna.mpeg-tts:DLNA.ORG_OP=10;DLNA.ORG_CI=1

この設定で、 とりあえず Viera で再生したときは Viera Profile で、
iPod Touch で再生したときは iPod Profile でトランスコードされるようになった。

ちなみに、 first-resource を逆  (Viera : yes,   iPod : no ) にすると
Viear は再生できたが iPod は Viera Profile で再生をはじめ、がくがく再生。。。
ということで、 おそらく Viera は複数リソースから選択、 iPod は first resource のみと推測
(単に Viera が iPod Profile の Mime type を理解しないだけかもしれないですが、、、
そこまで検証する気力がない。。。)


あと、気まぐれで iPod Touch の別のアプリで
再生を試みた。。。
ところ、 メディアフォーマットを認識しなかった。。。

iPod というくくりで考えていたのですが、 実は  DLNA クライアントアプリで
対応状況が違うらしい。。。 (T_T

なお、 いろいろ検証して、とりあえず再生できたのは  8Player Lite で、
再生できなかったのが  Media Link Player です。。。
アプリごとの検証をする気力はないなぁ~





0 件のコメント:

コメントを投稿