DLNA&UPnP开发笔记(3)

由前两篇文章我们了解了DLNA和UPnP协议的基础概念,本文主要介绍一下开发DLNA&UPnP应用的SDK和代码资源。

1.  搭建测试环境

由第二篇文章中,UPnP AV典型应用架构中,我们知道,要实现一个完整的应用,需要三个主体,一个是MediaServer,一个是MediaRenderer,还有一个是Control Point,我们不一定要一次性都实现,我们可以实现一个,然后利用现有的DLNA应用来测试我们的功能是否完备。

(1)MediaServer

推荐:BubbleUPnP,魔力视频,开心视频(KXPlayer),MediaServer

(2)MediaRenderer

推荐:开心视频(KXPlayer),MediaRender

(3) Control Point

一般集成在MediaServer软件中了,推荐:BubbleUPnP,魔力视频,开心视频(KXPlayer)

2.  UPnP的SDK

UPnP官网上提供了很多的SDK,各种语言的版本都有:

http://upnp.org/certification/toolsoverview/sdks/

这里说说常用的几个:

Cling,libupnp,GUPnP,CyberGarage,PlatinumKit

个人比较推荐:PlatinumKit,下篇文章将简单介绍一下PlatinumKit库。

3.  代码资源


(1) 一个使用UPnP的Echo示例代码:

http://jan.newmarch.name/internetdevices/upnp/upnp-programming.html

(2) 基于CyberGarage库的dlna开发(Android)

http://blog.csdn.net/lancees/article/details/8477513

https://github.com/geniusgithub/MediaPlayer

(3) 基于Platinum库的DMS实现(Android)

http://blog.csdn.net/lancees/article/details/9865411

https://github.com/geniusgithub/MediaServer

(4) 基于Platinum库的DMR实现(Android)

http://blog.csdn.net/lancees/article/details/8951679

https://github.com/geniusgithub/MediaRender

4. 小结

关于DLNA和UPnP协议的SDK和代码资源就介绍到这里了,下篇文章将主要介绍一下PlatinumKit库,有任何疑问欢迎留言或者来信[email protected]交流。

DLNA&UPnP开发笔记(3)

时间: 2024-08-02 19:08:43

DLNA&UPnP开发笔记(3)的相关文章

DLNA&UPnP开发笔记(1)

DLNA&UPnP协议为多媒体内容共享提供了标准的行业规范,随着移动互联网的火热发展,我相信它在智能家居领域一定会有着非常大的发展.我准备写几篇文章,分享一下最近在DLNA&UPnP协议开发方面的经验,DLNA&UPnP的文档特别多,在此我希望用自己的语言来引导大家快速理解DLNA&UPnP协议. (1)DLNA&UPnP协议是干什么的 简单来说,DLNA协议定义了一种通用的行业规范,目的是让电子设备之间可以方便地共享照片.视频.音乐等多媒体内容.(这篇文章讲得不错

DLNA&UPnP开发笔记(2)

由第一篇文章我们大致了解了DLNA的基本概念以及与UPnP的关系,本文主要介绍一下UPnP协议的基本组件和AV架构. 1.  UPnP协议组成 UPnP协议中,定义了两个主要的组件,一个是设备(Device),一个是控制点(Control Point).这就是为什么很多UPnP协议栈的SDK的接口代码一般都主要由Device和Control Point构成.设备是在网络中可见的对象,而控制点在网络中不可见. 一个UPnP的设备(Device)是不能直接访问和控制另一个UPnP的设备(Device

DLNA&UPnP开发笔记(4)— PlatinumKit库介绍

前面几篇文章主要从理论上介绍了DLNA和UPnP协议的相关概念和知识点,本文主要介绍一下PlatinumKit库,该库实现了UPnP协议栈,代码写得非常漂亮,但文档不多,所以希望我的介绍和引导能够帮助初学者更快速地掌握该库的应用. 1. PlatinumKit库的官方网站 http://www.plutinosoft.com/platinum/ 2. PlatinumKit库的特点 (1)由C++编写 (2)支持Windows, Mac OSX, Linux, iPhone, Android (

[Openwrt 项目开发笔记]:Openwrt平台搭建(一)

最近开始着手进行Openwrt平台的物联网网关设计,思路有些乱,通过笔记的方式进行记录和整理. 声明: 在本文中,有些内容摘自网上,我进行了整合,因此出处不明,在此对原文作者致歉! -----------------------------------------------------(分割线)------------------------------------------------------- 一. 选择Openwrt平台的理由 传统的路由器固件是由官方提供的.这些固件是不开源的,而

张高兴的 Windows 10 IoT 开发笔记:RTC 时钟模块 DS3231

原文:张高兴的 Windows 10 IoT 开发笔记:RTC 时钟模块 DS3231 GitHub:https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/DS3231 注意:不包含闹钟设置

Android开发笔记(一百零三)地图与定位SDK

集成地图SDK 国内常用的地图SDK就是百度和高德了,二者的用法大同小异,可按照官网上的开发指南一步步来.下面是我在集成地图SDK时遇到的问题说明: 1.点击基本地图功能选项,不能打开地图,弹出"key验证出错!请在AndroidManifest.xml文件中检查key设置的"的红色字提示.查看日志提示"galaxy lib host missing meta-data,make sure you know the right way to integrate galaxy&

微信订阅号开发笔记(二)

微信开发的流程其实很简单 o(∩_∩)o 哈哈!在微信网站的编辑操作 额,就不说了.虽然有人问过.下面是我的微信开发过程,简单记录下. 成为开发者 材料:1.自己的服务器资源,百度的BAE,新浪的SAE都不错. 2.懂那么点编程语言. 3.注册微信公众号. 上面的都有了之后,就可以自己动手开发了.哇咔咔,好兴奋.有木有. 在登录进去之后,怎么成为开发者?不知道,自己看去. 开始coding吧. 1.验证 if (! empty ( $_GET ['echostr'] ) && ! empt

微信订阅号开发笔记(三)

1.接收语音识别结果 if($msgType=="voice"){ //收到语音消息 //MediaId 语音消息媒体id,可以调用多媒体文件下载接口拉取数据. //Format 语音格式,如amr,speex等 $format = $postObj->Format; $mediaId = $postObj->MediaId; //开通语音识别功能,用户每次发送语音给公众号时,微信会在推送的语音消息XML数据包中,增加一个Recongnition字段. //注:由于客户端缓

微信订阅号开发笔记(四)

1.创建菜单 //创建菜单 public function createMenu(){ $url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token="; $url.=$this->getacctoken(); //目前自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单.一级菜单最多4个汉字, //二级菜单最多7个汉字,多出来的部分将会以"..."代替.请注意,创建自定义菜单