• iOS上实现DLNA功能Github上搜一下大多是基于C++的Platinum,于是就想能不能靠OC实现一套方便iOS开发者.于是就有了MRDLNA这个库.

  • DLNA投屏的相关的介绍,协议,具体XML内容就不细说了. 这里介绍一下 MRDLNA这个库的投屏使用.

支持Pod安装MRDLNA

一.搜索设备

设置好代理
self.dlnaManager = [MRDLNA sharedMRDLNAManager];
self.dlnaManager.delegate = self;
复制代码
调用开始搜索后就会搜索整个局域网中支持投视频的设备
- (void)viewWillAppear:(BOOL)animated{[super viewWillAppear:animated];[self.dlnaManager startSearch];
}
复制代码

二.发现设备后的回调

发现设备后在代理中可以拿到
- (void)searchDLNAResult:(NSArray *)devicesArray{NSLog(@"发现设备");self.deviceArr = devicesArray;[self.dlnaTable reloadData];
}//devicesArray中拿到的是CLUPnPDevice类型的对象
复制代码
  • Demo中将搜索页面和投屏控制页面分开来的,所以在搜索页面搜索到设备后就把目标设备和播放Url设置给了dlnaManager

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{NSString *testUrl = @"http://223.110.239.40:6060/cntvmobile/vod/p_cntvmobile00000000000020150518/m_cntvmobile00000000000659727681";[tableView deselectRowAtIndexPath:indexPath animated:YES];if (indexPath.row < self.deviceArr.count) {CLUPnPDevice *model = self.deviceArr[indexPath.row];self.dlnaManager.device = model;self.dlnaManager.playUrl = testUrl;DLNAControlVC *controlVC = [[DLNAControlVC alloc] init];controlVC.model = model;[self.navigationController pushViewController:controlVC animated:YES];}
}
复制代码

三.投屏

- (void)viewDidLoad {[super viewDidLoad];self.dlnaManager = [MRDLNA sharedMRDLNAManager];[self.dlnaManager startDLNA];
}
复制代码

四.投屏后的播放控制

/**退出*/
- (IBAction)closeAction:(id)sender {[self.dlnaManager endDLNA];
}/**播放/暂停*/
- (IBAction)playOrPause:(id)sender {if (_isPlaying) {[self.dlnaManager dlnaPause];}else{[self.dlnaManager dlnaPlay];}_isPlaying = !_isPlaying;
}/**进度条seek单位是秒*/
- (IBAction)seekChanged:(UISlider *)sender{NSInteger sec = sender.value * 60 * 60;NSLog(@"播放进度条======>: %zd",sec);[self.dlnaManager seekChanged:sec];
}/**音量volume建议传0-100之间字符串*/
- (IBAction)volumeChange:(UISlider *)sender {NSString *vol = [NSString stringWithFormat:@"%.f",sender.value * 100];NSLog(@"音量========>: %@",vol);[self.dlnaManager volumeChanged:vol];
}/**切集*/
- (IBAction)playNext:(id)sender {NSString *testVideo = @"http://wvideo.spriteapp.cn/video/2016/0328/56f8ec01d9bfe_wpd.mp4";[self.dlnaManager playTheURL:testVideo];
}
复制代码

转载于:https://juejin.im/post/5aeff0af518825672033fb12

纯OC实现iOS DLNA投屏功能了解一下相关推荐

  1. mx播放器有没有投屏功能_芝杜DLNA投屏功能

    DLNA投屏是一个非常高效实用的功能,也是众多高端家用播放器必备功能之一. 简而言之,便是把手机或平板电脑(同时支持苹果与安卓)中的界面,比如在线视频.音乐软件,直接通过播放器投射在电视机大屏幕上. ...

  2. 使用Platium库开发dlna投屏功能

    这几天公司的应用(iOS端)上要加一个dlna的功能,就是局域网内设备投屏控制的一个功能,并提供移动端控制.因为三方库Platinum是使用C++写的,所以我被分配去做库的Objective-C封装的 ...

  3. android 投屏开发框架,Android DLNA投屏-基于CyberGarage开发投屏功能

    在上一篇博客<Android DLNA投屏-基本原理>中,讲到了DLNA的一些基本原理.了解这些基本原理,对开发是很有帮助的.但仅仅依据原理去进行Android DLNA开发,是比较困难的 ...

  4. ios10 Android airplay,iOS下AirPlay投屏功能实现

    这篇文章注重于如何实现AirPlay投屏功能.具体AirPlay的实现逻辑这里不再赘述,网上帖子很多 首先.想要呼出AirPlay列表的话,需要将MPVolumnView控件声明且添加到UI.上使用之 ...

  5. Android DLNA投屏-基本原理

    转 https://www.jianshu.com/p/19934892a235 1. DLNA简介 DLNA(Digital Living Network Alliance),即数字家庭网络联盟. ...

  6. 怎么连接屏幕_触控一体机怎么实现无线投屏功能

    触控一体机怎么实现无线投屏功能 今天早上有网友咨询,他会议室买的85寸触控会议平板,但是自带的无限投屏功能不能满足会议室的需求,想通过专业的无线投屏设备满足会议室的需求.通过对用户需求的了解,推荐相对 ...

  7. win10无线投屏_Win10系统自带手机投屏功能真的能取代投屏器吗?

    Win10系统有自带的手机投屏功能你听说了吗?据说投屏简单快速.电脑与手机都无需下载第三方软件.更无需任何额外的费用. 这么好的投屏功能小编当然要来探索探索啦. 首先,我们来看看它的投屏步骤是否繁琐. ...

  8. 手机投屏功能说明及开发代码

    手机投屏功能说明 手机投屏--主要是实现小屏转大屏功能,可以将手机上的图片,音频,视频,文档无线同步到HDMI接口电视机和投影从上大屏观看,适用于家庭娱乐,商务会议,教学培训等.应用场景: 一.将手机 ...

  9. linux 无线投屏windows,拼接屏加入无线投屏功能,新功能智慧体验

    信弘新推出的拼接屏无线投屏功能的加入,能够将您手机.电脑.ipad.笔记本等设备上的图像.视频进行放大共享. 产品连接示意图:主机 USB 口连接鼠标或触控屏 USB 线后,即可点选触控桌面图标 信弘 ...

最新文章

  1. wp7 手机归属地查询
  2. OpenCV Laplacian算子
  3. STM32 电机教程 28 - ST MCLIB实战之 位置闭环控制
  4. Linux tar.gz、tar、bz2、zip的区别,如何选择呢
  5. VHD工具-VHDTOOL
  6. 2.1对 特征归一化 的一些理解
  7. python 图标题上移_Python-Matplotlib将图形标题移动到y轴
  8. 无法推动项目起步?试试麦当劳理论
  9. android switch自定义样式,Android自定义Switch样式
  10. express4.x中文文档
  11. matlab直流电机转速 电流双闭环,转速电流双闭环直流调速系统的课程设计(MATLABSimulink)..docx...
  12. chrome浏览器安装包点击无反应
  13. AppData文件夹下Local,Locallow和Roaming
  14. markdown如何生成一级标题
  15. SQL存储过程对象名无效
  16. 病毒分析--WannaCry分析--1
  17. 小白Nvidia TK1 Jetpack安装/重装系统详细步骤(小车第一步)
  18. 简单个人静态HTML网页设计作品 基于HTML+CSS+JavaScript仿小米手机网站 html静态在线购物商城网页制作
  19. mysql练习(1)
  20. myquant量化获取高频行情数据的操作步骤

热门文章

  1. 入耳式降噪耳机推荐,音质表现好的降噪耳机推荐
  2. 这些免费的网站值得你收藏
  3. 刚刚过去的六一,OPPO Find新机让一些“大孩子”忍不住落泪!
  4. IDEA常用配置和常用插件及常用快捷键
  5. 在线生成favorite ico的网站
  6. 如何动态创建水晶报表
  7. Linux常用命令详解(两万字超长文)
  8. 金蝶EAS_WFLL2开发记录
  9. 计算机一级考试《MS Office》
  10. 电子表格软件能解决什么问题?