Ce tutoriel va nous permettre de construire, grâce à une raspberry pi, un serveur de streaming vidéo et/ou audio et notamment diffuser un flux vidéo provenant d'une caméra. N'ayant pas encore en ma possession le module caméra de la raspberry pi, je vais utiliser une webcam USB du commerce compatible avec la raspberry pi (USB Webcam).
Le serveur de streaming que nous allons installer est basé sur le protocole RTSP (Real Time Streaming Protocol). Ce protocole RTSP est implémenté sur la couche 7 du modèle OSI (couche applicative) et utilise les couches de transports RTP/RTCP pour faire circuler les flux de données sur un réseau IP.
L'avantage du RTSP est de diffuser un ou plusieurs flux seulement quand un client se connecte au serveur et ce même client peut interagir avec le flux de données (lecture, pause, retour en arrière, en avant, etc ...).
Ce tutoriel est divisé en deux billets, Ce billet est consacré à la construction et l'installation d'un serveur RTSP basé sur le framework GStreamer sur notre raspberry pi et le second billet est consacré à l'introduction de GStreamer avec des cas simples d'utilisation et notamment la démonstration de notre serveur RTSP.
Pour ce billet, nous allons travailler avec :
Le serveur de streaming que nous allons installer est basé sur le protocole RTSP (Real Time Streaming Protocol). Ce protocole RTSP est implémenté sur la couche 7 du modèle OSI (couche applicative) et utilise les couches de transports RTP/RTCP pour faire circuler les flux de données sur un réseau IP.
L'avantage du RTSP est de diffuser un ou plusieurs flux seulement quand un client se connecte au serveur et ce même client peut interagir avec le flux de données (lecture, pause, retour en arrière, en avant, etc ...).
Ce tutoriel est divisé en deux billets, Ce billet est consacré à la construction et l'installation d'un serveur RTSP basé sur le framework GStreamer sur notre raspberry pi et le second billet est consacré à l'introduction de GStreamer avec des cas simples d'utilisation et notamment la démonstration de notre serveur RTSP.
Pour ce billet, nous allons travailler avec :
- Notre environnement de compilation : buildroot-2013.08.1.
- Kernel 3.12.0.
- Chaîne de compilation croisée construite avec crosstool-NG 1.15.0.
- Packages rpi-userland et rpi-firmware.
- Framework GStreamer version 1.2.0 et ses plugins standards (base, bad, ugly et good) en version 1.2.0.
- Plugin OMX (OpenMAX IL wrapper) version Git, qui nous permettra d'encoder les vidéos grâce aux GPU de la raspberry pi.
- Serveur RTSP version Git aussi.