JoinStorageSessionAsViewer - Amazon Kinesis Video Streams

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

JoinStorageSessionAsViewer

nota

A RTC ingestão da Web com suporte para vários visualizadores (Prévia) está sendo fornecida na Versão Prévia, conforme definido nos Termos de AWS Serviço, e está sujeita a alterações. Atualmente, ele está disponível apenas em IAD us-east-1 ().

Para participar da prévia, envie um e-mail para kvs-webrtc-multi-view-preview@amazon.com.

nota

Antes de usar issoAPI, você deve chamar o GetSignalingChannelEndpoint API para solicitar o WEBRTC endpoint. Em seguida, você especifica o endpoint e a região em sua JoinStorageSessionAsViewer API solicitação.

JoinStorageSessionAsViewerpermite que um espectador participe de uma sessão contínua de RTC streaming da Web gravada na nuvem. Isso API inicia uma RTC conexão com a Web enviando uma SDP oferta e ICE candidatos entre o espectador e o agente de gravação, permitindo que o espectador receba vídeo em tempo real do master por meio do agente de gravação e participe da comunicação de áudio bidirecional por meio do agente de gravação. Depois de conectado, o áudio do espectador, se fornecido, é encaminhado para todos os outros pares conectados, incluindo o participante principal, e é incorporado ao stream da Web que está sendo salvo no RTC stream do Kinesis Video.

Importante

No momento, os espectadores não podem enviar nenhuma faixa de vídeo. Os espectadores podem enviar uma faixa de áudio opcional ou nenhuma faixa.

Requisitos atuais de envio do participante espectador:

  • Faixa de vídeo: não suportada

  • Faixa de áudio (opcional): Opus

Se o participante principal estiver conectado atualmente ao dispositivo produtor de vídeo, o vídeo ingerido resultante no stream de vídeo do Kinesis terá os seguintes parâmetros: vídeo e áudio H.264. AAC

nota

Os participantes visualizadores se conectam diretamente à sessão de armazenamento e não diretamente ao participante principal. A sessão de armazenamento se encarrega de misturar, duplicar e rotear a mídia para o destino apropriado.

nota

Se o participante principal não estiver presente, os espectadores não conseguirão se ouvir.

Depois que o espectador participante negociar uma conexão pela WebRTC, a sessão de áudio ingerida será armazenada no stream de vídeo do Kinesis, desde que o participante principal também esteja conectado à sessão de armazenamento.

Você também pode usar os HLS recursos existentes do Kinesis Video Streams, DASH como reprodução, GetImagesgeração de imagens via e muito mais, com mídia da Web ingerida. RTC

nota

Atualmente, não há suporte para entrega de imagens e notificações do S3.

nota

Suponha que somente um cliente de dispositivo produtor de vídeo possa ser associado a uma sessão do canal. Se mais de um cliente ingressar na sessão de um canal específico como dispositivo de produção de vídeo, a solicitação mais recente do cliente terá precedência.

Limites

Os limites atuais estão em vigor:

  • Número máximo de espectadores: 3

  • Tempo máximo que os participantes do visualizador permanecem conectados à sessão de armazenamento sem a presença de um participante principal: 3 minutos

Importante

Se um espectador se desconectar da sessão de armazenamento (fechar a conexão entre pares), sua cota (limite de visualizações) permanecerá consumida por 1 minuto. Durante esse período de 1 minuto, o espectador pode invocá-lo API com o mesmo ID do cliente para voltar à sessão sem consumir uma cota adicional de visualizador. Depois de 1 minuto, a cota de espectadores é liberada e está disponível para que outros espectadores participem.

Informações adicionais

  • Idempotente - Isso não API é idempotente.

  • Comportamento de nova tentativa: isso é contabilizado como uma nova API chamada.

  • Chamadas simultâneas - Chamadas simultâneas são permitidas. Uma oferta é enviada uma vez por cada chamada.

Sintaxe da Solicitação

POST /joinStorageSessionAsViewer HTTP/1.1 Content-type: application/json { "channelArn": "string", "clientId": "string" }

URIParâmetros de solicitação

A solicitação não usa nenhum URI parâmetro.

Corpo da Solicitação

A solicitação aceita os seguintes dados no JSON formato.

channelArn

O Amazon Resource Name (ARN) do canal de sinalização.

Importante

Observe a capitalização desse parâmetro de entrada.

Tipo: string

Padrão: ^arn:(aws[a-zA-Z-]*):kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+$

Exigido: Sim

clientId

O identificador exclusivo do cliente remetente.

Tipo: string

Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 256.

Padrão: ^[a-zA-Z0-9_.-]+$

Exigido: Sim

Sintaxe da Resposta

HTTP/1.1 200

Elementos de Resposta

Se a ação for bem-sucedida, o serviço retornará uma resposta de HTTP 200 com o HTTP corpo vazio.

Erros

Para obter informações sobre os erros comuns retornados pelas ações, consulte Erros comuns.

AccessDeniedException

Você não tem as permissões necessárias para realizar essa operação.

HTTPCódigo de status: 403

ClientLimitExceededException

O Kinesis Video Streams limitou a solicitação porque você excedeu o limite permitido de chamadas de clientes. Tente fazer a ligação mais tarde.

HTTPCódigo de status: 400

InvalidArgumentException

O valor desse parâmetro de entrada é inválido.

HTTPCódigo de status: 400

ResourceNotFoundException

O recurso especificado não foi encontrado.

HTTPCódigo de status: 404

Consulte também

Para obter mais informações sobre como usar isso API em um idioma específico AWS SDKs, consulte o seguinte: