技术博客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只能全屏播放
•简单使用:

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

//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3498500.html

本文对应pdf文档下载链接,猛戳-->:

多媒体-02.视频播放.pdf
95.6 KB

 

本文对应pdf文档下载链接,猛戳—>:https://www.evernote.com/shard/s227/sh/8754b8a6-6f11-4f71-a914-f9ac90e7f56e/ac0df8a6c105965e961cf1277fc1b433

//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3498500.html

在iOS开发中如何播放视频的更多相关文章

  1. iOS开发--利用MPMoviePlayerViewController播放视频简单实现

    一.MPMoviePlayerViewController和MPMoviePlayerController区分开,前者继承自NSObject,后者继承自UIViewController 二.MPMov ...

  2. iOS开发--利用MPMoviePlayerController播放视频简单实现

    一.包含头文件#import <MediaPlayer/MediaPlayer.h> 二.重点:给MPMoviePlayerController的view设置frame,并且将view添加 ...

  3. iOS开发中遇到的一些问题及解决方案【转载】

    iOS开发中遇到的一些问题及解决方案[转载] 2015-12-29 [385][scrollView不接受点击事件,是因为事件传递失败] // //  MyScrollView.m //  Creat ...

  4. iOS开发UI篇—iOS开发中三种简单的动画设置

    iOS开发UI篇—iOS开发中三种简单的动画设置 [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要“参与到”动画中 [UIView b ...

  5. 怎样实现IOS开发中的数据存储方式

    iOS 开发中,一般有如下几种数据存储方式.需要根据具体的业务场景,选择 合适的数据存储方式. (1)  用户默认设置 – 这种情况通常不需要用户干预,如游戏通关信息,Video 播放记录,或者 Ap ...

  6. IOS开发中AVFoundation中AVAudioPlayer的使用

    IOS开发中如何调用音频播放组件 1.与音频相关的头文件等都在AVFoundation.h中,所以第一步是添加音频库文件: #import <AVFoundation/AVFoundation. ...

  7. iOS开发—音乐的播放

    iOS开发—音乐的播放 一.简单说明 音乐播放用到一个叫做AVAudioPlayer的类,这个类可以用于播放手机本地的音乐文件. 注意: (1)该类(AVAudioPlayer)只能用于播放本地音频. ...

  8. 在原生开发中控制HTML5视频!

    在原生开发中控制HTML5视频! PC端 视频如何自动播放! 在video标签中添加 autoplay + muted(静音属性!) 温馨提醒: video是一个块级元素! 但是唯一的缺陷就是视频没有 ...

  9. 总结iOS开发中的断点续传那些事儿

    前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...

随机推荐

  1. jdbc 小结

    1,PreparedStatement/Statement区别: 1,防止sql注入式攻击(sql注入:就是通过非正常手段(比如在url中添加参数)),将sql文执行(比如or 1=1) 2,Prep ...

  2. Spring MVC @RequestParam @RequestHeader @CookieValue用法

    摘要: package com.hust.springmvc1; import org.springframework.stereotype.Controller; import org.spring ...

  3. jQuery表单验证组件BootstrapValidator

    github:https://github.com/nghuuphuoc/bootstrapvalidator 参考博客:JS组件系列——Form表单验证神器: BootstrapValidator ...

  4. 如何在VScode中添加代码片段

    拿 VUE 举例,新建 VUE 文件,输入前缀,出现代码段 文件 --->  首选项 ---> 用户代码片段  在输入框中输入 vue ,找到 vue.json ,然后在 vue.json ...

  5. BZOJ 1444 有趣的游戏(AC自动机+矩阵快速幂)

    真的是很有趣的游戏... 对每个单词构建好AC自动机后,由于单词都是相同长度的且不同,所以不会出现互相为子串的形式. 那么我们对AC自动机上的节点构建转移矩阵.对于每个单词末尾的节点.该节点的出边仅仅 ...

  6. 程序猿必备技能:数据库管理——关于MySQL

    一.初识MySQL 1.什么是数据库? 数据库(Database,DB)简而言之就是存放数据的仓库,是为了实现一定目的,按照某种规则组织起来的数据的集合. 2.使用数据库的必要性 (1)结构化存储大量 ...

  7. AngularJS中$watch

    $watch在digest执行时,如果watch观察的value与上一次执行时不一样时,就会被触发.angularjs内部的watch实现了页面随model的及时更新.$watch 方法在用的时候主要 ...

  8. p12转pem公钥私钥

    cer格式证书生成p12文件,前面写了有一篇了. 这里是从p12文件导出公钥和私钥 //1.生成1.key文件 openssl pkcs12 -in apple_payment.p12 -nocert ...

  9. ssh-keygen的使用方法及配置authorized_keys两台linux机器相互认证

    一.概述 1.就是为了让两个linux机器之间使用ssh不需要用户名和密码.采用了数字签名RSA或者DSA来完成这个操作 2.模型分析 假设 A (192.168.20.59)为客户机器,B(192. ...

  10. 洛谷 P3802 小魔女帕琪 解题报告

    P3802 小魔女帕琪 题目背景 从前有一个聪明的小魔女帕琪,兴趣是狩猎吸血鬼. 帕琪能熟练使用七种属性(金.木.水.火.土.日.月)的魔法,除了能使用这么多种属性魔法外,她还能将两种以上属性组合,从 ...