视频播放

如何播放视频

iOS提供了MPMoviePlayerController、MPMoviePlayerViewController两个类,可以用来轻松播放视频和网络流媒体\网络音频

提示:网络音频同样使用此控制器播放

YouTobe就是用MPMoviePlayerController实现的

MPMoviePlayerViewController只能全屏播放视频

上述两个类都定义在了MediaPlayer框架中

MPMoviePlayerController支持的格式

MPMoviePlayerController

继承自NSObject

内部有个view可以展示视频内容

将该视图添加其他控制器的view上,即可显示视频内容

MPMoviePlayerController可以播放的视频格式包括:

pH.264、MPEG-4等

支持的文件扩展名包括:avi,mkv,mov,m4v,mp4等

可以从苹果官网:http://support.apple.com/kb/HT1425下载一些用来测试的视频文件,文件都比较小

提示:MPMoviePlayerController并不支持所有的视频格式,如果要播放不支持的视频格式,需要借助第三方框架进行解码,如VLC

https://github.com/videolan/vlc

MPMoviePlayerController的使用

加载视频资源(注意,如果url为nil同样可以加载)

NSAssert(self.url, @"URL不能为空");

[[MPMoviePlayerController alloc] initWithContentURL:self.url];

显示

[self.view addSubview:self.moviePlayer.view];

通过设置AutoresizingMask属性可以在横竖屏转换时自动调整视图大小

播放

[self.moviePlayer play];

全屏

[self.moviePlayer setFullscreen:YES animated:YES];

MPMoviePlayerController的播放状态是通过通知中心监听的

常用监听通知事件

状态变化

MPMoviePlayerPlaybackStateDidChangeNotification

播放结束

MPMoviePlayerPlaybackDidFinishNotification

退出全屏

MPMoviePlayerDidExitFullscreenNotification

截屏完成

MPMoviePlayerThumbnailImageRequestDidFinishNotification

截屏方法

-requestThumbnailImagesAtTimes:timeOption:

Q & A

视频播放MPMoviePlayerController的更多相关文章

  1. Model--汇总

    NSFileManager.NSURL.NSFileHandle.NSData.NSXMLParser.NSUserDefaults.NSKeyedArchiver.NSKeyedUnarchiver ...

  2. ios9基础知识(技能篇)

    NSFileManager.NSURL.NSFileHandle.NSData.NSXMLParser.NSUserDefaults.NSKeyedArchiver.NSKeyedUnarchiver ...

  3. ios系统视频播放器MPMoviePlayerController应用遇到的坑

    最近在做视频播放时应用系统MPMoviePlayerController播放器播放视频,发现点击快进快退会出现黑屏现象,并且点击完成按钮也不会返回,代码以及界面如下所示: NSURL *url=[se ...

  4. MPMoviePlayerController 视频播放器—IOS开发

    MPMoviePlayerController 与AVAudioPlayer有点类似,前者播放视频,后者播放音频,不过也有很大不同,MPMoviePlayerController 可以直接通过远程UR ...

  5. ios开发之 MPMoviePlayerController 视频播放器

    MPMoviePlayerController 与AVAudioPlayer有点类似,前者播放视频,后者播放音频,不过也有很大不同,MPMoviePlayerController 可以直接通过远程UR ...

  6. MPMoviePlayerController过期导致视频播放时间条颠倒及AVPlayerViewController的用法

    MPMoviePlayerController虽然好用 但是过期了 所以可能会导致一些莫名的问题  ,比如说下面时间条的问题 但我们可以使用AVPlayerViewController来实现相应的想过 ...

  7. Swift中使用MPMoviePlayerController实现自定义视频播放器界面

    默认情况下播放器自带各种控制按钮,比如前进后退播放暂停等: var url = NSBundle.mainBundle().URLForResource("1", withExte ...

  8. ios开发 MPMoviePlayerController 视频播放器

    项目中用到视频播放功能, 写点视频基础部分 MPMoviePlayerController是通过MediaPlayer.frame引入的,可用于播放在iOS支持的所有格式的视频,用起来很简单!!! M ...

  9. 视频播放器开发中遇到的一些小问题MPMoviePlayerController

    1 开发环境是 xcode6  ipad3真机 ios8.1.1越狱 需要添加以下代码  ,否则真机测试没有外音,只有耳机   NSError *setCategoryError = nil;    ...

随机推荐

  1. R语言-方差分析

    方差分析指的是不同变量之间互相影响从而导致结果的变化 1.单因素方差分析: 案例:50名患者接受降低胆固醇治疗的药物,其中三种治疗条件使用药物相同(20mg一天一次,10mg一天两次,5mg一天四次) ...

  2. spring 通过编程来获取属性文件

    配置可以读取属性: <beans profile="dev"> <context:property-placeholder ignore-resource-not ...

  3. 原生js大总结九

    81.ES6的Symbol的作用是什么?   ES6引入了一种新的原始数据类型Symbol,表示独一无二的值   82.ES6中字符串和数组新增了那些方法   字符串       1.字符串模板    ...

  4. Project Euler 516 5-smooth totients (数论)

    题目链接: https://projecteuler.net/problem=516 题目: \(5\)-smooth numbers are numbers whose largest prime ...

  5. UVA 11584 - Partitioning by Palindromes DP

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...

  6. Windows 7 Ultimate with SP1(x64) MSDN 官方简体中文旗舰版原版

    Windows 7 Ultimate(旗舰版)64位功能齐全,所有其他版本所具有的高级功能它都有!它是最好的Windows 7操作系统.旗舰版很受网友欢迎,下载速度飞快. MSDN 我告诉你下载官网: ...

  7. 【Codeforces Round #299 (Div. 2) C】 Tavas and Karafs

    [链接] 我是链接,点我呀:) [题意] 给你一个规则,让你知道第i根萝卜的高度为si = A+(i-1)*B 现在给你n个询问; 每次询问给你一个固定的起点l; 让你找一个最大的右端点r; 使得l. ...

  8. hive SQL优化之distribute by和sort by

    近期在优化hiveSQL. 以下是一段排序,分组后取每组第一行记录的SQL INSERT OVERWRITE TABLE t_wa_funnel_distinct_temp PARTITION (pt ...

  9. Java与模式:装饰(Decorator)模式

    装饰模式使用被装饰类的一个子类的实例.把client的调用委派到被装饰类,装饰模式的关键在于这样的扩展是全然透明的.   装饰模式在Java种使用也非常广泛,比方我们在又一次定义button.对话框等 ...

  10. echart报表插件使用笔记(二)--按月统计

    按月统计注冊人数 java类: package com.spring.controller; import java.io.IOException; import java.sql.Connectio ...