GStreamerreferência do parâmetro do elemento - 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á.

GStreamerreferência do parâmetro do elemento

Para enviar vídeo para o SDK produtor C++ do Amazon Kinesis Video Streams, kvssink você especifica como coletor ou destino final do pipeline. Essa referência fornece informações sobre o kvssink obrigatório e os parâmetros opcionais. Para obter mais informações, consulte Exemplo: Plugin de produtor do Kinesis Video SDK GStreamer Streams - kvssink.

Tópicos

Forneça credenciais para kvssink

Para permitir que o kvssink GStreamer elemento faça solicitações AWS, forneça AWS credenciais para que ele use ao chamar o serviço Amazon Kinesis Video Streams. A cadeia de fornecedores de credenciais procura as credenciais na seguinte ordem:

Para configurar AWS IoT as credenciais, consulteControlando o acesso aos recursos do Kinesis Video Streams usando AWS IoT.

O valor do iot-credentials parâmetro deve começar com iot-certificate, e ser seguido por uma lista separada por vírgulas dos seguintes key=value pares.

Chave Obrigatório Descrição
ca-path Sim

Caminho do arquivo para o certificado CA usado para estabelecer confiança com o serviço de back-end por meio TLS de.

Exemplo: /file/path/to/certificate.pem

cert-path Sim

Caminho do arquivo para o certificado X.509.

Exemplo: /file/path/to/certificateID-certificate.pem.crt

endpoint Sim

O endpoint do provedor de endpoint de AWS IoT Core credenciais para sua conta. AWS Consulte o Guia AWS IoT do desenvolvedor.

Exemplo: credential-account-specific-prefix.credentials.iot.aws-region.amazonaws.com

key-path Sim

Caminho do arquivo para a chave privada usada no par de chaves pública/privada.

Exemplo: /file/path/to/certificateID-private.pem.key

role-aliases Sim

O nome do alias da função que aponta para a AWS IAM função a ser usada ao se conectar AWS IoT Core.

Exemplo: KvsCameraIoTRoleAlias

iot-thing-name Não

iot-thing-name é opcional. Se não iot-thing-name for fornecido, o valor do stream-name parâmetro será usado.

Exemplo: kvs_example_camera

Exemplo:

gst-launch-1.0 -v ... ! kvssink stream-name="YourStream" aws-region="YourRegion" iot-certificate="iot-certificate,endpoint=credential-account-specific-prefix.credentials.iot.aws-region.amazonaws.com,cert-path=certificateID-certificate.pem.crt,key-path=certificateID-private.pem.key,ca-path=certificate.pem,role-aliases=YourRoleAlias,iot-thing-name=YourThingName"

Para ter credenciais de kvssink uso do ambiente, defina as seguintes variáveis de ambiente:

Nome da variável de ambiente Obrigatório Descrição
AWS_ACCESS_KEY_ID Sim A chave de AWS acesso usada para acessar o Amazon Kinesis Video Streams.
AWS_SECRET_ACCESS_KEY Sim A chave AWS secreta associada à chave de acesso.
AWS_SESSION_TOKEN Não Especifica o valor do token de sessão necessário se você usar credenciais de segurança temporárias diretamente das AWS STS operações.

Configurar a variável de ambiente altera o valor usado até o final da sua sessão de shell ou até que você defina a variável como um valor diferente. Para tornar as variáveis persistentes em futuras sessões, defina-as no script de inicialização do shell.

Para especificar as credenciais diretamente como um kvssink parâmetro, defina os seguintes parâmetros:

kvssinkNome do parâmetro Obrigatório Descrição
access-key Sim A chave de AWS acesso usada para acessar o Amazon Kinesis Video Streams.
secret-key Sim A chave AWS secreta associada à chave de acesso.
session-token Não Especifica o valor do token de sessão necessário se você usar credenciais de segurança temporárias diretamente das AWS STS operações.

Usando credenciais estáticas:

gst-launch-1.0 -v ... ! kvssink stream-name="YourStream" aws-region="YourRegion" access-key="AKIDEXAMPLE" secret-key="SKEXAMPLE"

Usando credenciais temporárias:

gst-launch-1.0 -v ... ! kvssink stream-name="YourStream" aws-region="YourRegion" access-key="AKIDEXAMPLE" secret-key="SKEXAMPLE" session-token="STEXAMPLE"
Importante

Se você selecionou um dos métodos anteriores, não poderá usar o credential-file kvssink parâmetro.

kvssinkNome do parâmetro Obrigatório Descrição
credential-file Sim Caminho para o arquivo de texto contendo credenciais em um formato específico.

O arquivo de texto deve conter credenciais em um dos seguintes formatos:

  • CREDENTIALS YourAccessKey YourSecretKey

  • CREDENTIALS YourAccessKey Expiration YourSecretKey SessionToken

Exemplo: Seu credentials.txt arquivo está localizado em /home/ubuntu e contém o seguinte:

CREDENTIALS AKIDEXAMPLE 2023-08-10T22:43:00Z SKEXAMPLE STEXAMPLE

Para usá-lo emkvssink, digite:

gst-launch-1.0 -v ... ! kvssink stream-name="YourStream" aws-region="YourRegion" credential-file="/home/ubuntu/credentials.txt"
nota

O tempo de expiração deve ser de pelo menos 5 + 30 + 3 = 38 segundos no futuro. O período de carência é definido como a IOT_CREDENTIAL_FETCH_GRACE_PERIOD variável em IotCredentialProvider.h. Se as credenciais estiverem muito próximas da expiração quando você começarkvssink, você receberá o código 0x52000049 - STATUS_INVALID_TOKEN_EXPIRATION de erro.

Importante

kvssinknão modifica o arquivo de credenciais. Se você estiver usando credenciais temporárias, o arquivo de credenciais deverá ser atualizado por uma fonte externa antes do prazo de expiração menos o período de carência.

Forneça uma região para kvssink

A seguir está a ordem de pesquisa da região:

  1. AWS_DEFAULT_REGIONa variável de ambiente é revisada primeiro. Se estiver definida, essa região será usada para configurar o cliente.

  2. aws-regiono parâmetro é revisado a seguir. Se estiver definida, essa região será usada para configurar o cliente.

  3. Se nenhum dos métodos anteriores foi usado, o kvssink padrão é. us-west-2

kvssinkparâmetros opcionais

O elemento kvssink tem os seguintes parâmetros opcionais. Para mais informações sobre esses parâmetros, consulte Estruturas de transmissão de vídeo do Kinesis.

Parâmetro Descrição Unidade/tipo Padrão
stream-name O nome do stream de vídeo do Amazon Kinesis de destino.
Importante

Se nenhum nome de fluxo for especificado, o nome padrão do fluxo será usado: “DEFAULT_STREAM”. Se um stream com esse nome padrão ainda não existir, ele será criado.

absolute-fragment-times Se devem ser usadas horas absolutas de fragmentos. Booleano true
access-key

A chave de AWS acesso usada para acessar o Kinesis Video Streams.

Você deve ter AWS as credenciais definidas ou fornecer esse parâmetro. Para fornecer essas informações, digite o seguinte:

export AWS_ACCESS_KEY_ID=
avg-bandwidth-bps A largura de banda média esperada para o stream. Bits por segundo 4194304
aws-region

O Região da AWS para usar.

nota

Você também pode fornecer à região a variável de AWS_DEFAULT_REGION ambiente. As variáveis de ambiente têm precedência se a variável de ambiente e os parâmetros kvssink estiverem definidos.

Importante

A região será usada como padrão, us-west-2 se não for especificada de outra forma.

String "us-west-2"
buffer-duration A duração do buffer de streaming. Segundos 120
codec-id O ID do codec do streaming. String "V_MPEG4/ISO/AVC"
connection-staleness O tempo após o qual o retorno de chamada de inatividade do stream é chamado. Segundos 60
content-type O tipo do conteúdo do streaming. String "video/h264"
fragment-acks Se deve usar o fragmento. ACKs Booleano true
fragment-duration A duração do fragmento desejada. Milissegundos 2000
framerate A taxa de quadros esperada. Quadros por segundo 25
frame-timecodes Determina se usará códigos de hora de quadros ou gerará carimbos de hora usando o retorno de hora atual. Booleano true
key-frame-fragmentation Se fragmentos devem ser produzidos em um quadro chave. Booleano true
log-config O caminho da configuração do log. String "../kvs_log_configuration"
max-latency A latência máxima do streaming. Segundos 60
recalculate-metrics Se as métricas devem ser recalculadas. Booleano true
replay-duration A duração para reverter o leitor atual para reprodução durante um erro se a reinicialização estiver habilitada. Segundos 40
restart-on-error Se uma reinicialização deve ser executada quando ocorre um erro. Booleano true
retention-period A duração do streaming é preservada. Horas 2
rotation-period O período de rotação de chaves. Para obter mais informações, consulte AWS KMS Chaves rotativas. Segundos 3600
secret-key

A chave AWS secreta usada para acessar o Kinesis Video Streams.

Você deve ter AWS as credenciais definidas ou fornecer esse parâmetro.

export AWS_SECRET_ACCESS_KEY=
session-token Especifica o valor do token de sessão necessário se você usar credenciais de segurança temporárias diretamente das AWS STS operações.
storage-size O tamanho do armazenamento do dispositivo em mebibyte (MiB). Para obter informações sobre como configurar o armazenamento de dispositivos, consulte StorageInfo. Mebibyte (MiB) 128
streaming-type O tipo do streaming. Os valores válidos são:
  • 0: tempo real

  • 1: quase tempo real (não compatível atualmente)

  • 2: off-line

Enum GstKvsSinkStreamingType 0: tempo real
timecode-scale A escala do MKV timecode. Milissegundos 1
track-name O nome da MKV faixa. String "kinesis_video"
iot-certificate

AWS IoT credenciais a serem usadas no kvssink elemento.

iot-certificateaceita as seguintes chaves e valores:

nota

O iot-thing-name é opcional. Se não iot-thing-name for fornecido, o valor do stream-name parâmetro será usado.

  • endpoint=iotcredentialsproviderendpoint

  • cert-path=/localdirectorypath /to/certificate

  • key-path=/localdirectorypath /to/private/key

  • ca-path=/localdirectorypath/to/ca-cert

  • role-aliases=role-aliases

  • iot-thing-name=YourIotThingName

String Nenhum