在iOS开发中如何播放视频
技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/luohanchenyilong
如何播放视频
•iOS提供了叫做MPMoviePlayerController、MPMoviePlayerViewController的两个类,可以用来轻松播放视频
ØYouTobe就是用MPMoviePlayerController实现的
ØMPMoviePlayerViewController只能全屏播放视频
•上述两个类都定义在了MediaPlayer框架中
MPMoviePlayerController支持的格式
•MPMoviePlayerController继承自NSObject,它内部有个view用来展示视频内容,
添加其他控制器的view上面即可显示•MPMoviePlayerController可以播放的视频格式有以下两种:ØH.264
ØMPEG-4 Part 2 video
•支持的文件拓展名为:avi,mkv,mov,m4v,mp4等
•可以到苹果官网:http://support.apple.com/kb/HT1425下载一些用来测试的视频文件,文件都比较小
技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/luohanchenyilong
MPMoviePlayerController-01-加载资源
//加载视频资源
NSString*urlString = [[NSBundlemainBundle]pathForResource:@"sample_iTunes"ofType:@"mov"];
NSURL*url = [NSURLfileURLWithPath:urlString]; //创建播放器
_player= [[MPMoviePlayerControlleralloc]initWithContentURL:url];
MPMoviePlayerController-02-显示
//设置尺寸_player.view.frame=self.view.bounds;
_player.view.autoresizingMask=UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
//添加到控制器的view上[self.viewaddSubview:_player.view]; //播放[_playerplay];
MPMoviePlayerController-03-添加通知监听
//监听播放状态的改变
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(videoStateChange)name:MPMoviePlayerPlaybackStateDidChangeNotificationobject:_player];
//监听播放器结束全屏
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(exitFullscreen)name:MPMoviePlayerDidExitFullscreenNotificationobject:_player];
//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3498500.html
MPMoviePlayerController其他属性
•是否要自动播放
@property(nonatomic)BOOLshouldAutoplay;
•全屏显示
@property(nonatomic,getter=isFullscreen)BOOLfullscreen;
- (void)setFullscreen:(BOOL)fullscreen animated: (BOOL)animated;
•截取视频中的图片
- (void)requestThumbnailImagesAtTimes:(NSArray*)playbackTimes timeOption:(MPMovieTimeOption)option;
MPMoviePlayerViewController
•MPMoviePlayerViewController继承自UIViewController,它内部封装了一个
MPMoviePlayerController
•MPMoviePlayerViewController只能全屏播放
•简单使用:
//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3498500.html
本文对应pdf文档下载链接,猛戳-->: |
本文对应pdf文档下载链接,猛戳—>:https://www.evernote.com/shard/s227/sh/8754b8a6-6f11-4f71-a914-f9ac90e7f56e/ac0df8a6c105965e961cf1277fc1b433
//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3498500.html
在iOS开发中如何播放视频的更多相关文章
- iOS开发--利用MPMoviePlayerViewController播放视频简单实现
一.MPMoviePlayerViewController和MPMoviePlayerController区分开,前者继承自NSObject,后者继承自UIViewController 二.MPMov ...
- iOS开发--利用MPMoviePlayerController播放视频简单实现
一.包含头文件#import <MediaPlayer/MediaPlayer.h> 二.重点:给MPMoviePlayerController的view设置frame,并且将view添加 ...
- iOS开发中遇到的一些问题及解决方案【转载】
iOS开发中遇到的一些问题及解决方案[转载] 2015-12-29 [385][scrollView不接受点击事件,是因为事件传递失败] // // MyScrollView.m // Creat ...
- iOS开发UI篇—iOS开发中三种简单的动画设置
iOS开发UI篇—iOS开发中三种简单的动画设置 [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要“参与到”动画中 [UIView b ...
- 怎样实现IOS开发中的数据存储方式
iOS 开发中,一般有如下几种数据存储方式.需要根据具体的业务场景,选择 合适的数据存储方式. (1) 用户默认设置 – 这种情况通常不需要用户干预,如游戏通关信息,Video 播放记录,或者 Ap ...
- IOS开发中AVFoundation中AVAudioPlayer的使用
IOS开发中如何调用音频播放组件 1.与音频相关的头文件等都在AVFoundation.h中,所以第一步是添加音频库文件: #import <AVFoundation/AVFoundation. ...
- iOS开发—音乐的播放
iOS开发—音乐的播放 一.简单说明 音乐播放用到一个叫做AVAudioPlayer的类,这个类可以用于播放手机本地的音乐文件. 注意: (1)该类(AVAudioPlayer)只能用于播放本地音频. ...
- 在原生开发中控制HTML5视频!
在原生开发中控制HTML5视频! PC端 视频如何自动播放! 在video标签中添加 autoplay + muted(静音属性!) 温馨提醒: video是一个块级元素! 但是唯一的缺陷就是视频没有 ...
- 总结iOS开发中的断点续传那些事儿
前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...
随机推荐
- window redis php(必须版本>=5.4) 安装
1.下载redis的win版客户端 下载地址: http://code.google.com/p/servicestack/wiki/RedisWindowsDownload 2.选择32bit,64 ...
- PHP之array_flip()方法
array_flip — 交换数组中的键和值 array array_flip ( array $trans ) array_flip() 返回一个反转后的 array,例如 trans 中的键名变成 ...
- 第107天:Ajax 实现简单的登录效果
使用 Ajax 实现简单的登录效果 Ajax是一项使局部网页请求服务器信息,而不需整体刷新网页内容的异步更新技术.这使得向服务器请求的数据量大大减少,而且不会因局部的请求失败而影响到整体网页的加载. ...
- 【Python】极简单的方式序列化sqlalchemy结果集为JSON
继承 json.JSONEncoder 实现一个针对sqlalchemy返回类型的处理方式. sqlalchemy的返回类型有大都有两种,一种是Model对象,一种是Query集合(只查询部分字段). ...
- 【Python】Python发展历史
起源 Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣.用他 ...
- 【bzoj5206】[Jsoi2017]原力 根号分治+STL-map
题目描述 一个原力网络可以看成是一个可能存在重边但没有自环的无向图.每条边有一种属性和一个权值.属性可能是R.G.B三种当中的一种,代表这条边上原力的类型.权值是一个正整数,代表这条边上的原力强度.原 ...
- VSS2005设置不输入密码直接登录VSS
1.登录管理员 2.Tools-->Options-->General -->Use network name for automatic user log in 去掉勾选不自动登 ...
- 【EF】EntityFramework DBFirst的使用
一.前言 久闻EF大名,之前做C/S产品用的是Dapper对SqlLite进行ORM.然后接触公司授权系统后发现用的是EntityFramework对SQLSever进行ORM.授权系统 ...
- 【MediaElement】WPF视频播放器【3】
一.前言 对于<MediaElement>前两章介绍了差不多了,其实好的界面还需要UI工程师的配合,比如帮忙设计下按钮的样式等等.同样视频本身也需要吸引人,不然做的再好的播放器也没用.之后 ...
- apue.3e 的安装 (基于ubuntu12.0.4)
本菜刚刚学习UNIX下高级编程,无奈搭建本书编程环境时遇到不少问题.幸好网上有各种大神的解决办法让我最终解决了问题.在这里感谢为LINUX开源操作系统奋斗的大神. 不过话说回来,网上大都是针对UNIX ...