1

我正在尝试将特定媒体流式传输到 dlna/upnp 兼容设备。我已经了解了如何使用 c# 向设备发送命令(例如播放、暂停、停止等)。

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

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

4

2 回答 2

2

根据UPnP MediaRenderer规范(它是公开的,请查看www.upnp.org),预计AVTransportfile:服务仅针对内部协议采用 URI 方案,这在很大程度上未指定且特定于设备(如规范中所述)。换句话说,您只能SetAVTransportURI使用file:“CD 上的第一首曲目”或“Tuner station X”之类的内容。如果要远程连接,则必须使用协议http-get,即 URI 方案http:。设置一个简单的网络服务器来发布您的共享目录应该可以解决问题。

对于 UPnP 的这个隔离部分(即设置单一已知的媒体 URI、没有浏览没有像视频名称等元数据),您不需要您的服务器知道任何特殊的 DLNA/UPnP 服务。只要您想拥有比没有更好的用户体验,请查找一些成熟的 UPnP 媒体服务器。也有一些用 C# 编写的。

于 2012-10-16T15:37:50.233 回答
1

检查 wikipedia 条目以了解 Windows 上的URI 方案
您的共享网络目录是否也提供 DLNA/UPNP 服务?编辑:如果没有 UPNP 服务,您可以查看有关 UPNP 服务器功能的这个问题。

于 2012-10-16T08:47:40.960 回答