> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/produtos/idv-suite/flujos-and-integraciones/configuracion-tecnica-del-cliente/sdk-mobile/ios-sdk/modulos/video-grabacion.md).

# Gravação de vídeo

Este componente requer uma versão mínima do iOS13

## Introdução <a href="#id-1-introduccion" id="id-1-introduccion"></a>

O *Componente* tratado no documento atual recebe o nome de ***Componente VideoRecording***. Ele é responsável por capturar a tela do dispositivo em segundo plano. É voltado principalmente para a gravação do processo de onboarding.

## Dependências

Para evitar conflitos e problemas de compatibilidade, caso queira instalar o componente em um projeto que contenha uma versão antiga das bibliotecas da Facephi (*Widgets*), eles deverão ser removidos completamente antes da instalação dos componentes da ***SDKMobile***.

### CocoaPods

* Atualmente, as bibliotecas da FacePhi são distribuídas remotamente por meio de diferentes gerenciadores de dependências, neste caso CocoaPods. As dependências **obrigatórias** que deverão ter sido instaladas previamente (adicionando-as no arquivo Podfile do projeto) são:

```swift
  pod 'FPHISDKMainComponent', '~> $VERSION'
```

* Para instalar o componente Selphi, deverá ser incluída a seguinte entrada no Podfile da aplicação:

```swift
  pod 'FPHISDKVideoRecordingComponent', '~> $VERSION'
```

### SPM

* As dependências obrigatórias que deverão ter sido instaladas previamente são:

```sh
//HTTPS
https://github.com/facephi-clienters/SDK-SdkPackage-SPM.git
//SSH
git@github.com:facephi-clienters/SDK-SdkPackage-SPM.git
```

* Para instalar o componente SELPHI, deverá ser incluída nos módulos do projeto:

```swift
//HTTPS
https://github.com/facephi-clienters/SDK-VideoRecording-SPM.git
//SSH
git@github.com:facephi-clienters/SDK-VideoRecording-SPM.git
```

## Permissões

No aplicativo cliente onde os componentes serão integrados, é necessário incorporar o seguinte elemento no arquivo **Info.plist** quando a gravação for incluir áudio:

```
É necessário permitir o uso do microfone (NSMicrophoneUsageDescription - Privacy - Microphone Usage Description)
```

{% hint style="info" %}
A permissão do microfone só é necessária se você ativar **`enableAudio`** en **`VideoRecordingConfigurationData`**. Por padrão **`enableAudio`** es **`false`** e a gravação não captura áudio.
{% endhint %}

## Controladores disponíveis

| **Controlador**           | **Descrição**                              |
| ------------------------- | ------------------------------------------ |
| FVideoRecordingController | Controlador principal de Gravação de Vídeo |

### Declaração do controlador

```swift
private var videoRecordingController: VideoRecordingController?
```

### Recepção de erros <a href="#id-61-recepcion-de-errores" id="id-61-recepcion-de-errores"></a>

Os erros serão retornados como um objeto 'VideoRecordingError'.

Lista de erros:

* VRC\_EMPTY\_LICENSE: A String de licença está vazia
* VRC\_INITIALIZATION\_ERROR: Erro de inicialização
* VRC\_OPERATION\_NOT\_CREATED: Não há nenhuma operação em curso
* VRC\_NETWORK\_CONNECTION: Erro na conexão com a internet
* VRC\_MIC\_PERMISSION\_DENIED: O usuário rejeitou as permissões
* VRC\_WEB\_SOCKET\_REQUEST\_ERROR: Erro na conexão dos serviços
* VRC\_UNKNOWN\_ERROR: Erro desconhecido
* VRC\_JOIN\_CHANNEL\_ERROR: Erro na conexão com o canal
* VRC\_VIDEO\_RECORDING\_ACTIVE: Não é possível iniciar porque o processo de gravação de vídeo está ativo
* VRC\_QUICKTIME\_RECORDING\_ACTIVE: Não é possível iniciar porque o processo de gravação está ativo, pois um aplicativo externo já está gravando a tela
* VRC\_WRONG\_CREDENTIALS\_ERROR: As credenciais para a conexão com o serviço de gravação de vídeo não estão corretas
