25.04.2014 Views

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

l’horloge est par défaut égale à 90 Khz, sinon elle doit être spécifiée durant la phase d’initialisation<br />

de la session (exemple par SDP).<br />

SSRC : ce champ est utilisé comme défini dans le protocole RTP RFC 3550 [110], il sera en<br />

particulier utile, afin d’identifier les participants actifs dans la session, pour des sessions de<br />

communication multicast et bidirectionnelle.<br />

M : c’est un bit qui est tout le temps mis à 1 sauf quand la charge utile contient un ou plusieurs<br />

fragments d’AU. Dans le cas où c’est le dernier fragment d’une AU, ce bit est également mis à 1.<br />

Le reste des champs, de l’entête RTP, seront utilisés comme spécifié dans le protocole RTP<br />

RFC 3550 [110].<br />

AU<br />

Headers<br />

Size<br />

ES_ID<br />

SL Header<br />

AU Header<br />

.................<br />

(1)<br />

SL <strong>Packet</strong><br />

AU Header<br />

(n)<br />

PAD AU<br />

(1)<br />

SL Pyload<br />

...............<br />

AU<br />

(n)<br />

Figure 1-9: Structure de Paquet SL Réduit.<br />

Dans l’entête du paquet SL nous définissons les champs suivants (voir Figure 1-9):<br />

Au Header Size : c’est un champ sur 2 octets utilisé pour indiquer la taille de l’entête SL sans<br />

les bits de bourrage. Ceci permet une décapsulation des AUs, du paquet SL, sans ambiguïté.<br />

ES_ID : c’est un champ, qui est également sur 2 octets, qui permet d’indiquer l’identificateur<br />

du flux élémentaire auquel les AUs du paquet SL appartiennent. Ce champ est commun à toutes les<br />

unités d’accès concaténées dans la charge utile du paquet SL. Ceci permet de réduire l’overhead en<br />

évitant le mapping du ES_ID dans chaque AU Header.<br />

PAD : c’est une suite de bits de bourrage (plus de 7 bits mis à zéro) pour aligner l’entête SL<br />

sur un nombre entier d’octets. D’où un accès facile aux AUs concaténées.<br />

Il existe autant d’entêtes d’AU concaténés dans l’entête du paquet SL que de AU dans la<br />

charge utile du paquet SL. Les AUs sont associées aux entêtes d’AU selon leur ordre d’apparition.<br />

Optional fields<br />

AU Size<br />

Index<br />

/IndexDelta<br />

CTS-Flag CTS-Delta DTS-Flag DTS-Delta<br />

Figure 1-10: Entête de chaque Unité d’Accès (AU).<br />

Nous définissons dans AU Header (voir Figure 1-10) Les champs de l’entête d’AU sont les<br />

suivants :<br />

SL.<br />

AU Size : utilisé pour indiquer la taille en octets de l’AU associée dans le payload du paquet<br />

Index / IndexDelta : utilisé pour indiquer le numéro de séquence de l’AU associée. Le<br />

premier entête d’AU, du paquet SL, contient le champ Index tandis que les entêtes d’AU restants<br />

contiennent le champ IndexDelta qui est codé en différentiel par rapport au numéro de série de<br />

l’AU précédente (Index ou IndexDelta précédent).<br />

14

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!