9. Indicating Capabilities
9. Indicating Capabilities
Avant qu'un agent n'envoie une offre, il est utile de savoir si les formats médias de cette offre seraient acceptables pour le répondant. Certains protocoles, comme SIP (Session Initiation Protocol, protocole d'initiation de session), fournissent un moyen d'interroger de telles capacités. SDP peut être utilisé dans les réponses à de telles requêtes pour indiquer les capacités. Cette section décrit comment un tel message SDP est formaté. Comme SDP n'a aucun moyen d'indiquer que le message sert à l'indication de capacités, ceci est déterminé par le contexte du protocole de couche supérieure. La capacité de SDP de base à indiquer les capacités est très limitée. Elle ne peut pas exprimer des plages ou valeurs de paramètres autorisés, et ne peut pas être faite en parallèle avec une offre/réponse elle-même. Des extensions pourraient lever de telles limitations à l'avenir.
Un SDP construit pour indiquer les capacités médias est structuré comme suit. Il DOIT être un SDP valide, sauf qu'il PEUT omettre les lignes e= et p=. La ligne t= DOIT être égale à 0 0. Pour chaque type de média pris en charge par l'agent, il DOIT y avoir une description média correspondante de ce type. L'identifiant de session (session ID) dans le champ d'origine DOIT être unique pour chaque SDP construit pour indiquer les capacités médias. Le port DOIT être mis à zéro, mais l'adresse de connexion est arbitraire. L'utilisation du port zéro garantit qu'un SDP formaté pour les capacités ne provoque pas l'établissement de flux médias s'il est interprété comme une offre ou une réponse.
Le composant transport de la ligne m= indique le transport pour ce type de média. Pour chaque format média de ce type pris en charge par l'agent, il DEVRAIT y avoir un format média listé dans la ligne m=. Dans le cas de RTP, si des types de charge utile dynamiques sont utilisés, un attribut rtpmap DOIT être présent pour lier le type à un format spécifique. Il n'y a pas de moyen d'indiquer des contraintes, telles que combien de flux simultanés peuvent être pris en charge pour un codec particulier, et ainsi de suite.
v=0
o=carol 28908764872 28908764872 IN IP4 100.3.6.6
s=-
t=0 0
c=IN IP4 192.0.2.4
m=audio 0 RTP/AVP 0 1 3
a=rtpmap:0 PCMU/8000
a=rtpmap:1 1016/8000
a=rtpmap:3 GSM/8000
m=video 0 RTP/AVP 31 34
a=rtpmap:31 H261/90000
a=rtpmap:34 H263/90000
Figure 1 : SDP indiquant des capacités
Le SDP de la figure 1 indique que l'agent peut prendre en charge trois codecs audio (PCMU, 1016 et GSM) et deux codecs vidéo (H.261 et H.263).