博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
视频播放
阅读量:5824 次
发布时间:2019-06-18

本文共 1123 字,大约阅读时间需要 3 分钟。

hot3.png

 播放一个视频,需要引入框架

#import <AVFoundation/AVFoundation.h>AVPlayer可以播放任何形式的影音,使用需导入AVFoundation.h框架,单纯使用它无法显示视频,要将视频层添加至AVPlayerLayer,这样才能将视频显示,并没有提供私人操作组件,需自定义)

#import <AVKit/AVKit.h>( AVPlayerViewController整合了一个完整的播放器,使用时需要导入AVKit框架)

实现有两种方法,一种是:视频播放界面没有任何按钮;另一种是:播放界面自身存在一些基本按钮。具体如下:

第一种:

1-1.先获取文件路径,方法与之前一样

 NSString *path=[[NSBundle mainBundle]pathForResource:@"胡彦斌-还魂门.mp4" ofType:nil];

1-2.获取文件的数据流,也与之前一样

 NSURL *url=[NSURL fileURLWithPath:path];

1-3.创建一个播放器(需要用户自定义控件)

AVPlayer *player=[AVPlayer playerWithURL:url];

1-4.实现视频播放 

 AVPlayerLayer *playLayer=[AVPlayerLayer playerLayerWithPlayer:player];

1-5.设置播放器的大小

  AVPlayerLayer *playLayer=[AVPlayerLayer playerLayerWithPlayer:player];

1-6.添加播放层

[self.view.layer addSublayer:playLayer];

1-7.实现视频播放

[player play];

第二种:

2-1.同样是获取文件路径

2-2.获取文件数据

2-3.创建一个播放器 AVPlayer *play=[AVPlayer playerWithURL:url];

2-4.实例化播放视图控制器

 _playViewController=[[AVPlayerViewController alloc]init];

2-5.把播放器加到控制器中

  _playViewController.player=play;

2-5.模态跳转

    [self presentViewController:_playViewController animated:YES completion:nil];

一个最简单视频播放就可以这样实现

 

 

 

 

 

 

转载于:https://my.oschina.net/whzhen1452/blog/740058

你可能感兴趣的文章
mybatis plus 代码生成器
查看>>
C++编译错误:multiple types in one declaration
查看>>
Eclipse常用快捷键大全
查看>>
3Dtouch 的实际应用详解(tableView中的应用)
查看>>
团队作业第二次—项目选题报告
查看>>
Linux 磁盘管理
查看>>
[洛谷P3413]SAC#1 - 萌数
查看>>
使用Nito.AsyncEx实现异步锁
查看>>
JAVA的静态方法,静态变量,静态类。
查看>>
GCT之数学公式(平面解析几何)
查看>>
Java7 try-with-resources
查看>>
gdb调试的艺术——Debug技巧
查看>>
ceshi
查看>>
Flutter 真机调试
查看>>
Silverlight打印注意事项
查看>>
区块链开发公司谈区块链的潜在商业价值
查看>>
Hibernate进阶
查看>>
[转]TinyXML学习
查看>>
各个版本spring的jar包以及源码下载地址
查看>>
Spring_Junit单元测试使用log4j输出日志
查看>>