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,进一步扩展其应用场景。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0191
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0114
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08