gpt4 book ai didi

java - 在移动设备上实现 DLNA/UPnP (Win7 Play To)

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:48:05 27 4
gpt4 key购买 nike

对于一个学期的项目,我想到了将 Windows 7 的 Play 实现到基础设施,以使用手机作为端点(播放器)或将内容从手机流式传输到 Windows 7 机器。有人有使用此 API 的经验吗?这是否能够在几周内完成(原型(prototype),只是概念证明,还没有最终用户准备好),还是对于这个范围的项目来说太过分了?注意:我不是在寻找代码示例,只是对该项目可行性的评估。如果您有任何来自 MS 或其他方面的文档,那将是很棒的,尽管这不是问题的症结所在。

编辑:我发现 Windows 7 Play-to 功能基于 DLNA,并且任何支持 DLNA 的设备(我认为)都可以用作 Play-To 上下文菜单的目标。但是,我很难找到有关 DLNA 的任何类型的文档。我想知道您是否需要成为 DNLA 的成员才能真正访问该规范?或者,我知道 DLNA 是建立在 UPnP 之上的,它不会完全按照我的意愿行事,但这将是朝着正确方向迈出的一步,所以,修改我的问题有人知道任何开源 C/可以帮助我实现 UPnP 或 DLNA 的 C++ 或 Java(首选)库?

谢谢!克里斯

最佳答案

PlayTo 完全基于 UPnP。 DLNA 只是 UPnP 之上的标准化层。因此,任何 UPnP 设备都能够与 DLNA 设备通信,从而与 Win7 机器通信。DLNA 指定了 4 种类型的设备:DMP、DMR、DMC 和 DMS。DMP(又名数字媒体播放器)是一种能够查找和浏览远程服务器(DMS=数字媒体服务器)并使用内容(或拉取内容)的设备。 PS3 是 DMP 的完美范例。 DMP 在网络上是不可发现的,它只是发现和使用内容。因为它不可发现,所以您无法使用 PlayTo 控制它。DMR(又名数字媒体渲染器)是一种可以接受从网络接收的命令的设备。它是可发现的,公开了 UPnP 描述文档和 UPnP 服务,如 AVTransport 和 ConnectionManager 或 RenderingControl。 PlayTo 设备能够在网络上找到该设备,并且可以向其推送内容。它可以通过 AVTransport 服务和 RenderingControl 服务来控制播放。今天的许多设备要么是 100% DMP(无法通过 PlayTo 控制)要么是 DMP-DMR。这意味着它们都公开了 AVTransport 和 RenderingControl 服务,但也有一个 GUI,用户可以使用它从服务器中提取媒体。DMS(又名数字媒体服务器)是一种媒体服务器设备。您可以在其中存储媒体内容,然后可以从其他网络设备使用它。这些通常是 NAS 设备,但它们也可能是手机、Win7/Vista 机器等。DMS 在网络上是可发现的,并将 UPnP 服务公开为 ContentDirectory 服务。这会将方法公开为浏览和搜索,您可以使用它们来定位内容。DMC 设备(又名数字媒体 Controller )是一种没有播放功能的设备。它只有控制功能,需要一个远程 DMS(公开内容)和一个远程 DMR(播放内容)来完成媒体体验。 PlayTo 就是一个例子。诺基亚 N95/诺基亚 N78 手机或 iPhone 上也有类似的应用程序。 Twonky 也有一个基于网络的 DMC。

所有这些设备都有一个共同点:它们理解并使用 UPnP。它们可以用 C+、C#、Java 实现,它们可以在 Windows、Linux 或 Apple 平台上运行,但它们都是基于 UPnP 的。因此,您需要做的就是熟悉 UPnP 标准。我建议从 upnp.org 和 Intel Device Spy(以及其他相关的 Intel UPnP 工具)下载论文并开始使用它们。如果您想编写 DMC(或 PlayTo)——这是最简单的事情——您需要了解的只是一些基本的 UPnP 概念(SOAP、XML、网络发现等)。如果您想在 Win7 平台上编写您的应用程序,您可能需要使用 Win UPnP API 来发现设备并向它们发送命令。或者您可以为此编写自己的 API(并不难)。我不知道您在手机上可能会使用什么 API。但是,您始终可以进行基本操作:使用基本网络 API 通过网络发送 SOAP 消息。对于 DMP/DMR,您将需要播放功能,这可能取决于平台和您拥有的编解码器。

如果这对您的入门有所帮助,请告诉我。谢谢藏藏

关于java - 在移动设备上实现 DLNA/UPnP (Win7 Play To),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1681817/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com