View a markdown version of this page

Referencia de parámetros del elemento GStreamer - Amazon Kinesis Video Streams

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.

Referencia de parámetros del elemento GStreamer

Para enviar vídeos al SDK C++ del productor de Amazon Kinesis Video Streams, debe especificarlo kvssink como receptor o destino final de la canalización. Esta referencia proporciona información sobre parámetros kvssink obligatorios y opcionales. Para obtener más información, consulte Ejemplo: el complemento GStreamer del SDK para productores de Kinesis Video Streams: kvssink.

Temas

Proporcione las credenciales a kvssink

Para permitir que el elemento kvssink GStreamer realice solicitudes AWS, proporcione las AWS credenciales para que las utilice cuando llame al servicio Amazon Kinesis Video Streams. La cadena de proveedores de credenciales busca las credenciales en el siguiente orden:

Para configurar AWS IoT las credenciales, consulteControlar el acceso a los recursos de Kinesis Video Streams mediante AWS IoT.

El valor del iot-credentials parámetro debe empezar por iot-certificate, y ir seguido de una lista separada por comas de los siguientes pares key =value.

Key Obligatorio Descripción
ca-path

Ruta de archivo al certificado de CA utilizado para establecer la confianza con el servicio de backend a través de TLS.

ejemplo

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

cert-path

Ruta del archivo al certificado. X.509

ejemplo

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

endpoint

El punto final del proveedor de terminales de AWS IoT Core credenciales de su AWS cuenta. Consulta la guía AWS IoT para desarrolladores.

ejemplo

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

key-path

Ruta del archivo a la clave privada utilizada en el par de public/private claves.

ejemplo

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

role-aliases

El nombre del alias del rol que apunta al rol de AWS IAM que se va a usar al conectarse AWS IoT Core.

ejemplo

Ejemplo: KvsCameraIoTRoleAlias

iot-thing-name No

La iot-thing-name es opcional. Si no iot-thing-name se proporciona, se utiliza el valor del stream-name parámetro.

ejemplo

Ejemplo: kvs_example_camera

ejemplo

Ejemplo:

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 kvssink utilizar las credenciales del entorno, defina las siguientes variables de entorno:

Nombre de la variable de entorno Obligatorio Descripción
AWS_ACCESS_KEY_ID La clave de AWS acceso que se usa para acceder a Amazon Kinesis Video Streams.
AWS_SECRET_ACCESS_KEY La clave AWS secreta asociada a la clave de acceso.
AWS_SESSION_TOKEN No Especifica el valor del token de sesión requerido si utiliza credenciales de seguridad temporales directamente de AWS STS las operaciones.

La configuración de la variable de entorno cambia el valor usado hasta el final de su sesión del intérprete de comandos o hasta que otorgue a la variable un valor diferente. Para que las variables sean persistentes en sesiones futuras, configúralas en el script de inicio del shell.

Para especificar las credenciales directamente como kvssink parámetro, defina los siguientes parámetros:

kvssinkNombre del parámetro Obligatorio Descripción
access-key La clave de AWS acceso que se usa para acceder a Amazon Kinesis Video Streams.
secret-key La clave AWS secreta asociada a la clave de acceso.
session-token No Especifica el valor del token de sesión requerido si utiliza credenciales de seguridad temporales directamente de AWS STS las operaciones.
ejemplo

Uso de credenciales estáticas:

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

Uso de credenciales temporales:

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

Si seleccionó uno de los métodos anteriores, no puede usar el credential-path kvssink parámetro.

kvssinkNombre del parámetro Obligatorio Descripción
credential-path Ruta al archivo de texto que contiene las credenciales en un formato específico.

El archivo de texto debe contener las credenciales en uno de los siguientes formatos:

  • CREDENCIALES YourAccessKey YourSecretKey

  • CREDENCIALES YourAccessKey Expiration YourSecretKey SessionToken

ejemplo

Ejemplo: el credentials.txt archivo se encuentra en /home/ubuntu y contiene lo siguiente:

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

Para usarlo enkvssink, escriba:

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

El tiempo de caducidad debe ser de al menos 5 + 30 + 3 = 38 segundos en el futuro. El período de gracia se define como la IOT_CREDENTIAL_FETCH_GRACE_PERIOD variable in IotCredentialProvider.h. Si las credenciales están demasiado cerca de la fecha de caducidad al empezarkvssink, recibirá el código de error0x52000049 - STATUS_INVALID_TOKEN_EXPIRATION.

importante

kvssinkno modifica el archivo de credenciales. Si utiliza credenciales temporales, una fuente externa debe actualizar el archivo de credenciales antes de la fecha de caducidad menos el período de gracia.

Proporcione una región a kvssink

El siguiente es el orden de búsqueda de regiones:

  1. AWS_DEFAULT_REGIONLa variable de entorno se revisa primero. Si está establecida, esa región se usa para configurar el cliente.

  2. aws-regionel parámetro se revisa a continuación. Si está establecido, esa región se usa para configurar el cliente.

  3. Si no se utilizó ninguno de los métodos anteriores, el kvssink valor predeterminado es. us-west-2

parámetros opcionales de kvssink

El elemento kvssink tiene los siguientes parámetros opcionales. Para obtener más información sobre estos parámetros, consulte Estructuras de transmisión de vídeo de Kinesis.

Parámetro Description (Descripción) Unidad/tipo Predeterminado
stream-name El nombre de la transmisión de vídeo de Amazon Kinesis de destino.
importante

Si no se especifica ningún nombre de transmisión, se utilizará el nombre de transmisión predeterminado: «DEFAULT_STREAM». Si aún no existe una transmisión con ese nombre predeterminado, se creará.

absolute-fragment-times Si se utilizan tiempos de fragmentos absolutos. Booleano true
access-key

La clave de AWS acceso que se usa para acceder a Kinesis Video Streams.

Debe tener AWS las credenciales configuradas o proporcionar este parámetro. Para proporcionar esta información, escriba lo siguiente:

export AWS_ACCESS_KEY_ID=
avg-bandwidth-bps El ancho de banda medio previsto para la secuencia. Bits por segundo 4194304
aws-region

El que Región de AWS se va a usar.

nota

También puede proporcionar la variable de AWS_DEFAULT_REGION entorno a la región. Las variables de entorno tienen prioridad si están configurados tanto la variable de entorno como los parámetros kvssink.

importante

La región será la predeterminada us-west-2 si no se especifica lo contrario.

Cadena "us-west-2"
buffer-duration La duración del búfer de la secuencia. Segundos 120
codec-id El ID del códec de la secuencia. Cadena "V_MPEG4/ISO/AVC"
connection-staleness El tiempo transcurrido desde el que se invoca la devolución de llamada inactiva de la transmisión. Segundos 60
content-type El tipo de contenido de la secuencia. Cadena "video/h264"
fragment-acks Si se utilizan ACK de fragmentos. Booleano true
fragment-duration La duración del fragmento que desea. Milisegundos 2000
framerate La velocidad de fotogramas prevista. Fotogramas por segundo 25
frame-timecodes Si se utilizan códigos de tiempo de fotograma o se generan marcas de tiempo utilizando la devolución de llamada de tiempo actual. Booleano true
key-frame-fragmentation Si se producen fragmentos en un fotograma clave. Booleano true
log-config La ruta de configuración de registro. Cadena "../kvs_log_configuration"
max-latency La latencia máxima de la secuencia. Segundos 60
recalculate-metrics Si se vuelven a calcular las métricas. Booleano true
replay-duration La duración para restaurar el lector actual para reproducir durante un error si está habilitada la reactivación. Segundos 40
restart-on-error Si se reinicia cuando se produce un error. Booleano true
retention-period El periodo de tiempo que se mantiene la secuencia. Horas 2
rotation-period El período de rotación de claves. Para obtener más información, consulte Rotación AWS KMS de teclas. Segundos 3600
secret-key

La clave AWS secreta que se usa para acceder a Kinesis Video Streams.

Debe tener AWS las credenciales configuradas o proporcionar este parámetro.

export AWS_SECRET_ACCESS_KEY=
session-token Especifica el valor del token de sesión requerido si utiliza credenciales de seguridad temporales directamente de AWS STS las operaciones.
storage-size El tamaño de almacenamiento del dispositivo en mebibyte (MiB). Para obtener información acerca de la configuración del almacenamiento de dispositivo, consulte StorageInfo. Mebibyte (MiB) 128
streaming-type El tipo de streaming. Los valores válidos son:
  • 0: tiempo real

  • 1: casi tiempo real (no se admite actualmente)

  • 2: desconectado

Enum GstKvsSinkStreamingType 0: tiempo real
timecode-scale La escala de código de tiempo de MKV. Milisegundos 1
track-name El nombre de la pista MKV. Cadena "kinesis_video"
iot-certificate

AWS IoT credenciales que se van a utilizar en el kvssink elemento.

iot-certificateacepta las siguientes claves y valores:

nota

El iot-thing-name es opcional. Si no iot-thing-name se proporciona, se utiliza el valor del stream-name parámetro.

  • 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

Cadena Ninguno