Android 使用 DLNA 在电脑或者智能电视上播放手机媒体文件

Digital Media Server(DMS)-数字媒体服务器,提供媒体获取、记录、存储和输出功能。同时,内容保护功能是对DMS的强制要求。

Digital Media Player(DMP)-数字媒体播放器。能从DMS/M-DMS上查找并获取媒体内容并播放和渲染显示。比如智能电视、家庭影院等。

Digital Media Renderer(DMR)-数字媒体渲染设备。通过其他设备配置后,可以播放从DMS上的内容。与DMP的区别在于DMR只有接受媒体和播放功能,而没查找有浏览媒体的功能。比如显示器、音箱等。

 

DLNA的介绍

Upup协议编程实践

Dlna通讯采用upnp协议。

做DLNA开发的时候都是用现有的upnp开源框架,

upnp官网地址是:http://upnp.org/

SDK地址为:http://upnp.org/sdcps-and-certification/resources/sdks/

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

1、用CyberGarage库的DMP实现、ControlPoint是核心类

开源DLNA Github地址:cybergarage-upnp

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

 

Github:  https://github.com/geniusgithub/MediaPlayer

 

2、关于DMR、DMS,采用的upnp框架是Platinum SDK

官方网址是 http://www.plutinosoft.com/platinum

该库是一个跨平台的C++库,利用该库,可以很容易就构建出DLNA/UPnP控制点 (DLNA/UPnP Control Point)和DLNA/UPnP设备(DLNA/UPnP Device),其中包括有UPnP AV Media Server, Media Render & Control Point的例子 

关于该库如何编译,请参考这篇博文:NDK下 将Platinum SDK 编译成so库 

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

 

Github:  https://github.com/geniusgithub/MediaServer

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

 

Github:   https://github.com/geniusgithub/MediaRender

posted @ 2016-08-23 15:57  晕菜一员  阅读(6012)  评论(0编辑  收藏  举报