

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Escribe y examina el código
<a name="producersdk-javaapi-writecode"></a>

En esta sección del [procedimiento de la biblioteca productora de Java](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-sdk-javaapi.html), escribirá y examinará el código de ejemplo de Java que descargó en la sección anterior. 

La aplicación de prueba de 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)) muestra el siguiente patrón de codificación:
+ Cree una instancia de `KinesisVideoClient`.
+ Cree una instancia de `MediaSource`.
+ Registre el `MediaSource` con el cliente.
+ Inicie el streaming. Inicie `MediaSource` y empezará a enviar datos al cliente.

En las siguientes secciones presentamos más detalles.



## Crea una instancia de KinesisVideoClient
<a name="producersdk-javaapi-review-code-create-client"></a>

Puede crear el objeto `KinesisVideoClient` llamando a la operación `createKinesisVideoClient`.

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

Para que `KinesisVideoClient` realice llamadas de red, necesita credenciales de autenticación. Puede transferir en una instancia de `SystemPropertiesCredentialsProvider`, que lee `AWSCredentials` para el perfil predeterminado en el archivo de credenciales:

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





## Crea una instancia de MediaSource
<a name="producersdk-javaapi-review-code-create-mediasource"></a>

Para enviar bytes a la transmisión de vídeo de Kinesis, debe generar los datos. Amazon Kinesis Video Streams proporciona `MediaSource` la interfaz, que representa la fuente de datos.

Por ejemplo, la biblioteca Java de Kinesis Video Streams proporciona `ImageFileMediaSource` la implementación de `MediaSource` la interfaz. Esta clase solo lee los datos de una serie de archivos multimedia en lugar de una transmisión de vídeo de Kinesis, pero puede utilizarla para probar el código.

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

## Regístrese en MediaSource el cliente
<a name="producersdk-javaapi-review-code-register-mediasource"></a>

Registre el origen de medios que haya creado con el `KinesisVideoClient`, de modo que sea consciente de la existencia del cliente y pueda enviarle los datos.

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



## Inicie la fuente multimedia
<a name="producersdk-javaapi-review-code-start-mediasource"></a>

Inicie la fuente multimedia para que pueda empezar a generar datos y enviarlos al cliente.

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

