In che modo l'SDK Amazon Chime utilizza i contenuti multimediali WebRTC - Amazon Chime SDK

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

In che modo l'SDK Amazon Chime utilizza i contenuti multimediali WebRTC

L'SDK Amazon Chime supporta due tipi di sessioni WebRTC, standard e ad alta definizione. I seguenti argomenti descrivono i contenuti multimediali disponibili in ogni tipo di sessione quando si utilizzano le librerie client Amazon Chime SDK per JavaScript React, iOS e Android.

Audio

Ogni client Amazon Chime invia un flusso audio alle sessioni e riceve un flusso audio dalla sessione. In genere, i microfoni sui dispositivi locali generano l'audio. L'audio ricevuto è un mix dell'audio inviato dagli altri client di sessione.

Entrambi i tipi di sessione supportano frequenze di campionamento fino a 48 kHz e fino a 2 canali (stereo) codificati con bitrate fino a 128 kbps utilizzando il codec Opus. Tuttavia, i flussi audio inviati e ricevuti variano in base al tipo di libreria client:

  • Le librerie client Amazon Chime SDK per JavaScript e React supportano l'invio e la ricezione di audio mono e stereo alla massima frequenza di campionamento supportata dal dispositivo e dal browser, fino a un massimo di 48 kHz.

  • Le librerie client Amazon Chime SDK per iOS e Android supportano l'invio di audio mono fino a 48 kHz e la ricezione di audio stereo a 48 kHz.

Video

Ogni client Amazon Chime può inviare un flusso video alla sessione e ricevere fino a 25 flussi video dalla sessione. Il video inviato proviene in genere dalla webcam del dispositivo locale. Ogni client può selezionare fino a 25 flussi video da ricevere e modificare la selezione in qualsiasi momento durante la sessione.

Le sessioni standard supportano risoluzioni video fino a 1280x720 a 30 fotogrammi al secondo codificate con bitrate fino a 1500 kbps utilizzando H.264, VP8, VP9 e AV1.

Le sessioni ad alta definizione supportano risoluzioni video fino a 1920x1080 a 30 fotogrammi al secondo codificate con bitrate fino a 2500 kbps utilizzando H.264, VP8, VP9 e AV1.

Le librerie client Amazon Chime SDK per JavaScript e React supportano l'invio di video in simulcast a 15 fotogrammi al secondo o con codifica video scalabile (SVC). SVC codifica un singolo flusso video con tre livelli spaziali e tre livelli temporali al 100%, 50% e 25% dei valori target. Il servizio seleziona automaticamente il layer da inviare a ciascun visualizzatore in base alla larghezza di banda disponibile degli spettatori.

Le librerie client Amazon Chime SDK per iOS e Android supportano l'invio fino a 15 frame al secondo. Tuttavia, la frequenza dei fotogrammi e la risoluzione effettive vengono gestite automaticamente dall'SDK Amazon Chime.

La codifica e la decodifica video utilizzano l'accelerazione hardware, ove disponibile, per migliorare le prestazioni.

Se un client invia video con un bitrate superiore al bitrate massimo consentito, la sessione inizia innanzitutto a inviare al client messaggi di bitrate massimo stimato dal ricevitore tramite il Real-Time Control Protocol. Se il client continua a inviare video con un bitrate superiore al bitrate massimo consentito, la sessione scarta i pacchetti di streaming video in entrata.

Condivisione dei contenuti

Fino a due client possono condividere i contenuti della sessione. Una condivisione di contenuti può includere una traccia video, una traccia audio o entrambe. Un esempio comune di condivisione di contenuti è la condivisione dello schermo, che utilizza l'acquisizione dello schermo come fonte del contenuto. Un altro esempio è la condivisione di contenuti preregistrati con tracce video e audio.

L'audio del contenuto viene mixato nel flusso audio inviato dalla sessione. L'audio dei contenuti supporta frequenze di campionamento fino a 48 kHz e fino a 2 canali (stereo) codificati con bitrate fino a 128 kbps utilizzando il codec Opus.

I contenuti video vengono inviati alla sessione e inoltrati ai client in un flusso video separato. Le sessioni standard supportano contenuti video fino a 1920x1080 a 30 fotogrammi al secondo. Le sessioni ad alta definizione supportano contenuti video fino a 3840 x 2160 a 30 fotogrammi al secondo.

L'acquisizione di schermate per la condivisione di contenuti utilizza la risoluzione dello schermo o della finestra catturata, fino alla risoluzione massima del contenuto per il tipo di sessione e fino a 30 fotogrammi al secondo. Tuttavia, le funzionalità del dispositivo e del browser possono limitare tali valori.

Le librerie client Amazon Chime SDK per JavaScript e React supportano la condivisione di contenuti da screenshot e altre fonti.

Le librerie client Amazon Chime SDK per iOS e Android supportano solo la condivisione di contenuti tramite acquisizione dello schermo.

Messaggi di dati

I messaggi di dati consentono a un client di trasmettere informazioni ad altri client della sessione. Ad esempio, un'applicazione può utilizzare messaggi di dati per condividere le reazioni emoji durante una sessione.

Ogni messaggio di dati include:

  • Un argomento, una stringa composta da un massimo di 64 caratteri.

  • Fino a 2 KB di dati, incluso l'argomento.

Un client invia un messaggio di dati alla sessione e la sessione invia il messaggio di dati a tutti i client connessi.

La sessione può facoltativamente memorizzare nella cache il messaggio di dati per un massimo di cinque minuti. Se un client si unisce o si riconnette a una sessione, la sessione invierà automaticamente al client tutti i messaggi di dati memorizzati nella cache che non sono stati inviati in precedenza. La cache della sessione memorizza un massimo di 1024 messaggi di dati.

Una sessione supporta fino a 100 messaggi di dati inviati al secondo. Quando si utilizza la trascrizione in tempo reale, ogni client riceve messaggi di trascrizione tramite messaggi di dati, che vengono conteggiati nel totale dei messaggi inviati al secondo.