AVFoundation Programming Guide(官方文档翻译)完整版中英对照

文档目录

  1. 1.1. At a Glance - 摘要
    1. 1.1.1. Representing and Using Media with AVFoundation - 用AVFoundation 表示和使用媒体
    2. 1.1.2. Playback - 播放
    3. 1.1.3. Reading, Writing, and Reencoding Assets - 读取,写入和重新编码Assets
    4. 1.1.4. Thumbnails - 缩略图
    5. 1.1.5. Editing - 编辑
    6. 1.1.6. Still and Video Media Capture - 静态和视频媒体捕获
    7. 1.1.7. Concurrent Programming with AVFoundation - AVFoundation并发编程
  2. 1.2. Prerequisites - 预备知识
  3. 1.3. See Also - 参考
  1. 2.1. Creating an Asset Object - 创建一个Asset对象
    1. 2.1.1. Options for Initializing an Asset - 初始化一个Asset的选择
    2. 2.1.2. Accessing the User’s Assets - 访问用户的Assets
  2. 2.2. Preparing an Asset for Use - 将 Asset 准备好使用
  3. 2.3. Getting Still Images From a Video - 从视频中获取静态图像
    1. 2.3.1. Generating a Single Image - 生成一个单独的图像
  4. 2.4. Generating a Sequence of Images - 生成一系列图像
  5. 2.5. Trimming and Transcoding a Movie - 微调和转化为一个电影
  1. 3.1. Playing Assets - 播放资产
  2. 3.2. Handling Different Types of Asset - 处理不同类型的资产
  3. 3.3. Playing an Item - 播放一个项目
    1. 3.3.1. Changing the Playback Rate - 改变播放的速率
    2. 3.3.2. Seeking—Repositioning the Playhead - 寻找-重新定位播放头
  4. 3.4. Playing Multiple Items - 播放多个项目
  5. 3.5. Monitoring Playback - 监视播放
    1. 3.5.1. Responding to a Change in Status - 响应状态的变化
    2. 3.5.2. Tracking Readiness for Visual Display - 为视觉展示做追踪准备
    3. 3.5.3. Tracking Time - 追踪时间
    4. 3.5.4. Reaching the End of an Item - 到达一个项目的结束
  6. 3.6. Putting It All Together: Playing a Video File Using AVPlayerLayer - 总而言之,使用 AVPlayerLayer 播放视频文件
    1. 3.6.1. The Player View - 播放器视图
    2. 3.6.2. A Simple View Controller - 一个简单的 View Controller
    3. 3.6.3. Creating the Asset - 创建一个资产
    4. 3.6.4. Responding to the Player Item’s Status Change - 相应播放项目的状态改变
    5. 3.6.5. Playing the Item - 播放项目
  1. 4.1. Creating a Composition - 创建组件
    1. 4.1.1. Options for Initializing a Composition Track - 初始化组件轨道的选项
  2. 4.2. Adding Audiovisual Data to a Composition - 将视听数据添加到一个组件中
    1. 4.2.1. Retrieving Compatible Composition Tracks - 检索兼容的组件轨道
  3. 4.3. Generating a Volume Ramp - 生成一个音量坡度
  4. 4.4. Performing Custom Video Processing - 执行自定义配置
    1. 4.4.1. Changing the Composition’s Background Color - 改变组件的背景颜色
    2. 4.4.2. Applying Opacity Ramps - 应用不透明的坡道
    3. 4.4.3. Incorporating Core Animation Effects - 结合核心动画效果
  5. 4.5. Putting It All Together: Combining Multiple Assets and Saving the Result to the Camera Roll -
    1. 4.5.1. Creating the Composition - 创建组件
    2. 4.5.2. Adding the Assets - 添加资产
    3. 4.5.3. Checking the Video Orientations - 检查视频的方向
    4. 4.5.4. Applying the Video Composition Layer Instructions - 视频组件层指令的应用
    5. 4.5.5. Setting the Render Size and Frame Duration - 设置渲染大小和帧周期
    6. 4.5.6. Exporting the Composition and Saving it to the Camera Roll - 导出组件并存到相机胶卷
  1. 5.1. Use a Capture Session to Coordinate Data Flow - 使用捕捉会话来协调数据流
    1. 5.1.1. Configuring a Session - 配置会话
    2. 5.1.2. Monitoring Capture Session State - 监视捕获会话状态
  2. 5.2. An AVCaptureDevice Object Represents an Input Device - 一个 AVCaptureDevice 对象代表一个输入设备
    1. 5.2.1. Device Characteristics - 设备特点
    2. 5.2.2. Device Capture Settings
      1. 5.2.2.1. Focus Modes - 聚焦模式
      2. 5.2.2.2. Exposure Modes - 曝光模式
      3. 5.2.2.3. Flash Modes - 闪光模式
      4. 5.2.2.4. Torch Mode - 手电筒模式
      5. 5.2.2.5. Video Stabilization - 视频稳定性
      6. 5.2.2.6. White Balance - 白平衡
      7. 5.2.2.7. Setting Device Orientation - 设置设备方向
    3. 5.2.3. Configuring a Device - 配置设备
    4. 5.2.4. Switching Between Devices - 切换装置
  3. 5.3. Use Capture Inputs to Add a Capture Device to a Session - 使用捕获输入将捕获设备添加到会话中
  4. 5.4. Use Capture Outputs to Get Output from a Session - 使用捕获输出从会话得到输出
    1. 5.4.1. Saving to a Movie File - 保存电影文件
      1. 5.4.1.1. Starting a Recording - 开始记录
      2. 5.4.1.2. Ensuring That the File Was Written Successfully - 确保文件被成功写入
      3. 5.4.1.3. Adding Metadata to a File - 将元数据添加到文件中
      4. 5.4.1.4. Processing Frames of Video - 处理视频的帧
      5. 5.4.1.5. Performance Considerations for Processing Video - 处理视频的性能考虑
    2. 5.4.2. Capturing Still Images - 捕获静止图像
      1. 5.4.2.1. Pixel and Encoding Formats - 像素和编码格式
      2. 5.4.2.2. Capturing an Image - 捕获图像
  5. 5.5. Showing the User What’s Being Recorded - 显示用户正在被记录什么
    1. 5.5.1. Video Preview - 视频预览
      1. 5.5.1.1. Video Gravity Modes - 视屏重力模式
      2. 5.5.1.2. Using “Tap to Focus” with a Preview - 使用“点击焦点”预览
    2. 5.5.2. Showing Audio Levels - 显示音频等级
  6. 5.6. Putting It All Together: Capturing Video Frames as UIImage Objects - 总而言之:捕获视频帧用作 UIImage 对象
    1. 5.6.1. Create and Configure a Capture Session - 创建和配置捕获会话
    2. 5.6.2. Create and Configure the Device and Device Input - 创建和配置设备记忆设备输入
    3. 5.6.3. Create and Configure the Video Data Output - 创建和配置视频数据输出
    4. 5.6.4. Implement the Sample Buffer Delegate Method - 实现示例缓冲代理方法
    5. 5.6.5. Starting and Stopping Recording - 启动和停止录制
  7. 5.7. High Frame Rate Video Capture - 高帧速率视频捕获
    1. 5.7.1. Playback - 播放
    2. 5.7.2. Editing - 编辑
    3. 5.7.3. Export - 出口
    4. 5.7.4. Recording - 录制s
  1. 6.1. Reading an Asset - 读取资产
    1. 6.1.1. Creating the Asset Reader - 创建资产读取器
    2. 6.1.2. Setting Up the Asset Reader Outputs - 建立资产读取器出口
    3. 6.1.3. Reading the Asset’s Media Data - 读取资产媒体数据
  2. 6.2. Writing an Asset - 写入资产
    1. 6.2.1. Creating the Asset Writer - 创建资产写入器
    2. 6.2.2. Setting Up the Asset Writer Inputs - 建立资产写入器入口
    3. 6.2.3. Writing Media Data - 写入媒体数据
  3. 6.3. Reencoding Assets - 重新编码资产
  4. 6.4. Putting It All Together: Using an Asset Reader and Writer in Tandem to Reencode an Asset - 总结:使用资产读取器和写入器串联重新编码资产
    1. 6.4.1. Handling the Initial Setup - 处理初始设置
    2. 6.4.2. Initializing the Asset Reader and Writer - 初始化资产读取器和写入器
    3. 6.4.3. Reencoding the Asset - 重新编码资产
    4. 6.4.4. Handling Completion - 处理完成
    5. 6.4.5. Handling Cancellation - 处理注销
  5. 6.5. Asset Output Settings Assistant - 资产出口设置助手
  1. 7.1. Representation of Assets - 资产的表示

参考文献:
Yofer Zhang的博客
AVFoundation的苹果官网

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,588评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,456评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,146评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,387评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,481评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,510评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,522评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,296评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,745评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,039评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,202评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,901评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,538评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,165评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,415评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,081评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,085评论 2 352