使用AVPlayer播放视频
iOS里面视频播放用到的是AVPlayer(包含在AVFoundation框架内)与AVAudioplayer有点类似
但是AVPlayer得功能跟加强大,他可以用来播放音频也可以用来播放视频 而且在播放音频方面能直接播放网络音频。
要使用AVPlayer播放视频 要引入这两个头文件:
#import <AVFoundation/AVFoundation.h>
#import <AVKit/AVKit.h>
具体实现:
@interface ViewController ()
//控制视频播放进度的控件
@property (weak, nonatomic) IBOutlet UISlider *progressSlider;
//声明播放视频的控件属性 [既可以播放视频也可以播放音频]
@property (nonatomic, strong) AVPlayer *player;
//播放的总时长
@property (nonatomic, assign)CGFloat sumPlayOperation;@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.//设置播放的urlNSString *playString = @"http://static.tripbe.com/videofiles/20121214/9533522808.f4v.mp4";NSURL *url = [NSURL URLWithString:playString];//设置播放的项目AVPlayerItem *item = [[AVPlayerItem alloc] initWithURL:url];//初始化player对象self.player = [[AVPlayer alloc] initWithPlayerItem:item];//设置播放页面AVPlayerLayer *layer = [AVPlayerLayer playerLayerWithPlayer:_player];//设置播放页面的大小layer.frame = CGRectMake(0, 0, CGRectGetWidth(self.view.frame), 300);//设置背景颜色layer.backgroundColor = [UIColor purpleColor].CGColor;//设置播放窗口和当前视图之间的比例显示内容layer.videoGravity = AVLayerVideoGravityResizeAspect;//添加播放视图到self.view上[self.view.layer addSublayer:layer];//设置播放进度的默认值self.progressSlider.value = 0;//设置播放的默认音量self.player.volume = 1.0f;
}
#pragma mark - 开始播放按钮的响应方法
- (IBAction)startPlayer:(id)sender {[self.player play];
}
#pragma mark - 暂停播放按钮响应方法
- (IBAction)stopPlayer:(id)sender {[self.player pause];
}
#pragma mark - 播放进度条
- (IBAction)changeProgress:(id)sender {self.sumPlayOperation = self.player.currentItem.duration.value / self.player.currentItem.duration.timescale;//CMTtimeMake(a, b) a表示当前时间 b表示每秒钟有多少帧[self.player seekToTime:CMTimeMake(self.progressSlider.value * self.sumPlayOperation, self.player.currentItem.duration.timescale) completionHandler:^(BOOL finished) {[self.player play];}];
}
使用AVPlayer播放视频相关推荐
- AVPlayer播放视频(本地视频,或网络视频)
https://github.com/potato512/SYAVPlayer 使用AVPlayer播放本地视频,或网络视频,需要添加AVFoundation框架. 使用AVPlayer播放视频的优势 ...
- iOS12 AVPlayer播放视频 AVFoundationErrorDomain Code=-11800
iOS12 AVPlayer播放视频 AVFoundationErrorDomain Code=-11800 报错信息如题,iOS13的系统测试手机不会 最后需要再info.plist加上 NSApp ...
- AVPlayer播放视频
2019独角兽企业重金招聘Python工程师标准>>> // // ViewController.m // 04-AVPlayer播放视频 // // Created by鹿微 ...
- iOS - AVPlayer播放视频,获取视频尺寸(宽高)
公司启动页要求播放视频,其实很简单,AVPlayer可以胜任此任务. - (void)playVideoWithType:(NSString *)type {//获取视频sizeNSURL *medi ...
- AVFoundation系列二:用AVPlayer播放视频
发现一个比较好的文章,搬来借用,这是根据苹果官方文档翻译的,并加入了自己的见解:尤其是加载网络的url分析见解,之后可能会根据另一大神的开源demo,总结一下边下边播,所以这里我无耻的设为了原创 AV ...
- iOS开发之仿微博视频边下边播之自定义AVPlayer播放器, 边下边播解剖。视频处理流程,建立连接-请求数据-统筹数据-解码数据-视频呈现
Tips:这次的内容分为两篇文章讲述 01.[iOS]仿微博视频边下边播之封装播放器 讲述如何封装一个实现了边下边播并且缓存的视频播放器. 02.[iOS]仿微博视频边下边播之滑动TableView自 ...
- 播放视频AVPlayer使用详解
在开发中,单纯使用AVPlayer类是无法显示视频的,要将视频层添加至AVPlayerLayer中,这样才能将视频显示出来. 属性含义: /* 播放器 */ @property (nonatomic, ...
- [iOS]调和 pop 手势导致 AVPlayer 播放卡顿
作者 NewPan 关注 2017.07.15 14:24* 字数 3110 阅读 749评论 8喜欢 17 声明:我为这个框架写了四篇文章: 第一篇:[iOS]UINavigationControl ...
- iOS】AVPlayer 播放音视频
1.常见的音视频播放器 iOS开发中不可避免地会遇到音视频播放方面的需求. 常用的音频播放器有 AVAudioPlayer.AVPlayer 等.不同的是,AVAudioPlayer 只支持本地音频的 ...
最新文章
- ZOJ 2747 Paint the Wall(离散化+暴力)题解
- 精准扶贫探索新融合模式-农业大健康·李龙:谋定乡村振兴
- 写java线程导致电脑内存不足_如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码...
- 小米 华为都要造车?.NET高薪潮来了!(附招聘链接)
- IntelliJ IDEA2017 激活方法 最新的
- C程序设计语言现代方法09:函数
- 简单理解计算机内存乱序
- PCL之平面分割模型
- 【转】android fragment 博客 学习
- 【Web理论篇】Web应用程序安全与风险
- 提高效率的十款Blender快捷键,更多快捷键等着你去探索
- 利用计算机建立动画中的 画面 由,计算机图形术在三维动画中的应用.doc
- python适用的操作系统是_python 操作系统和进程
- mysql未开启binlog恢复数据_MYSQL bin_log 开启及数据恢复
- 【Yolo】Jetson Orin Nano下部署 YoloV5
- JOOQ学习笔记:分页、排序、字段重命名的写法
- 我与Java的故事以及0基础Java自学之路(2022最新版)
- 选择一个日志文件系统
- Cobalt Strike使用教程
- 【期末复习】计算机网络 物理层