

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á.

# Use a biblioteca de produtores de C\+\+
<a name="producer-sdk-cpp"></a>

Você pode usar a biblioteca de produtores de C\+\+ fornecida pelo Amazon Kinesis Video Streams para escrever código de aplicativo para enviar dados de mídia de um dispositivo para um stream de vídeo do Kinesis. 

## Modelo de objeto
<a name="producer-sdk-cpp-objectmodel"></a>

A biblioteca C\+\+ fornece os seguintes objetos para gerenciar o envio de dados para um stream de vídeo do Kinesis:
+ **KinesisVideoProducer: ** contém informações sobre sua fonte de mídia e suas AWS credenciais e mantém retornos de chamada para relatar eventos do Kinesis Video Streams.
+ **KinesisVideoStream: ** representa o stream de vídeo do Kinesis. Contém informações sobre os parâmetros do stream de vídeo, como nome, período de retenção de dados e tipo de conteúdo de mídia.

## Coloque mídia no stream
<a name="producer-sdk-cpp-putframe"></a>

Você pode usar os métodos fornecidos pela biblioteca C\+\+ (por exemplo,`PutFrame`) para colocar dados no `KinesisVideoStream` objeto. Em seguida, ela gerencia o estado interno dos dados, o que pode incluir as seguintes tarefas: 
+ Realizar autenticação.
+ Verificar se há latência de rede. Se a latência for muito alta, a biblioteca poderá reduzir quadros.
+ Controlar status do streaming em andamento.

## Interfaces de retorno de chamada
<a name="producer-sdk-cpp-callbacks"></a>

Esta camada expõe um conjunto de interfaces de retorno de chamada, que permitem a comunicação com a camada do aplicativo. Essas interfaces de retorno de chamada incluem o seguinte:


+ **Interface de retornos de chamada de serviço (`CallbackProvider`): ** a biblioteca invoca eventos obtidos por meio dessa interface quando cria um fluxo, obtém uma descrição do fluxo e exclui um fluxo.
+ **Client-ready interface de eventos de estado ou baixo armazenamento (`ClientCallbackProvider`): ** a biblioteca invoca eventos nessa interface quando o cliente está pronto ou quando detecta que pode ficar sem armazenamento ou memória disponíveis.
+ **Interface de callback de eventos de fluxo (`StreamCallbackProvider`): ** a biblioteca invoca eventos nessa interface quando ocorrem eventos de fluxo, como o fluxo entrando no estado pronto, quadros perdidos ou erros de fluxo.

O Kinesis Video Streams fornece implementações padrão para essas interfaces. Você também pode fornecer sua própria implementação personalizada — por exemplo, se precisar de uma lógica de rede personalizada ou quiser expor uma condição de baixo armazenamento à interface do usuário.

Para obter mais informações sobre retornos de chamada nas bibliotecas do produtor, consulte[Retornos de chamada do SDK do produtor](producer-reference-callbacks.md).

## Procedimento: usar o SDK do produtor de C\+\+
<a name="producer-sdk-cpp-using"></a>

Esse procedimento demonstra como usar o cliente e as fontes de mídia do Kinesis Video Streams em um aplicativo C\+\+ para enviar dados para seu stream de vídeo do Kinesis.

Este procedimento inclui as seguintes etapas:

**Topics**