

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Escreva e examine o código
<a name="producersdk-javaapi-writecode"></a>

Nesta seção do [procedimento da biblioteca de produtores Java](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-sdk-javaapi.html), você escreve e examina o código de exemplo Java que você baixou na seção anterior. 

O aplicativo de teste Java ([https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java/blob/master/src/main/demo/com/amazonaws/kinesisvideo/demoapp/DemoAppMain.java](https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java/blob/master/src/main/demo/com/amazonaws/kinesisvideo/demoapp/DemoAppMain.java)) mostra o padrão de codificação a seguir:
+ Crie uma instância de `KinesisVideoClient`.
+ Crie uma instância de `MediaSource`.
+ Registre o `MediaSource` com o cliente.
+ Inicie o streaming. `MediaSource`Inicie o e ele começa a enviar dados para o cliente.

As seguintes seções fornecem detalhes.



## Crie uma instância de KinesisVideoClient
<a name="producersdk-javaapi-review-code-create-client"></a>

Você cria um objeto `KinesisVideoClient` chamando a operação `createKinesisVideoClient`.

```
final KinesisVideoClient kinesisVideoClient = KinesisVideoJavaClientFactory
    .createKinesisVideoClient(
        Regions.US_WEST_2,
        AuthHelper.getSystemPropertiesCredentialsProvider());
```

Para `KinesisVideoClient` fazer chamadas de rede, ele precisa de credenciais para autenticar. Você passa em uma instância de `SystemPropertiesCredentialsProvider`, que lê `AWSCredentials` para o perfil padrão no arquivo de credenciais:

```
[default]
aws_access_key_id = ABCDEFGHIJKLMOPQRSTU
aws_secret_access_key = AbCd1234EfGh5678IjKl9012MnOp3456QrSt7890
```





## Crie uma instância de MediaSource
<a name="producersdk-javaapi-review-code-create-mediasource"></a>

Para enviar bytes para seu stream de vídeo do Kinesis, você deve produzir os dados. O Amazon Kinesis Video Streams `MediaSource` fornece a interface, que representa a fonte de dados.

Por exemplo, a biblioteca Java do Kinesis Video Streams `ImageFileMediaSource` fornece a implementação `MediaSource` da interface. Essa classe só lê dados de uma série de arquivos de mídia em vez de um stream de vídeo do Kinesis, mas você pode usá-la para testar o código.

```
final MediaSource bytesMediaSource = createImageFileMediaSource();
```

## Registre o MediaSource com o cliente
<a name="producersdk-javaapi-review-code-register-mediasource"></a>

Registre a fonte de mídia que você criou com o `KinesisVideoClient` para que ele identifique o cliente (e, em seguida, envie os dados para ele).

```
kinesisVideoClient.registerMediaSource(mediaSource);
```



## Inicie a fonte de mídia
<a name="producersdk-javaapi-review-code-start-mediasource"></a>

Inicie a fonte de mídia para que ela possa começar a gerar dados e enviá-los ao cliente.

```
bytesMediaSource.start();
```

