2012-10-16 111 views
1

我试图将特定媒体流到dlna/upnp兼容设备。我已经发现如何使用c#发送命令给设备(例如播放,暂停,停止等)。C#DLNA/UPNP媒体播放

所以,我可以在设备上播放媒体。但是,我不清楚我如何告诉设备什么媒体播放。这有没有特定的命令?

我看到了“SetAVTransportURI”命令,但这需要一个uri,我只是想从我的网络上的共享目录播放视频文件。我如何告诉设备要播放哪些媒体?

+0

嗨,你可以分享代码检测可用的DLNA设备 – Apoorv

回答

2

的UPnP MediaRenderer规范(这是公开的,在www.upnp.org查找),的AVTransport服务预计需要URI方案file:仅供内部协议,这是主要是不确定的,并且设备特定(书面在规范中)。换句话说,仅允许SetAVTransportURIfile:仅适用于诸如“CD上的第一首曲目”或“调音台X”之类的内容。如果您想要远程连接,则必须使用协议http-get,即URI方案http:。设置一个简单的网络服务器将发布你的共享目录应该有所斩获。

有关的UPnP这个与世隔绝的部分(即设置,已经媒体URI,没有浏览没有元数据像视频名称等),你不需要你的服务器知道任何特殊的DLNA/UPnP服务。只要您希望获得更好的用户体验,请查找一些完整的UPnP MediaServer。还有一些用C#编写的。

1

在Windows上查看维基百科条目的URI scheme
您的共享网络目录是否也提供DLNA/UPNP服务? 编辑:如果没有UPNP服务,您可以查看有关UPNP服务器功能的this问题。

+0

我用uri中的file://标签,来自设备的响应:“资源未找到”,但是,该文件在adressbar中输入时可以访问任何互联网浏览器 –