添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

GitHub地址(附代码): iOS视频流采集概述

简书地址 : iOS视频流采集概述

博客地址 : iOS视频流采集概述

掘金地址 : iOS视频流采集概述


注意:本文仅仅是原理性讲解,而实际相机的设置也是比较复杂,具体相机参数的设置请参考另一篇 - iOS相机设置实战


Overview

AVCaptureSession:使用相机或麦克风实时采集音视频数据流.

  • AVCaptureSession : 管理输入输出音视频流
  • AVCaptureDevice : 相机硬件的接口,用于控制硬件特性,诸如镜头的位置(前后摄像头)、曝光、闪光灯等。
  • AVCaptureInput : 配置输入设备,提供来自设备的数据
  • AVCaptureOutput : 管理输出的结果(音视频数据流)
  • AVCaptureConnection: 表示输入与输出的连接

  • AVCaptureVideoPreviewLayer: 显示当前相机正在采集的状况

    一个session可以配置多个输入输出

    下图展示了向session中添加输入输出后的连接情况

    授权

    首先需要在Info.plist文件中添加键 Privacy - Camera Usage Description 以请求相机权限.

    注意: 如果不添加,程序crash,如果用户不给权限,则会显示全黑的相机画面.

    1. 使用Capture Session管理数据流

    1
    2
    3
    AVCaptureSession *session = [[AVCaptureSession alloc] init];
    // Add inputs and outputs.
    [session startRunning];

    1.1. 使用preset配置分辨率,帧率

  •