学习文档

(强烈推荐)移动端音视频从零到上手
About AVFoundation
学习教程
AVFoundation框架解析

具体功能

拍摄

镜头变焦

变焦的方式主要有两种实现:

  1. 通过修改AVCaptureDevice的缩放系数videoZoomFactor来实现镜头变焦
  2. 通过修改AVCaptureConnection的缩放系数videoScaleAndCropFactor来实现镜头变焦。
    当采用该方式时,需要同时修改预览层和输出图片
    详细内容可参照以下博文:iOS 实现拍照的焦距调节

编辑

  1. AVURLAsset
    容器对象,代表了要操作的容器。封装,解封装,音视频播放,以及音视频合并等等操作的基础都涉及到这个对象。
  2. AVAssetTrack
    音视频轨道对象,代表了文件中的一路音频流或者一路视频流,它作为每一个要被合并的音频或者视频流被添加到组合对象中最终进行合并
  3. AVMutableCompositionTrack
    组合轨道对象,它作为音视频合并的基础,通过它添加要合并的音频流或者视频流,分为两种类型:音频组合轨道对象和视频组合轨道对象,音频组合轨道对象只能添加音频流,视频组合轨道对象只能添加视频流
  4. AVMutableComposition
    组合对象,通过它构建组合轨道对象
  5. AVAssetExportSession
    执行合并操作并导出为文件对象,该对象内部应该是封装了合并多个音频流或者视频流的操作和封装操作

添加背景音乐

AVFoundation视频添加背景音乐(六)
iOS开发–AVFoundation视频合成(添加背景音乐)
ios AVFoundation框架给视频添加背景音乐的方法
选择、播放系统音乐
UIImagePickerController提供了从媒体库中仅选择视频和图像的功能。MPMediaPickerController提供了从音乐库中选择音频文件的功能。

视频倍速播放

iOS 9.0 AVPlayer的使用与内存的释放问题
通过修改self.player.rate控制播放速率
若要实现倒放功能,注意调用
[self.player seekToTime:self.player.currentItem.duration];seek到资源末尾

iOS文件操作

iOS 关于文件操作 NSFileManager
iOS 如何查看真机里的沙盒文件
IOS沙盒基本机制(sandbox)

踩坑记录

  1. UIImageWriteToSavedPhotosAlbum函数回调需要遵循固定格式
UIImageWriteToSavedPhotosAlbum(image, self,@selector(image:didFinishSavingWithError:contextInfo:),contextInfo);

AVFoundation学习记录相关推荐

  1. AVFoundation学习之视频播放

    title: AVFoundation学习之视频播放 date: 2019-08-22 11:26:37 tags: 一.CMTime理解 *AV Foundation中使用CMTime数据结构记录时 ...

  2. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)

    Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...

  3. HTML5与CSS3权威指南之CSS3学习记录

    title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...

  4. springboot @cacheable不起作用_Springboot学习记录13 使用缓存:整合redis

    本学习记录的代码,部分参考自gitee码云的如下工程.这个工程有详尽的Spingboot1.x教程.鸣谢! https://gitee.com/didispace/SpringBoot-Learnin ...

  5. 【Cmake】Cmake学习记录

    Cmake学习记录 1.1 常例 add_library(gen_reference_infogen_reference_info/gen_reference_info.hgen_reference_ ...

  6. ASP.NETCore学习记录(一)

    ASP.NETCore学习记录(一) asp.net core介绍  Startup.cs  ConfigureServices  Configure  0. ASP.NETCore 介绍 ASP.N ...

  7. Android开发技术周报176学习记录

    Android开发技术周报176学习记录 教程 当 OkHttp 遇上 Http 2.0 http://fucknmb.com/2018/04/16/%E5%BD%93OkHttp%E9%81%87% ...

  8. add函数 pytorch_Pytorch学习记录-Pytorch可视化使用tensorboardX

    Pytorch学习记录-Pytorch可视化使用tensorboardX 在很早很早以前(至少一个半月),我做过几节关于tensorboard的学习记录. https://www.jianshu.co ...

  9. java之字符串学习记录

    java之字符串学习记录 public class StringDemo { public static void main(String[] args) { //静态初始化字符串 String s1 ...

最新文章

  1. Xcode出现( linker command failed with exit code 1)错误总结
  2. mysql的topsql_TOP SQL监控之MySQL篇
  3. 【视频】v-html的使用
  4. 【简洁代码】1053 住房空置率 (20分)_22行代码AC
  5. mysql数据库前端缓存_什么是MySQL数据库的缓存池原理?看完或许就懂了
  6. python中int对象不可调用_'int'对象在python中不可调用
  7. zookeeper在windows下设置为服务启动(不需双击zkServer.cmd)
  8. javascript中事件
  9. [py][mx]django分页第三方模块django-pure-pagination
  10. 中国古语中的十大智慧
  11. Java语言的特点特性
  12. 加密excel总出现html,高手才懂的Excel技巧!为Excel加密的几种秘籍
  13. 概率论复习总结——基本概念
  14. HBase 记忆内容(简答题)
  15. 失业培训计算机试题,2017年职称计算机考试考前练习试题(11)
  16. 北京房价当日报20141013
  17. 【JavaScript编写计算工资小程序】【表格细边框设置】【网页设计与网站开发HTML、CSS、JavaScript实例教程】【第十章】JavaScript基础——【传智播客】实验作业题【实验5】
  18. 解决关于VS2019输入会顶掉后面字符的问题
  19. 【大话设计模式-2】UML 类图的绘制(源码案例分析)
  20. 黑苹果驱动板载intel蓝牙

热门文章

  1. Matlab统计图片中不同颜色小球个数
  2. 线上数码商城小程序开发,尽享购物乐趣
  3. ssm报错:Invalid bound statement (not found): mapper.UserMapper.findAllUser
  4. 爱快路由安装mysql_ESXi安装爱快iKuai OS路由(图文教程)
  5. Linux下Oracle移植数据
  6. python qq自动发消息软件_Python之qq自动发消息的示例代码
  7. 全新荣耀手表GS 3正式发布,8通道心率AI引擎精准高效管理健康生活
  8. 江西计算机好的本科学校,江西本科学校计算机及应用顶岗实习
  9. 2022.11.27一周总结
  10. 克里斯蒂安贝尔_马特达蒙和克里斯蒂安贝尔 出演福特vs法拉利的传记片