在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开发中的断点续传那些事儿
前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...
随机推荐
- nodejs 中on 和 emit
首先测试用例: var EventEmitter = require('events').EventEmitter var life = new EventEmitter(); // life.on( ...
- "数学口袋精灵"bug
首先要部署这个app项目就是第一步: 一.前提下载并安装JDK 在线图解:手把手教你安装JDK http://www.lvtao.net/server/windows-setup-jdk.h ...
- jQuery的滚动监听
jQuery的滚动监听 1.当前滚动的地方的窗口顶端到整个页面顶端的距离: var winPos = $(window).scrollTop(); 2.获取指定元素的页面位置: $(val).offs ...
- eclipse生成jar包 注意事项!
原文转自:http://www.cnblogs.com/zhangfei/archive/2013/01/22/2871075.html 第一:普通类导出jar包,我说的普通类就是指此类包含main方 ...
- Laravel 5.4 数据库迁移一次之后就不起作用!
https://segmentfault.com/q/1010000010806351 我在命令行中生成了一个新的迁移脚本: 当我执行命令:php artisan migrate 时 显示迁移成功,并 ...
- phpMyadmin导入导出数据中出现的错误处理
1 2
- Dbgrid控件多重选择的怪问题。BookMarkList,BookMark,使用书签,用的ADOQuery控件。100分送上,急阿!!!请高手帮忙!
Dbgrid控件多重选择的怪问题.BookMarkList,BookMark,使用书签,用的ADOQuery控件.100分送上,急阿!!!请高手帮忙! ( 积分: 100 )<br />p ...
- BZOJ 1975 魔法猪学院(A*求K短路)
显然每次贪心的走最少消耗的路径即可.那么也就是找出最短路,次短路,,,K短路之后消耗E的能量的最多的路径条数. 也就是裸的A*算法. #include <bits/stdc++.h> us ...
- CSS单位-长度
css中的长度单位有很多,不同的单位在特定的需求下能够有相当不错的表现,随着css3的发布,又有了一些新的单位添加进来,使我们在做前端页面的时候能够有更多的选择,更方便快捷的达到我们预期的效果. 正题 ...
- 【Java】JAVA-加密-DES加密代码详解
package util; import java.security.SecureRandom; import javax.crypto.spec.DESKeySpec; import javax.c ...
多媒体-02.视频播放.pdf