5.9. Applying a Local Description (Anwenden einer lokalen Beschreibung)
5.9. Applying a Local Description (Anwenden einer lokalen Beschreibung)
Die folgenden Schritte werden auf der Ebene der Medien-Engine ausgeführt, um eine lokale Beschreibung (local description) anzuwenden. Wird ein Fehler zurückgegeben, MUSS die Sitzung in den Zustand vor der Ausführung dieser Schritte zurückversetzt werden.
Zuerst werden „m=“-Abschnitte verarbeitet. Für jeden „m=“-Abschnitt MÜSSEN die folgenden Schritte ausgeführt werden; sind Parameter außerhalb der Grenzen oder nicht anwendbar, MUSS die Verarbeitung gestoppt und ein Fehler zurückgegeben werden.
-
Ist dieser „m=“-Abschnitt neu, mit der Sammlung von Kandidaten dafür beginnen, wie in [RFC8445], Abschnitt 5.1.1 definiert, es sei denn, er wird definitiv gebündelt (entweder (1) dies ist ein Angebot und der „m=“-Abschnitt ist als bundle-only markiert oder (2) dies ist eine Antwort und der „m=“-Abschnitt ist in einen anderen „m=“-Abschnitt gebündelt).
-
Oder, wenn sich die ICE-ufrag- und Passwortwerte geändert haben, den ICE-Agenten auslösen, einen ICE-Neustart wie in [RFC8445], Abschnitt 9 beschrieben zu beginnen, und mit der Sammlung neuer Kandidaten für den „m=“-Abschnitt beginnen. Ist diese Beschreibung eine Antwort, auch Prüfungen für diesen Medienabschnitt starten.
-
Gibt der Wert des Feldes
protodes „m=“-Abschnitts die Verwendung von RTP an:-
Ist kein RtpTransceiver mit diesem „m=“-Abschnitt verknüpft, einen finden und gemäß den folgenden Schritten mit diesem „m=“-Abschnitt verknüpfen. Diese Situation tritt nur beim Anwenden eines Angebots auf.
-
Den RtpTransceiver finden, der diesem „m=“-Abschnitt entspricht, unter Verwendung der Zuordnung zwischen Transceivern und „m=“-Abschnittsindizes, die beim Erstellen des Angebots festgelegt wurde.
-
Den Wert der
mid-Eigenschaft dieses RtpTransceiver auf die MID des „m=“-Abschnitts setzen.
-
-
Ist RTCP-Mux angegeben, die Demultiplexierung von RTP und RTCP von der RTP-ICE-Komponente vorbereiten, wie in [RFC5761], Abschnitt 5.1.3 spezifiziert.
-
Für jede angegebene RTP-Header-Erweiterung eine Zuordnung zwischen Erweiterungs-ID und URI herstellen, wie in [RFC5285], Abschnitt 6 beschrieben.
-
Wird die MID-Header-Erweiterung unterstützt, die Demultiplexierung von RTP-Strömen für diesen „m=“-Abschnitt auf Basis der MID-Header-Erweiterung vorbereiten, wie in [RFC8843], Abschnitt 15 beschrieben.
-
Für jedes angegebene Medienformat eine Zuordnung zwischen Payload-Typ und dem tatsächlichen Medienformat herstellen, wie in [RFC3264], Abschnitt 6.1 beschrieben. Außerdem die Demultiplexierung von RTP-Strömen für diesen „m=“-Abschnitt auf Basis der von diesem „m=“-Abschnitt unterstützten Medienformate vorbereiten, wie in [RFC8843], Abschnitt 9.2 beschrieben.
-
Für jedes angegebene „rtx“-Medienformat eine Zuordnung zwischen dem RTX-Payload-Typ und seinem zugehörigen primären Payload-Typ herstellen, wie in den Abschnitten 8.6 und 8.7 von [RFC4588] beschrieben.
-
Ist das Richtungsattribut vom Typ „sendrecv“ oder „recvonly“, Empfang und Dekodierung von Medien aktivieren.
-
Wenn diese Beschreibung schließlich vom Typ „pranswer“ oder „answer“ ist, die in Abschnitt 5.11 definierte Verarbeitung ausführen.