一、播放视频

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下载一些用来测试的视频文件,文件都比较小

三、MPMoviePlayerController-01-加载资源

// 加载视频资源

NSString *urlString = [[NSBundle mainBundle] pathForResource:@"sample_iTunes" ofType:@"mov"];

NSURL *url = [NSURL fileURLWithPath:urlString];

// 创建播放器

_player = [[MPMoviePlayerController alloc] initWithContentURL:url];

四、MPMoviePlayerController-02-显示

// 设置尺寸

_player.view.frame = self.view.bounds;

_player.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

// 添加到控制器的view上

[self.view addSubview:_player.view];

// 播放

[_player play];

五、MPMoviePlayerController-03-添加通知监听

// 监听播放状态的改变

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoStateChange) name:MPMoviePlayerPlaybackStateDidChangeNotification object:_player];

// 监听播放器结束全屏

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(exitFullscreen) name:MPMoviePlayerDidExitFullscreenNotification object:_player];

六、MPMoviePlayerController其他属性

是否要自动播放

@property(nonatomic) BOOL shouldAutoplay;

全屏显示

@property(nonatomic, getter=isFullscreen) BOOL fullscreen;

- (void)setFullscreen:(BOOL)fullscreen animated:(BOOL)animated;

截取视频中的图片

- (void)requestThumbnailImagesAtTimes:(NSArray *)playbackTimes timeOption:(MPMovieTimeOption)option;

七、MPMoviePlayerViewController

MPMoviePlayerViewController继承自UIViewController,它内部封装了一个MPMoviePlayerController

MPMoviePlayerViewController只能全屏播放

简单使用:

MPMoviePlayerViewController *play = [[MPMoviePlayerViewController alloc] initWithContentURL:url];

转载于:https://www.cnblogs.com/monicaios/p/3526337.html

iOS基础 - 多媒体相关推荐

  1. iOS基础问答面试题连载-附答案

    2017-02-02 timhbw CocoaChina 以下是一些自己收集的比较基础的问题(大神可以忽略),附上答案,方便大家阅读.俗话说得好,基础不牢,地动山摇.文章末尾会提供PDF版的文档,方便 ...

  2. IOS基础之iPad的屏幕旋转方向判断

    IOS基础之iPad的屏幕旋转方向判断 #pragma mark - 屏幕旋转 - (void)viewWillTransitionToSize:(CGSize)size withTransition ...

  3. IOS基础之segue使用,

    IOS基础之segue使用, segue是接线,接入的意思.控制器与控制器之间的连线. sourceViewControl来源控制器 destinationViewController 目标控制器,以 ...

  4. IOS基础之打砖块项目演练

    IOS基础之打砖块项目演练 本项目涉及CADisplayLink核心动画,各个控件的使用,运行循环,逻辑判断等,if和for,frame坐标的改变,CGPoint结构体,成员变量的赋值,两种手势,拖拽 ...

  5. ios基础考试题1,实现按钮点击改变位置和图片的透明度和动画的使用

    ios基础考试题1,实现按钮点击改变位置和图片的透明度和动画的使用 考察frame,center,bounds的坐标,改变,动画的使用,图片容器的UIImageView的透明度等知识 oc写法 // ...

  6. IOS基础之使用UICollectionView纯代码创建

    IOS基础之使用UICollectionView纯代码创建 资料来自2016-5-12某站. 有一定的参考意义, 涉及plist 转字典模型,UICollectionView使用纯代码加载到View里 ...

  7. IOS基础之计算器的编写

    IOS基础之计算器的编写 // // ViewController.m // Fraction_Calculator // // Created by 鲁军 on 2021/4/26. //#impo ...

  8. IOS基础之NSFounation框架的NSDictionary,NSMutableDictionary的使用

    IOS基础之NSFounation框架的NSDictionary,NSMutableDictionary的使用 // // main.m // Day11-NSFoudation框架 // // Cr ...

  9. IOS基础之NSString,NSMutableString,NSArray的基本使用

    IOS基础之NSString,NSMutableString,NSArray的基本使用 // // main.m // Day10-Foundation框架 // // Created by 鲁军 o ...

最新文章

  1. Zigbee通讯漫谈(初次见面)
  2. linux虚拟网络设备之tun/tap(一)
  3. spring11:为应用指定多个spring配置文件
  4. Python逻辑运算符:if and
  5. vue 导出 excel表格
  6. 添加aspnet_isapi.dll的映射时“确定”按钮不可用的解决方案
  7. z-wave问题汇总
  8. 月薪15k起,想进入这个行业有哪些书值得读?
  9. 秦始皇:请叫我数据治理专家
  10. open×××结合pam_mysql认证出错的解决方法
  11. Lync Server 2010 客户端访问提示验证服务器中的证书时遇到问题解决方法
  12. AndroidStudio实现在图片上涂鸦并记录涂鸦轨迹
  13. 教学流程图怎么画?画流程图好用的软件
  14. 可视化大屏自适应效果
  15. 论文阅读《No bot expects the DeepCAPTCHA》
  16. 英语口语196之每日十句口语
  17. 【CSS】笔记2-复合选择器、显示模式、背景
  18. 极光推送之java后台封装REST API
  19. 头歌平台(EduCoder)—— Matplotlib图形配置
  20. matlab 画心形图片

热门文章

  1. BootStrap笔记-加载效果的实现
  2. C++|Linux工作笔记-C++获取Linux中shell命令结果
  3. Redis工作笔记-Jedis的基本使用
  4. Redis工作笔记-主从复制Replication
  5. Qt工作笔记- 解决cc1plus.exe: error: out of memory allocating
  6. mysql 安装1607_mysql服务启动报1607error
  7. QByteArray
  8. python excel xlwings_python excel神器xlwings
  9. php 用积分兑换_PHP积分兑换接口demo
  10. 计组之存储系统:3、主存与CPU的链接(字扩展、位扩展、字位扩展、74LS138)