

# Etapa 4: Integrar o SDK de Transmissão do IVS
<a name="getting-started-broadcast-sdk"></a>

O IVS fornece um SDK de transmissão para Web, Android e iOS que você pode integrar à sua aplicação. O SDK de transmissão é usado para enviar e receber vídeos. Caso tenha [configurado a ingestão do RTMP para seu palco](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/rt-stream-ingest.html), você pode usar qualquer codificador que possa transmitir para um endpoint do RTMP (por exemplo, OBS ou ffmpeg).

Nesta seção, escrevemos uma aplicação simples que possibilita que dois ou mais participantes interajam em tempo real. As etapas abaixo orientam você na criação de uma aplicação chamada BasicRealTime. O código completo da aplicação está no CodePen e no GitHub:
+  Web: [https://codepen.io/amazon-ivs/pen/ZEqgrpo](https://codepen.io/amazon-ivs/pen/ZEqgrpo) 
+  Android: [https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples) 
+  iOS: [https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples) 

## Web
<a name="getting-started-broadcast-sdk-web"></a>

### Configurar arquivos
<a name="getting-started-broadcast-sdk-web-setup"></a>

Para começar a configurar seus arquivos, crie uma pasta e um arquivo HTML e JS inicial:

```
mkdir realtime-web-example
cd realtime-web-example
touch index.html
touch app.js
```

É possível instalar o SDK de transmissão usando uma etiqueta de script ou um npm. Nosso exemplo usa a etiqueta de script para simplificar, mas é fácil de modificar se você optar por usar o npm posteriormente.

### Uso de uma etiqueta de script
<a name="getting-started-broadcast-sdk-web-script"></a>

O SDK de Transmissão da Web é distribuído como uma biblioteca de JavaScript e pode ser recuperado em [https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js](https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js).

Quando carregada via etiqueta `<script>`, a biblioteca expõe uma variável global no escopo da janela chamada `IVSBroadcastClient`.

### Uso de npm
<a name="getting-started-broadcast-sdk-web-npm"></a>

Para instalar o pacote npm:

```
npm install amazon-ivs-web-broadcast
```

Agora é possível acessar o objeto IVSBroadcastClient:

```
const { Stage } = IVSBroadcastClient;
```

## Android
<a name="getting-started-broadcast-sdk-android"></a>

### Criar o projeto Android
<a name="getting-started-broadcast-sdk-android-project"></a>

1. No Android Studio, crie um **New Project**.

1. Escolha **Empty Views Activity**.

   Observação: em algumas versões mais antigas do Android Studio, a atividade baseada em visualizações é chamada de **Empty Activity**. Se a janela do Android Studio mostrar **Empty Activity** e *não* mostrar **Empty Views** Activity, selecione **Empty Activity**. Caso contrário, não selecione **Empty Activity**, pois usaremos APIs de visualização (não o Jetpack Compose).

1. Em **Name**, coloque o nome do seu projeto e, em seguida, selecione **Finish**.

### Instalar o SDK de transmissão
<a name="getting-started-broadcast-sdk-android-install"></a>

Para adicionar a biblioteca de transmissão do Amazon IVS para Android ao seu ambiente de desenvolvimento do Android, adicione a biblioteca ao arquivo `build.gradle` do módulo, conforme mostrado aqui (para a versão mais recente do SDK de transmissão do Amazon IVS). Em projetos mais recentes, o repositório `mavenCentral` pode já estar incluso em seu arquivo `settings.gradle`. Se for esse o caso, você pode omitir o bloco `repositories`. Para nossa amostra, também precisaremos habilitar a associação de dados no bloco `android`.

```
android {
    dataBinding.enabled true
}

repositories {
    mavenCentral()
}
 
dependencies {
     implementation 'com.amazonaws:ivs-broadcast:1.40.0:stages@aar'
}
```

Como alternativa, para instalar o SDK manualmente, baixe a versão mais recente neste local:

[https://search.maven.org/artifact/com.amazonaws/ivs-broadcast](https://search.maven.org/artifact/com.amazonaws/ivs-broadcast)

## iOS
<a name="getting-started-broadcast-sdk-ios"></a>

### Criar o projeto iOS
<a name="getting-started-broadcast-sdk-ios-project"></a>

1. Crie um novo projeto no Xcode.

1. Em **Platform**, selecione **iOS**.

1. Em **Application**, selecione **App**.

1. Em **Product Name**, insira o nome de produto da sua aplicação e, em seguida, selecione **Next**.

1. Escolha (navegue até) um diretório no qual deseja salvar o projeto e, em seguida, selecione **Create**.

Em seguida, é necessário trazer o SDK. Para ver instruções, consulte [Instalar a biblioteca](broadcast-ios-getting-started.md#broadcast-ios-install) no *Guia do SDK de Transmissão do iOS*.

### Configurar permissões
<a name="getting-started-broadcast-sdk-ios-config"></a>

Você precisa atualizar o `Info.plist` do seu projeto para adicionar duas novas entradas para `NSCameraUsageDescription` e `NSMicrophoneUsageDescription`. Para os valores, inclua explicações para o usuário sobre por que sua aplicação está solicitando acesso à câmera e ao microfone.

![\[Configuração de permissões do iOS.\]](http://docs.aws.amazon.com/pt_br/ivs/latest/RealTimeUserGuide/images/iOS_Configure.png)
