linux - "Platinum UPnP"开源库是在基于 linux 的系统上实现 DLNA 系统的好选择吗?

标签 linux open-source upnp dlna

<分区>

我正在考虑在我的基于 linux 的系统上实现我自己的 DLNA 系统。 “Platinum UPnP”库是一个不错的选择吗?

我发现“Platinum UPnP”库的大小相当大。

是否有任何其他开源 UPnP (DLNA) 库具有用 C/C++ 编写的更优化和紧凑的实现。

最佳答案

pupnp 是基于原始的 libupnp 代码,而且年代久远……在我看来,在应用程序中使用它是痛苦的。当您只是测试东西时,这似乎不是什么大事,但当您有一个复杂的应用程序时,痛苦就非常真实了。

关于 Platinum 需要注意的一点是它是 GPL,与大多数 Linux 库不同。这一点以及它在主要 Linux 发行版中甚至不可用的事实意味着我从未尝试过它,所以我无法更详细地审查它。

我自己的选择是 GUPnP (虽然你可以很容易地称我有偏见):它是用 C 语言编写的,使用 Glib 并获得 LGPL 许可。使用 GUPnP 制作的移动和机顶盒式设备现在已在现实世界中使用。 UPnP 和 DLNA 都有使用 GUPnP 制作的经过认证的设备和服务。该库确实有一些依赖项(libsoup、libxml2),但我相信它们存在是有充分理由的。 API 主要设法在不牺牲性能的情况下为用户简化操作——这是大多数 upnp 堆栈无法声称的。

关于linux - "Platinum UPnP"开源库是在基于 linux 的系统上实现 DLNA 系统的好选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4527046/

相关文章:

php - 使用互斥体的 Linux 并发脚本

python - 从远程机器的输出中进行模式匹配和提取数据。

c - 如何在 RDMA 上构建性能测试和运行延迟测试

Oracle 编码标准特性实现

delphi - 有趣的 Delphi 开源应用程序/项目(不是组件/组件包!)

java - libgdx 源代码构建错误无法解析为类型

C# > UPnP - COMException : The owner of the PerUser subscription is not logged on to the system specified (Exception from HRESULT: 0x80040210)

c - 不使用 pulseaudio 时 gstreamer 泄漏内存

php - 使用 PHP 获取 DLNA 信息

nat - UDP/TCP 打洞 vs UPnP vs STUN vs?