https://www.sunyazhou.com/2017/06/16/Learning-AV-Foundation-AVAsset-Basic/?utm_source=tuicool&utm_medium=referral

AVAsset 专辑

一个抽象类,里面包含曲目、格式、时长, 以及元数据NSData(二进制的bytes).

@property (nonatomic, readonly) NSArray<AVAssetTrack *> *tracks;

加载格式

AVURLAsset *anAsset = [[AVURLAsset alloc] initWithURL:url options:nil];
NSArray *keys = @[@"duration",@"tracks"];[asset loadValuesAsynchronouslyForKeys:keys completionHandler:^() {NSError *error = nil;AVKeyValueStatus tracksStatus = [asset statusOfValueForKey:@"tracks" error:&error];//根据相应的属性状态进行对应的处理switch (tracksStatus) {case AVKeyValueStatusUnknown://TODObreak;case AVKeyValueStatusLoading://TODObreak;case AVKeyValueStatusLoaded://TODObreak;case AVKeyValueStatusFailed://TODObreak;case AVKeyValueStatusCancelled://TODObreak;}
}];

AVAssetTrack 曲目

我们真正存储媒体资源的统一媒体类型。

  • 音频流
  • 视频流
NSArray<AVAssetTrack *> *audioAssetTracks = [asset tracksWithMediaType:AVMediaTypeAudio];
NSArray<AVAssetTrack *> *videoAssetTracks = [asset tracksWithMediaType:AVMediaTypeVideo];

AVAssetImageGenerator

- (instancetype)initWithAsset:(AVAsset *)asset NS_DESIGNATED_INITIALIZER;//获取一张图片,requestedTime 指定要获取视频中哪个时刻的图片,actualTime 返回图片实际是视频的哪个时刻,outError 返回错误信息
- (nullable CGImageRef)copyCGImageAtTime:(CMTime)requestedTime actualTime:(nullable CMTime *)actualTime error:(NSError * _Nullable * _Nullable)outError CF_RETURNS_RETAINED;//获取多张图片,每一次图片生成后,都会调用一次 handler
- (void)generateCGImagesAsynchronouslyForTimes:(NSArray<NSValue *> *)requestedTimes completionHandler:(AVAssetImageGeneratorCompletionHandler)handler;//上述 handler 的类型如下,回调中的参数有图片的请求时刻和实际时刻,图片,状态(成功、失败、取消),错误信息
typedef void (^AVAssetImageGeneratorCompletionHandler)(CMTime requestedTime, CGImageRef _Nullable image, CMTime actualTime, AVAssetImageGeneratorResult result, NSError * _Nullable error);

AVPlayer(二)AVAsset相关推荐

  1. AVFoundation – AVAsset 加载媒体

    目录 一.前言 1.AVAsset 2.AVAssetTrack 3.AVComposition / AVMutableComposition 4.AVMutableVideoComposition ...

  2. AVFoundation系列二:用AVPlayer播放视频

    发现一个比较好的文章,搬来借用,这是根据苹果官方文档翻译的,并加入了自己的见解:尤其是加载网络的url分析见解,之后可能会根据另一大神的开源demo,总结一下边下边播,所以这里我无耻的设为了原创 AV ...

  3. 使用AVPlayer自定义支持全屏的播放器(二)

    前言     前段时间封装了一个视频播放器,由于时间匆忙,还有很多问题以及细节还没有来得及修改,最近挤了一点时间,将播放器完善了一下,具体思路请参考使用AVPlayer自定义支持全屏的播放器(一),本 ...

  4. AVPlayer详解系列(一)参数设置

    思维导图 先来一张思维导图,作为这篇文章的目录索引: AVPlayer.png 为什么使用AVPlayer: 首先在iOS平台使用播放视频,可用的选项一般有这四个,他们各自的作用和功能如下:   使用 ...

  5. AVPlayer简单使用

    2019独角兽企业重金招聘Python工程师标准>>> 前言 公司APP使用七牛的播放器,各种崩溃,各种卡顿问题,一怒之下抽时间,看看有没苹果自带框架比较好解决播放问题,又不想引入其 ...

  6. 【iOS】视频播放之AVPlayer

    [iOS]视频播放之AVPlayer iOS平台使用播放视频,可用的选项一般有这四个,他们各自的作用和功能如下: 使用环境 优点 缺点 AVPlayerViewController AVKit 简单易 ...

  7. iOS: ios视频播放(MPMediaPlayerController,AVPlayer,AVPlayerViewcontroller、ffmpeg-AVPlayer)...

    介绍: 和音频播放一样,ios也提供个很多的API.如mediaPlayer.framework下的MPMediaPlayerController.AVFounditon.framework下的AVP ...

  8. iOS开发:AVPlayer实现流音频边播边存

    1. AVPlayer简介AVPlayer存在于AVFoundation中,可以播放视频和音频,可以理解为一个随身听AVPlayer的关联类:AVAsset:一个抽象类,不能直接使用,代表一个要播放的 ...

  9. 使用AVPlayer制作一个播放器

    代码地址如下: http://www.demodashi.com/demo/11685.html AVPlayer 是一个强大的视频播放器,可以播放多种格式的视频,缺点是没有控制界面,需要自己去实现. ...

最新文章

  1. 科研文献|结肠直肠癌早期检测中跨群体微生物标记物的鉴定
  2. 静态路由中使用一跳和出接口的区别
  3. SpringMVC框架 学习DAY_03:@RequestMapping注解/拦截器与过滤器
  4. java 原子引用_Java 原子性引用 AtomicReference
  5. 你以为ACI=SDN?大错特错!
  6. C宏定义中的##,#,#@用法介绍
  7. Spring事务管理机制
  8. ResNet才是YYDS!新研究:不用蒸馏、无额外数据,性能还能涨一波
  9. [转]java Socket InputStream 阻塞 问题
  10. unitywebrequest本地加载_Unity AudioSource加载本地.mp3文件/UnityWebRequest
  11. Run P4 without P4factory - A Simple Example In Tutorials. -2
  12. 三角形和矩形傅里叶变换_信号与系统:第三章傅立叶变换2.ppt
  13. Python实现Wordcloud生成词云图的示例
  14. 迁移学习:迈向真正的人工智能
  15. 微信小程序 3 岁:日活超 3 亿,交易额超 8000 亿
  16. Pulseaudio之nemo(二十二)
  17. NFC怎么复制房卡_为了省门禁卡的钱,买了NFC读卡器,到底值不值
  18. border边框线样式
  19. 关于心跳包的实现手法
  20. 数据结构课程设计之项目三---算术表达式求解

热门文章

  1. Android 主线程与子线程区分和实践
  2. jpg和jpeg图片有区别吗?
  3. 揭秘深度强化学习-6状态空间过大之神经网络来帮忙
  4. 【vue双向绑定原理浅析】
  5. 基于SSM美发店管理系统
  6. 绝地求生FGS决赛 韩国战队成最大赢家 4AM位列第七_GoLink
  7. hostapd wpa_supplicant madwifi详细分析(十一)——wps原理及实现 三
  8. 计量空间matlab,MATLAB空间计量
  9. WebStorm设置前端开发代码规范
  10. 一些常用的PKCS 标准