/*****

* 1. 视频播放

*

*  @格式:mp4 mov m4v m2v 3gp 3g2

*

*  @系统框架使用:#import <MediaPlayer/MediaPlayer.h>

不仅可以播放本地视频 也可以直接播放网络视频

MPMoviePlayerController 播放视频的类,这个类比较特殊,有Controller的一些属性,但又不完全是控制器

有两点需要注意:

1.MPMoviePlayerController 上面播放视频 的view 需要给它坐标

2.还需要添加在 某个视图上面

******/

MPMoviePlayerController播放时也需要有一个URL。

1.设置视频是否循环播放:repeatMode

2.是否允许分享到airPlay:allowsAirPlay

3.是否使用lairPlay:airPlayVideoActive

4.如果播放的是网络视频的话 是否需要自动继续播放:shouldAutoplay

5.获得视频加载状态:loadState

6.视频的播放状态:playbackState

7.设置视频显示样式:controlStyle

还有一些通知,如MPMoviePlayerPlaybackStateDidChangeNotification通过通知可以检测播放状态发生改变,

*如果前面设置了controlStyle,后面设置的setFullscreen 将不会起作用

2.

AVAudioPlayer音频播放类

AVAudioRecorder录音类

录音的初始化和属性和音频播放大同小异

共有的有:

音频:

1.开始:play  2.暂停:pause 3.停止:stop 预加载:prepareToPlay

4.代理AVAudioRecorderDelegate 如:播放结束时触发- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag

录音:

1.开始:record 2.暂停:pause 3.停止:stop 预加载:prepareToRecord

4.代理AVAudioPlayerDelegate 如:录音结束时触发(void)audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag

拓展:

1.进度 是按百分比计算(0到1之间)

progressView.progress = 0.0;

2.NSFileManager文件管理类 也是一个单例

NSFileManager *manager = [NSFileManager defaultManager];

其中有一个重要常用的方法

查询并取出一个文件下所有子文件:subpathsAtPath

如:查询临时文件下的子文件:NSArray *list = [manager subpathsAtPath:NSTemporaryDirectory()];

3.例子

//1.音频文件的url路径
18 NSURL *url=[[NSBundle mainBundle]URLForResource:@"风吹麦浪.mp3" withExtension:nil]; 20 //2.创建播放器
21 self.player=[[AVAudioPlayer alloc]initWithContentsOfURL:[NSUURL fileURLWithPath:url]
 error:nil];

23 //3.缓冲
24 [self.player prepareToPlay]; 29 //开始播放/继续播放
30 [self.player play];
34 //暂停
35 [self.player pause];
36 //停止
37 //注意:如果点击了stop,那么一定要让播放器重新创建,否则会出现问题哦
38 [self.player stop];

IOS开发-视频,音频,录音简单总结的更多相关文章

  1. IOS开发之音频--录音

    前言:本篇介绍录音. 关于录音,这里提供更为详细的讲解网址:http://www.cnblogs.com/kenshincui/p/4186022.html#audioRecord  ,并且该博客有更 ...

  2. iOS开发拓展篇-XMPP简单介绍

    iOS开发拓展篇-XMPP简单介绍 一.即时通讯简单介绍 1.简单说明 即时通讯技术(IM)支持用户在线实时交谈.如果要发送一条信息,用户需要打开一个小窗口,以便让用户及其朋友在其中输入信息并让交谈双 ...

  3. iOS开发多线程篇—多线程简单介绍

    iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...

  4. iOS开发UI篇—UITabBarController简单介绍

    iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...

  5. iOS开发UI篇—Modal简单介绍

    iOS开发UI篇—Modal简单介绍 一.简单介绍 除了push之外,还有另外一种控制器的切换方式,那就是Modal 任何控制器都能通过Modal的形式展⽰出来 Modal的默认效果:新控制器从屏幕的 ...

  6. iOS开发数据库篇—SQLite简单介绍

    iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...

  7. iOS开发UI篇—Kvc简单介绍

    ios开发UI篇—Kvc简单介绍 一.KVC简单介绍 KVC key valued coding 键值编码 KVC通过键值间接编码 补充: 与KVC相对的时KVO,即key valued observ ...

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

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

  9. iOS开发UI篇—UIWindow简单介绍

    iOS开发UI篇—UIWindow简单介绍 一.简单介绍 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow iOS程序启动完毕后,创建的第一个视图控件就是UIWi ...

  10. iOS开发UI篇—Quartz2D简单介绍

    iOS开发UI篇—Quartz2D简单介绍 一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\ ...

随机推荐

  1. R处理xml文件

    最近处理数据的时候需要处理一些xml文件,但是xml文件的格式之前并不是很熟悉.幸好R有一些函数可以帮助快速处理xml文件.其中的xmlToList函数尤其方便,可以使你从陌生的XML迅速回到熟悉的R ...

  2. javascript 字符串方法名调用

    项目中有时候需要通过字符串传递方法名称,供页面调用 var ParameterDefaultCallMethod = Request("ParameterDefaultCallMethod& ...

  3. 快速对字符转义,避免跨站攻击XSS

    XSS已经成为非常流行的网站攻击方式,为了安全起见,尽量避免用户的输入.可是有些情况下不仅不避免,反而要求鼓励输入,比如写博客.博客园开放性很高,可以运行手写的JS.之前比较著名的例子就是,凡是看到某 ...

  4. Win+R运行自定义程序应该这样玩

    互联网是一个“生态圈”,Windows有自己的生态学,有些看似高效的“奇技淫巧”实则只是搞笑. 我很以前十分崇拜善用佳软的站长,对事不对人,有些弊端,只是我们不知道,但并不代表就没有. 有些“恍然大悟 ...

  5. ZOJ 1049 I Think I Need a Houseboat

    原题链接 题目大意:Fred想在Louisiana买一套房子,但是堤坝不牢固,每年都要被河水侵蚀50平方英里.题目给出他豪宅的坐标,要求他被迫移民搬迁的年份. 解法:也没什么好说的,先求出两点间的距离 ...

  6. Mysql 下 Insert、Update、Delete、Order By、Group By注入

    Insert: 语法:INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) 报错注入: insert into test(id,name,p ...

  7. leetcode 129. Sum Root to Leaf Numbers ----- java

    Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number ...

  8. leetcode 123. Best Time to Buy and Sell Stock III ----- java

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  9. URAL 1077 Travelling Tours(统计无向图中环的数目)

    Travelling Tours Time limit: 1.0 secondMemory limit: 64 MB There are N cities numbered from 1 to N ( ...

  10. 关于VC、MFC和ACCESS的一些使用问题

    最近在用VC.MFC和ACCESS开发一些小工具. 由于操作系统和开发工具以及数据库版本都升级了,和当年有一些区别了(我这是有多老了--fuck--),遇到一些问题,贴在下面:   1,用什么连接AC ...