【问题标题】:Can DLNA Media Renderer also act as a controller as well?DLNA Media Renderer 也可以充当控制器吗?
【发布时间】:2015-03-22 12:52:14
【问题描述】:

我在这方面有点困惑。我将 Youtube 视频从我的 android 手机(使用名为 AllConnect 的控制器应用程序)流式传输到我的电视(渲染器)。在播放过程中,我可以看到正在更新的应用程序的进度条,我可以及时搜索。直到这里,我明白了一切;我的手机发现了一个 DLNA 渲染器 (TV),并且正在向它“推送”内容。

事情开始变得令人困惑,当我还可以使用电视遥控器搜索内容时,按下后退和前进按钮,我猜这会搜索 +-10 秒。 这个流程是如何工作的?当应用程序上的进度条相应移动时,该应用程序还可以感知电视遥控器执行的搜索。

以下是我电视上的规格:

1) RemoteControlReceiver.xml

<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:sec="http://www.sec.co.kr/dlna" xmlns:dlna="urn:schemas-dlna-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:samsung.com:device:RemoteControlReceiver:1</deviceType>
<friendlyName>[TV]UA32D5000</friendlyName>
<manufacturer>Samsung Electronics</manufacturer>
<manufacturerURL>http://www.samsung.com/sec</manufacturerURL>
<modelDescription>Samsung TV RCR</modelDescription>
<modelName>UA32D5000</modelName>
<modelNumber>1.0</modelNumber>
<modelURL>http://www.samsung.com/sec</modelURL>
<serialNumber>20090804RCR</serialNumber>
<UDN>uuid:9aaf1aa7-b2c9-f9d5-6b21-2df55015c03a</UDN>
<sec:deviceID>BDCISIPC2MN3M</sec:deviceID>
<serviceList>
<service>
<serviceType>urn:samsung.com:service:TestRCRService:1</serviceType>
<serviceId>urn:samsung.com:serviceId:TestRCRService</serviceId>
<controlURL>/RCR/control/TestRCRService</controlURL>
<eventSubURL>/RCR/event/TestRCRService</eventSubURL>
<SCPDURL>TestRCRService.xml</SCPDURL>
</service>
</serviceList>
</device>
</root>

2) PersonalMessageReceiver.xml

<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:sec="http://www.sec.co.kr/dlna">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:samsung.com:device:PersonalMessageReceiver:1</deviceType>
<friendlyName>[TV]UA32D5000</friendlyName>
<manufacturer>Samsung Electronics</manufacturer>
<manufacturerURL>http://www.samsung.com/sec</manufacturerURL>
<modelDescription>Samsung TV PMR</modelDescription>
<modelName>UA32D5000</modelName>
<modelNumber>1.0</modelNumber>
<modelURL>http://www.samsung.com/sec</modelURL>
<serialNumber>20081224PMR</serialNumber>
<UDN>uuid:fc866c7a-5ace-8368-600f-711705796dd8</UDN>
<sec:deviceID>BDCISIPC2MN3M</sec:deviceID>
<iconList>
<icon>
<mimetype>image/jpeg</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/pmr/icon_SML.jpg</url>
</icon>
<icon>
<mimetype>image/jpeg</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/pmr/icon_LRG.jpg</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/pmr/icon_SML.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/pmr/icon_LRG.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:samsung.com:service:MessageBoxService:1</serviceType>
<serviceId>urn:samsung.com:serviceId:MessageBoxService</serviceId>
<controlURL>/PMR/control/MessageBoxService</controlURL>
<eventSubURL>/PMR/event/MessageBoxService</eventSubURL>
<SCPDURL>MessageBoxService.xml</SCPDURL>
</service>
</serviceList>
</device>
</root>

3) 三星MRDesc.xml

<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:pnpx="http://schemas.microsoft.com/windows/pnpx/2005/11" xmlns:df="http://schemas.microsoft.com/windows/2008/09/devicefoundation" xmlns:sec="http://www.sec.co.kr/dlna">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<pnpx:X_compatibleId>MS_DigitalMediaDeviceClass_DMR_V001</pnpx:X_compatibleId>
<df:X_deviceCategory>Display.TV.LCD Multimedia.DMR</df:X_deviceCategory>
<dlna:X_DLNADOC xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMR-1.50</dlna:X_DLNADOC>
<friendlyName>[TV]UA32D5000</friendlyName>
<manufacturer>Samsung Electronics</manufacturer>
<manufacturerURL>http://www.samsung.com/sec</manufacturerURL>
<modelDescription>Samsung TV DMR</modelDescription>
<modelName>UA32D5000</modelName>
<modelNumber>AllShare1.0</modelNumber>
<modelURL>http://www.samsung.com/sec</modelURL>
<serialNumber>20081224DMR</serialNumber>
<UDN>uuid:6f4e620e-f056-581b-752b-1c0ce33bc370</UDN>
<sec:deviceID>BDCISIPC2MN3M</sec:deviceID>
<iconList>
<icon>
<mimetype>image/jpeg</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/dmr/icon_SML.jpg</url>
</icon>
<icon>
<mimetype>image/jpeg</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/dmr/icon_LRG.jpg</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/dmr/icon_SML.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/dmr/icon_LRG.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<controlURL>/upnp/control/RenderingControl1</controlURL>
<eventSubURL>/upnp/event/RenderingControl1</eventSubURL>
<SCPDURL>RenderingControl1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<controlURL>/upnp/control/ConnectionManager1</controlURL>
<eventSubURL>/upnp/event/ConnectionManager1</eventSubURL>
<SCPDURL>ConnectionManager1.xml</SCPDURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<controlURL>/upnp/control/AVTransport1</controlURL>
<eventSubURL>/upnp/event/AVTransport1</eventSubURL>
<SCPDURL>AVTransport1.xml</SCPDURL>
</service>
</serviceList>
</device>
</root>

【问题讨论】:

  • 您的手机没有“推送”:它只是告诉电视媒体文件的位置,并通知它您要播放/暂停/FF此文件。然后电视决定开始播放或暂停它喜欢的内容。它还可以根据其他输入(例如遥控器)执行这些操作。

标签: media upnp dlna


【解决方案1】:

其实在DLNA 1.0中,只引入了DMP(Digital Media Player)DMSDMP 既充当玩家又充当控制器,因此该模式被称为2-box-pull。在 DLNA 1.5 中,DMC(Digital Media Controller) 被分离,现在DMC 控制DMR(Digital Media Renderer) 渲染,这种模式称为3-box-push

DMR 可以控制当前媒体(可能是歌曲或播放列表),例如 stopseek 等,但在进行任何更改后,DMR 将发送 notification 到 @987654334 @ 和DMC 然后更新播放状态。

更详细地说,在按下seek 按钮后,电视的状态会从PLAYING 更改为TRANSITIONING,当seek 完成时,会更改回PLAYING。同时,当DMC从电视得到notification时,它会做AVTransport::GetPositionInfo与电视同步位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-18
    • 1970-01-01
    • 2023-04-09
    • 2011-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多