3

私は、upnp 対応のテレビ セットで Web ページをレンダリングするアプリを実行しています。Cling UPnPを使用して UPnP を実装しましたが、 さらに先に進む方法がわかりません。テレビとデバイス間の接続はどのように達成されますか? ソケット接続ですか?UPnP ストリーミングの実装に役立つ、このトピックに関するサンプルまたはチュートリアルを入手した人はいますか?

Google で検索しましたが、主に Google Play で利用可能な既存のアプリを指しています。ありがとう

4

1 に答える 1

5

わかりましたので、サービス記述子 xml (SCPD) には、 (TV に対して) または(アクションに対する TV の応答に含まれる)パラメータを含む<actionList>のが含まれています。アクションを「呼び出す」必要があります。つまり、Cling はそれを SOAP RPC にシリアル化し、HTTP 要求としてデバイスに送信します。応答では、通常の HTTP と同様に呼び出しの全体的な結果が得られます。OK の場合は 200、Bad Request の場合は 500 などです。各コードには、特定のアクション呼び出しのコンテキストで具体的な説明があります。応答には、SCPD で指定されたパラメータも保持されます。<action>inoutout

しかし、Cling のような抽象化ライブラリを使用する場合、これはそれほど重要ではありません。それはあなたのためにすべてを行います。免責事項: 私は Cling に精通していません。他の UPnP ライブラリがあれば、どこを探すべきかを知ることができます。

テレビセットとして、あなたが言及した3つのサービスは間違いなくAVTransportConnectionManagerおよびRenderingControlです。テレビで実際に観測可能な何かを行う簡単な例を示すために、 を呼び出してみましょうRenderingControl.SetVolume。必要なメソッドはorg.teleal.cling.support.renderingcontrol.callback.SetVolume. パラメータを取得する場所を知るレベルまでお手伝いすることはできませんが、Service理解できるはずです。

UPnP が内部でどのように機能するかを知る必要がないと言っているのではありません。UPnP 仕様バンドルを取得し、少なくとも DeviceArchitecture pdf を読むことが不可欠です。のようなより複雑なサービスを理解するには、間違いなく仕様が必要ですAVTransportヒント: InstanceID と ConnectionID は気にしないでください。非常に高度なレンダラーに接続しない限り、すべて 0 です (最近のテレビではそうではありません)

于 2012-09-12T12:37:54.380 に答える