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à.
Risoluzione dei problemi
Immagini non inviate al bucket Amazon S3
Per risolvere questo problema, ci sono alcune cose a cui prestare attenzione:
-
Autorizzazioni mancanti
-
La configurazione di generazione dell'immagine non è corretta
-
Il tag non è stato aggiunto al frammento
Autorizzazioni mancanti
Se utilizzi una chiave KMS gestita dal cliente, assicurati che il ruolo che esegue le PutMedia chiamate (uploader) disponga delle autorizzazioni di crittografia e decrittografia appropriate e abbia accesso al bucket Amazon S3, come segue:
-
kms:Encrypt -
kms:GenerateDataKey -
kms:Decrypt -
s3:PutObject
Per ulteriori informazioni, consulta Come posso iniziare a usare la crittografia lato server?.
Verifica la destinazione
Usa AWS CLI per chiamare l' DescribeImageGenerationConfiguration API per il tuo stream.
aws kinesisvideo describe-image-generation-configuration \ --stream-name "demo-stream"
Controlla DestinationConfig la risposta e conferma che sia corretta.
Verifica che il tag di generazione dell'immagine sia stato aggiunto al frammento
-
Verifica che la
putKinesisVideoEventMetadatachiamata sia andata a buon fine.Il
putKinesisVideoEventMetadatametodo restituisce un codice di stato 0 in caso di successo. Si consiglia di controllare i valori restituiti dalle funzioni per 0. Se viene restituito un codice di stato diverso da zero, convertilo in esadecimale e controlla Riferimento al codice di errore per ulteriori informazioni.Assicurati di aver attivato i log degli errori e controlla i log per eventuali altri errori nell'applicazione. Esamina e confronta lo schema di chiamata all'invio dei frame della tua applicazione con l'implementazione consigliata:. Aggiungere tag di generazione di immagini ai frammenti
-
Verifica il file MKV generato localmente
Verifica che Producer SDK o Sample Application abbiano aggiunto i tag correttamente.
-
Imposta la variabile di ambiente
KVS_DEBUG_DUMP_DATA_FILE_DIR. Se questo valore è impostato, Producer SDK scrive i file multimediali che avrebbe inviato a Kinesis Video Streams nella posizione specificata.export KVS_DEBUG_DUMP_DATA_FILE_DIR=/path/to/output/directoryNota
L'SDK non creerà una nuova directory se il percorso non esiste. Crea la cartella se necessario.
-
Esegui nuovamente l'applicazione. Dovresti vedere
.mkvi file scritti nella directory di output specificata. -
Verifica il contenuto per assicurarti che il tag sia presente utilizzando MKVTool Nix o altro software.
-
Installa MKVTool Nix:
brew install mkvtoolnix -
Esegui MKVTool Nix con uno dei
.mkvfile nella directory di output.mkvinfo -v ./path/to/video/file -
Controlla l'output di MKVTool Nix. Se il metodo
KinesisVideoStream::PutFragmentMetadataproducer SDK è stato richiamato correttamente, dovresti vedere il seguente tag MKV.|+ Tags | + Tag | + Simple | + Name: AWS_KINESISVIDEO_IMAGE_GENERATIONNota
I tag appartengono al Cluster precedente.
-
-
Se il tag MKV non è presente, assicuratevi che il metodo
KinesisVideoStream::PutEventMetadataproducer SDK sia stato chiamato con l'STREAM_EVENT_TYPE_IMAGE_GENERATIONargomento e che abbia restituito un codice di successo (0).
-