Du sens dans vos projets.

La vidéo IP

Extrait du programme de formation "Gestion des réseaux de production live IP" proposé par IIFA/Media 180.

Introduction

Le streaming consiste à diffuser une vidéo d’un serveur vers un client à travers un réseau de type internet (protocole IP). Le serveur segmente la vidéo en paquets susceptibles d’être diffusés sur le réseau. Ces paquets sont ensuite assemblés par le client afin de reconstituer la vidéo. A la différence d’un simple transfert de fichier, la vidéo est jouée au fur et à mesure que les paquets arrivent. Ces paquets sont ensuite détruits.

Il existe actuellement 3 protocoles qui permettent de faire du streaming. Les deux premiers, HTTP et FTP, sont des protocoles de transfert de fichier. On peut néanmoins parler de streaming dans la mesure où les vidéos peuvent être affichées au fur et à mesure du téléchargement. Le troisième protocole, RTP (Real Time Protocol), est celui qui permet de faire à proprement parler du streaming, c’est à dire de la diffusion de contenu en temps réel.

Le protocole RTP (Real Time Protocol)

Le principe du protocole RTP consiste à envoyer les paquets en temps réel sur le réseau. Les paquets sont marqués temporellement de manière à être réordonnancés par le client afin d’afficher la vidéo de manière cohérente. Grâce à ce protocole, on peut aussi bien diffuser des vidéos pré-enregistrées que des images en direct.

RTP est défini depuis janvier 1996 par la RFC 1889. Cette RFC a elle-même été complétée par de très nombreuses autres RFCs. RTP a été créé afin de définir des fonctions de diffusion temps réel comme la diffusion audio et/ou vidéo. Il permet des services de type unicast ou multicast sans garantie de qualité de service (QoS). Les données sont augmentées de l’ajout du protocole de contrôle RTCP. Par opposition à HTTP et FTP qui fonctionnent au-dessus de TCP (mode connecté), RTP fonctionne au-dessus d’UDP (mode non connecté).

Pour améliorer les performances de RTP, un protocole spécifique au streaming permet de contrôler la diffusion du contenu, il s’agit de RTSP (Real Time Streaming Protocol).

Le protocole RTSP (Real Time Streaming Protocol)

RTSP est défini depuis avril 1998 par la RFC 2326.

RTSP est un protocole de niveau applicatif qui sert à contrôler les propriétés temps réel du contenu délivré. Il est adapté aussi bien à la diffusion de données pré-enregistrées que de données diffusées en direct. Il s’agit d’un protocole au-dessus de TCP.

Principe de diffusion vidéo sur le Web

Deux modes de diffusion sont possibles :

Unicast :

Utilisé pour la V.O.D. Il nécessite l'ouverture d’un flux spécifique entre le serveur et le client. Il permet de visualiser un film depuis le début jusqu’à la fin en streaming vidéo. Les protocoles utilisés sont RTSP pour le contrôle du flux et RTP pour l’émission du flux. RTSP utilise TCP alors que RTP utilise UDP. L’intérêt de RTSP par rapport à RTP est d’ajouter un contrôle sur le film et de pouvoir par exemple accéder directement à un point donné du film sans avoir à télécharger le film dans sa globalité. Il améliore ainsi les performances. Pour pouvoir diffuser un film à l’aide de RTSP il doit être encodé d’une certaine manière : « hinted movie » au moment de l‘exportation à l’aide de QT pro par exemple.

Le client contacte le serveur de streaming grâce au protocole RTSP. En réponse à cette requête, le serveur retourne via RTSP une description de la session de streaming qu’il va ouvrir. Une session de streaming est composée d’un ou plusieurs flux (stream), par exemple audio ou vidéo. Le serveur informe le client du nombre de flux. Il donne aussi des informations décrivant les flux comme le type du média et le codec de compression. Les flux sont quant à eux diffusés séparément via le protocole RTP.

L’URL d’accès sera du type : «rtsp://serveur/film.mov»

Multicast :

Utilisé pour la diffusion d’une chaîne de TV. Il n’existe qu’un seul flux qui est dupliqué au niveau de chaque client. Pour ce connecter au multicast, le client télécharge un fichier de type SDP qui décrit le flux, puis démarrage la diffusion en utilisant également les protocoles RTSP et RTP. Le téléchargement du fichier SDP s’effectue au-dessus de TCP.

Une diffusion multicast est annoncée par un fichier SDP (Session Description Protocol) qui est téléchargé à partir d’un serveur web classique (Apache, IIS,...). Ce fichier contient les informations nécessaires pour recevoir le flux multicast, adresse IP du serveur, numéro du port et les informations de description des flux (mêmes informations que celles envoyées par RTSP dans le cas d’une diffusion unicast).

L’URL d’accès sera du type : «rtsp://serveur/playlist.sdp»

Actuellement, tous les routeurs ne supportent pas le mutlicast. Afin de permettre aux clients situés derrière ces routeurs d’accéder aux données multicast, il est possible d’installer un serveur de streaming qui va agir comme une passerelle entre multicast et unicast. Ce serveur est connecté aux flux multicast et sert aux clients qui se connectent à lui. Ces flux sont sous la forme de flux unicast en utilisant RTP et RTSP. Cette opération s’effectue en temps réel, ce qui permet de retransmettre aussi bien des vidéos pré-enregistrées que des images en direct.

source : www.rince.fr