View a markdown version of this page

Riferimento ai parametri degli elementi GStreamer - Amazon Kinesis Video Streams

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Riferimento ai parametri degli elementi GStreamer

Per inviare video all'SDK C++ del produttore di Amazon Kinesis Video Streams, devi specificare kvssink come sink o destinazione finale della pipeline. La documentazione di riferimento fornisce informazioni sui parametri kvssink obbligatori e facoltativi. Per ulteriori informazioni, consulta Esempio: plug-in GStreamer SDK del produttore di Kinesis Video Streams - kvssink.

Argomenti

Fornisci le credenziali a kvssink

Per consentire all'elemento kvssink GStreamer di effettuare richieste a AWS, fornisci le AWS credenziali da utilizzare quando chiama il servizio Amazon Kinesis Video Streams. La catena di fornitori di credenziali cerca le credenziali nel seguente ordine:

Per configurare le AWS IoT credenziali, vedere. Controllo dell'accesso alle risorse di Kinesis Video Streams utilizzando AWS IoT

Il valore del iot-credentials parametro deve iniziare con iot-certificate, ed essere seguito da un elenco separato da virgole delle seguenti coppie =. key value

Chiave Richiesto Descrizione
ca-path

Percorso del file al certificato CA utilizzato per stabilire l'attendibilità con il servizio di backend tramite TLS.

Esempio

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

cert-path

Percorso del file del certificato. X.509

Esempio

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

endpoint

L'endpoint del fornitore di AWS IoT Core credenziali per il tuo account. AWS Consulta la Guida per gli sviluppatori. AWS IoT

Esempio

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

key-path

Percorso del file alla chiave privata utilizzata nella coppia di public/private chiavi.

Esempio

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

role-aliases

Il nome dell'alias del ruolo che rimanda al ruolo AWS IAM da utilizzare per la connessione. AWS IoT Core

Esempio

Esempio: KvsCameraIoTRoleAlias

iot-thing-name No

Il iot-thing-name è facoltativo. Se non iot-thing-name viene fornito, viene stream-name utilizzato il valore del parametro.

Esempio

Esempio: kvs_example_camera

Esempio

Esempio:

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"

Per kvssink utilizzare le credenziali dell'ambiente, imposta le seguenti variabili di ambiente:

Nome della variabile di ambiente Richiesto Descrizione
AWS_ACCESS_KEY_ID La chiave di AWS accesso utilizzata per accedere ad Amazon Kinesis Video Streams.
AWS_SECRET_ACCESS_KEY La chiave AWS segreta associata alla chiave di accesso.
AWS_SESSION_TOKEN No Specifica il valore del token di sessione richiesto se si utilizzano credenziali di sicurezza temporanee direttamente dalle AWS STS operazioni.

L'impostazione della variabile di ambiente modifica il valore utilizzato fino al termine della sessione della shell o finché non imposti la variabile su un valore diverso. Per rendere persistenti le variabili nelle sessioni future, impostale nello script di avvio della shell.

Per specificare le credenziali direttamente come kvssink parametro, impostate i seguenti parametri:

kvssinkNome del parametro Richiesto Descrizione
access-key La chiave di AWS accesso utilizzata per accedere ad Amazon Kinesis Video Streams.
secret-key La chiave AWS segreta associata alla chiave di accesso.
session-token No Specifica il valore del token di sessione richiesto se si utilizzano credenziali di sicurezza temporanee direttamente dalle AWS STS operazioni.
Esempio

Utilizzo di credenziali statiche:

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

Utilizzo di credenziali temporanee:

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

Se hai selezionato uno dei metodi precedenti, non puoi utilizzare il credential-path kvssink parametro.

kvssinkNome del parametro Richiesto Descrizione
credential-path Percorso del file di testo contenente le credenziali in un formato specifico.

Il file di testo deve contenere le credenziali in uno dei seguenti formati:

  • CREDENZIALI YourAccessKey YourSecretKey

  • CREDENZIALI YourAccessKey Expiration YourSecretKey SessionToken

Esempio

Esempio: il credentials.txt file si trova in /home/ubuntu e contiene quanto segue:

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

Per utilizzarlokvssink, digita:

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

Il tempo di scadenza dovrebbe essere di almeno 5 + 30 + 3 = 38 secondi nel futuro. Il periodo di tolleranza è definito come la IOT_CREDENTIAL_FETCH_GRACE_PERIOD variabile in IotCredentialProvider.h. Se le credenziali sono troppo vicine alla scadenza all'avviokvssink, viene visualizzato il codice di errore. 0x52000049 - STATUS_INVALID_TOKEN_EXPIRATION

Importante

kvssinknon modifica il file delle credenziali. Se utilizzi credenziali temporanee, il file delle credenziali deve essere aggiornato da una fonte esterna prima della scadenza meno il periodo di tolleranza.

Fornisci una regione a kvssink

Di seguito è riportato l'ordine di ricerca della regione:

  1. AWS_DEFAULT_REGIONla variabile di ambiente viene esaminata per prima. Se è impostata, tale regione viene utilizzata per configurare il client.

  2. aws-regionil parametro viene esaminato successivamente. Se è impostato, tale regione viene utilizzata per configurare il client.

  3. Se non è stato utilizzato nessuno dei metodi precedenti, il kvssink valore predefinito è. us-west-2

parametri opzionali kvssink

L'elemento kvssink ha i seguenti parametri opzionali. Per ulteriori informazioni su questi parametri, consultare Strutture dei flussi video Kinesis.

Parametro Description Unità/Tipo Predefinita
stream-name Il nome dello streaming video Amazon Kinesis di destinazione.
Importante

Se non viene specificato alcun nome di stream, verrà utilizzato il nome dello stream predefinito: «DEFAULT_STREAM». Se uno stream con quel nome predefinito non esiste già, verrà creato.

absolute-fragment-times Per scegliere se usare i tempi assoluti del frammento. Booleano true
access-key

La chiave di AWS accesso utilizzata per accedere a Kinesis Video Streams.

È necessario avere AWS le credenziali impostate o fornire questo parametro. Per fornire queste informazioni, digitare quanto segue:

export AWS_ACCESS_KEY_ID=
avg-bandwidth-bps La larghezza di banda media prevista del flusso. Bit al secondo 4194304
aws-region

I Regione AWS da usare.

Nota

Puoi anche fornire alla regione la variabile di AWS_DEFAULT_REGION ambiente. Le variabili di ambiente hanno la precedenza se sono impostati sia la variabile di ambiente che i parametri kvssink.

Importante

La regione verrà impostata per impostazione predefinita us-west-2 se non diversamente specificato.

Stringa "us-west-2"
buffer-duration Durata del buffer del flusso. Secondi 120
codec-id L'ID del codec del flusso. Stringa "V_MPEG4/ISO/AVC"
connection-staleness Il tempo dopo il quale viene chiamato il callback dello stream staleness. Secondi 60
content-type Il tipo di contenuto del flusso. Stringa "video/h264"
fragment-acks Per scegliere se utilizzare il frammento ACK. Booleano true
fragment-duration La durata del frammento desiderata. Millisecondi 2000
framerate La frequenza fotogrammi prevista. Fotogrammi al secondo 25
frame-timecodes Per scegliere se utilizzare i timecode del fotogramma o generare timestamp tramite il callback dell'ora corrente. Booleano true
key-frame-fragmentation Per scegliere se creare frammenti su un fotogramma chiave. Booleano true
log-config Percorso di configurazione del log. Stringa "../kvs_log_configuration"
max-latency La latenza massima del flusso. Secondi 60
recalculate-metrics Per scegliere se calcolare nuovamente i parametri. Booleano true
replay-duration La durata per spostare all'indietro il lettore corrente per la riproduzione quando si verifica un errore se il riavvio è abilitato. Secondi 40
restart-on-error Per scegliere se riavviare quando si verifica un errore. Booleano true
retention-period Il periodo di tempo in cui il flusso viene conservato. Ore 2
rotation-period Il periodo di rotazione delle chiavi. Per ulteriori informazioni, vedere AWS KMS Rotating Keys. Secondi 3600
secret-key

La chiave AWS segreta utilizzata per accedere a Kinesis Video Streams.

È necessario avere AWS le credenziali impostate o fornire questo parametro.

export AWS_SECRET_ACCESS_KEY=
session-token Specifica il valore del token di sessione richiesto se si utilizzano credenziali di sicurezza temporanee direttamente dalle operazioni. AWS STS
storage-size La dimensione di archiviazione del dispositivo in mebibyte (MiB). Per informazioni sulla configurazione dello storage del dispositivo, consulta StorageInfo. Mebibyte (MiB) 128
streaming-type Tipo di streaming. I valori validi includono:
  • 0: tempo reale

  • 1: quasi in tempo reale (non attualmente supportato)

  • 2: non in linea

Enum GstKvsSinkStreamingType 0: tempo reale
timecode-scale La dimensione del timecode MKV. Millisecondi 1
track-name Il nome della traccia MKV. Stringa "kinesis_video"
iot-certificate

AWS IoT credenziali da utilizzare nell'kvssinkelemento.

iot-certificateaccetta le seguenti chiavi e valori:

Nota

iot-thing-nameÈ facoltativo. Se non iot-thing-name viene fornito, viene utilizzato il valore del stream-name parametro.

  • 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

Stringa Nessuno