DLNA开发

最近在基于dlna开源库重新实现dlna服务,对于手机端来说主要提供ControlPoint+媒体文件HttpServer功能。
调研了国内APP和友商的实现,以使用libupnp和Cling的居多,部分使用Platinum;
Cling Java开发的,对于APP来说容易导入,缺陷就是github上现在不再维护了;
Libupnp以C实现,设备和服务封装不如cling及Platinum,开发起来不如后两者容易,但胜在BSD license;
Platinum C++实现,对于device和服务封装的较好,使用起来简单;只是在用NDK R20进行编译时需要修改config文件,费了半天功夫才编出可用.a文件;
Platinum GPL license,商用时有一定代价;但提供的mediacontroller 对象及FileMediaServer对象提供CP及媒体文件传输功能,只需要再实现代理对象的回调函数即可,开发难度相对简单,DIDL功能在代码里也有实现。另外提供的测试可执行文件,对于理解DIDL,封装的filemediaserver, MicMediaController这些对象很有帮助.

 另外记录下github上找到的各种方案的实现demo 
 easydlna(libupnp)
 geniusgithub/MediaRender(platinum)
 cling的有google实现的一个较早app可供参考
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章