Platinum UPnP SDK 使用教程
1. 项目介绍
Platinum UPnP SDK 是一个开源的 UPnP(通用即插即用)框架,由 plutinosoft 公司开发。该 SDK 包含两个主要模块:
- Neptune:一个 C++ 运行时库。
- Platinum:一个模块化的 UPnP 框架,依赖于 Neptune。
Platinum 提供了构建 UPnP 设备和服务的基础设施,支持多种平台,包括 Windows、OSX、iOS、Linux 等。它不仅提供了核心的 UPnP 功能,还包含了一些示例应用程序,帮助开发者快速上手。
2. 项目快速启动
2.1 克隆项目
首先,克隆 Platinum 项目到本地:
git clone https://github.com/plutinosoft/Platinum.git
cd Platinum
2.2 构建项目
2.2.1 Windows
在 Windows 上,使用 Visual Studio 2010 打开解决方案文件:
cd Build\Targets\x86-microsoft-win32-vs2010
Platinum.sln
2.2.2 OSX 和 iOS
在 OSX 和 iOS 上,首先安装 Carthage:
brew update
brew install carthage
然后构建 Neptune 和 Platinum 框架:
carthage bootstrap
carthage build --no-skip-current
构建完成后,框架文件可以在 Carthage/Build 文件夹中找到。
2.2.3 Linux 和 Cygwin
在 Linux 和 Cygwin 上,使用 SCons 构建:
brew update
brew install scons
git submodule update --init
scons target=[TARGET] build_config=[Debug|Release]
构建输出将在 Build/Targets/[TARGET]/[Debug|Release] 文件夹中。
3. 应用案例和最佳实践
3.1 文件媒体服务器测试
FileMediaServerTest 是一个 UPnP MediaServer 的示例,允许 UPnP ControlPoint 浏览目录内容并流式传输文件。
FileMediaServerTest [-f <friendly_name>] <path>
-f:可选的 UPnP 服务器友好名称。<path>:本地路径以提供服务。
3.2 媒体渲染器测试
MediaRendererTest 是一个 UPnP MediaRenderer 的示例,可以由 UPnP ControlPoint 控制。
MediaRendererTest [-f <friendly_name>]
-f:可选的 UPnP 服务器友好名称。
3.3 媒体爬虫
MediaCrawler 是一个组合的 UPnP MediaServer 和 ControlPoint,它从网络上的其他 MediaServer 中浏览内容,并将它们聚合在一个视图中。
MediaCrawler
3.4 微媒体控制器
MicroMediaController 是一个同步的 ControlPoint,允许你使用类似 shell 的界面浏览任何 MediaServer。
MicroMediaController
4. 典型生态项目
4.1 MediaConnect
MediaConnect 是 FileMediaServerTest 的一个派生实现,专门用于使内容对 Xbox 360 可见。
4.2 MediaServerCocoaTest
MediaServerCocoaTest 是一个基本的 Cocoa 测试服务器应用程序,展示了如何在 Mac OSX 上使用 Platinum 框架。
4.3 语言绑定
Platinum 还提供了多种语言的绑定,包括:
- Objective-C:在
Source/Extras/ObjectiveC目录下。 - C++/CLR:在
Source/Extras/Managed目录下。 - Android Java/JNI:在
Source/Platform/Android目录下。
通过这些绑定,开发者可以在不同的平台上使用 Platinum SDK,进一步扩展其应用场景。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
new-apiAI模型聚合管理中转分发系统,一个应用管理您的所有AI模型,支持将多种大模型转为统一格式调用,支持OpenAI、Claude、Gemini等格式,可供个人或者企业内部管理与分发渠道使用。🍥 A Unified AI Model Management & Distribution System. Aggregate all your LLMs into one app and access them via an OpenAI-compatible API, with native support for Claude (Messages) and Gemini formats.JavaScript01
idea-claude-code-gui一个功能强大的 IntelliJ IDEA 插件,为开发者提供 Claude Code 和 OpenAI Codex 双 AI 工具的可视化操作界面,让 AI 辅助编程变得更加高效和直观。Java01
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility.Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00