Passa al contenuto principale

3.4.1. RtpTransceivers

3.4.1. RtpTransceivers

Gli RtpTransceivers consentono all'applicazione di controllare il media RTP associato a una sezione "m=". Ogni RtpTransceiver ha un RtpSender e un RtpReceiver, che un'applicazione può utilizzare per controllare l'invio e la ricezione di media RTP. L'applicazione può anche modificare direttamente l'RtpTransceiver, ad esempio arrestandolo.

Gli RtpTransceivers hanno generalmente una mappatura 1:1 con le sezioni "m=", sebbene possano esserci più RtpTransceivers che sezioni "m=" quando gli RtpTransceivers vengono creati ma non ancora associati a una sezione "m=", o se gli RtpTransceivers sono stati arrestati e dissociati dalle sezioni "m=". Si dice che un RtpTransceiver è associato a una sezione "m=" se la sua proprietà di identificazione media (mid) è non nulla; altrimenti, si dice che è dissociato. La sezione "m=" associata è determinata utilizzando una mappatura tra transceivers e indici di sezione "m=", formata durante la creazione di un'offerta o l'applicazione di un'offerta remota.

Un RtpTransceiver non è mai associato a più di una sezione "m=", e una volta applicata una descrizione di sessione, una sezione "m=" è sempre associata esattamente a un RtpTransceiver. Tuttavia, in alcuni casi in cui una sezione "m=" è stata rifiutata, come discusso nella Sezione 5.2.2 di seguito, quella sezione "m=" sarà "riciclata" e associata a un nuovo RtpTransceiver con un nuovo valore MID.

Gli RtpTransceivers possono essere creati esplicitamente dall'applicazione o implicitamente chiamando setRemoteDescription con un'offerta che aggiunge nuove sezioni "m=".