Programme de surveillance via le protocole rtsp. Protocole RTSP

Transforme ce produit en une solution presque universelle pour regarder des vidéos, quelle que soit la source. Une fonctionnalité notable fournie par le lecteur est la lecture d'un flux RTSP. Le fonctionnement de cette fonctionnalité sera discuté ci-dessous.

La lecture de VLC RTSP dans le lecteur, ainsi que la possibilité de capturer le flux, sont des fonctions très populaires parmi les utilisateurs de systèmes de vidéosurveillance contenant des caméras IP.

Application

La plupart des modèles modernes de caméras de vidéosurveillance, ainsi que d'enregistreurs vidéo, prennent en charge le protocole décrit. En ajoutant à ces composants matériels un outil logiciel aussi fiable que Client VidéoLAN il est possible d'organiser un système de visualisation et de sauvegarde des informations vidéo sans impliquer des professionnels dans ce domaine.

Protocole de diffusion en temps réel est un protocole de streaming d'application qui décrit les commandes utilisées pour contrôler un flux vidéo. Les commandes peuvent demander à la caméra IP ou au serveur d'effectuer diverses actions, par exemple démarrer la diffusion d'un flux ou arrêter la transmission de données vidéo.

Dans les paramètres des caméras IP, il peut y avoir différentes désignations pour les options de streaming pour la transmission d'informations. RTSP, comme mentionné ci-dessus, est essentiellement un ensemble de commandes avec lesquelles le contrôle de flux est effectué. Abréviations UDP et RTP indiquer le mécanisme de transport utilisé dans la transmission vidéo.

Ouverture d'un flux RTSP dans VLC.

Pour que le flux de la caméra s'affiche dans la fenêtre du lecteur, une configuration préalable de VLC est requise. Suivez les instructions ci-dessous.


De cette manière simple, vous pouvez organiser la visualisation des caméras dans les systèmes de vidéosurveillance.

Matériel de Wikipédia - l'encyclopédie gratuite

Protocole de diffusion en temps réel(protocole de streaming en temps réel en anglais, en abrégé RTSP) - protocole d'application conçu pour être utilisé dans les systèmes fonctionnant avec des données multimédia (contenu multimédia, contenu multimédia) et vous permet de contrôler à distance le flux de données depuis le serveur, offrant la possibilité d'exécuter des commandes , comme le démarrage (démarrage), la pause (pause) et l'arrêt (arrêt) de la diffusion (lecture) de contenu multimédia, ainsi que l'accès temporel aux fichiers situés sur le serveur. Développé par l'IETF en 1998 et décrit dans la RFC 2326.

RTSP n'effectue pas de compression et ne définit pas non plus de méthode d'encapsulation multimédia ou de protocoles de transport. Les données en streaming elles-mêmes ne font pas partie du protocole RTSP. La plupart des serveurs RTSP utilisent à cet effet un protocole de transport standard en temps réel, qui transmet les données audio et vidéo.

Description

Le protocole est similaire en termes de syntaxe et d'opérations à HTTP. Il existe cependant un certain nombre de différences significatives entre les protocoles RTSP et HTTP. L’un des principaux est que dans le premier cas, le serveur et le client sont capables de générer des requêtes. Par exemple, un serveur vidéo peut envoyer une demande pour définir les options de lecture pour un flux vidéo spécifique. De plus, le protocole RTSP prévoit que la gestion de l'état ou des communications doit être effectuée par le serveur, alors que HTTP n'a rien à voir avec cela. Enfin, en RTSP, les données peuvent être transmises hors bande par d'autres protocoles, comme RTP, ce qui n'est pas possible dans le cas de HTTP.

Les messages RTSP sont envoyés séparément du flux multimédia. Pour eux, une connexion est utilisée sur un port spécial, par défaut le numéro 554. La requête au serveur est envoyée sous forme de texte au format : méthode<абсолютный_адрес> <версия_протокола>. Des champs de service supplémentaires peuvent être envoyés avec la demande (sur les nouvelles lignes de demande).

Méthodes protocolaires :

  • décrire - demande d'une description du contenu, par exemple, au format SDP ;
  • options - demande de méthodes prises en charge ;
  • play - demande de démarrage de la diffusion de contenu ;
  • pause - demande d'arrêt temporaire de la diffusion ;
  • enregistrement - demande d'enregistrement du contenu par le serveur ;
  • rediriger - rediriger vers un autre contenu ;
  • setup - demande d'installation d'un mécanisme de transport pour le contenu ;
  • annoncer - mettre à jour les données de description du contenu ;
  • get_parameter - demande les paramètres spécifiés au serveur ;
  • set_parameter - définition des paramètres du serveur ;
  • démontage - arrêtez le thread et libérez les ressources.

Exemple de requête : PLAY rtsp://example.com/video/test.mpg/streamid=0 RTSP/1.0

Le manuel fourni avec la caméra de vidéosurveillance ne contient pas toujours d'informations sur le protocole RTSP selon lequel l'appareil fonctionne. Cependant, il existe un grand nombre de cas où il est nécessaire d'utiliser ce protocole, il devient donc nécessaire de connaître son adresse.

Le propriétaire d'un système de vidéosurveillance peut avoir besoin de connaître le flux RTSP dans diverses situations :

  • pour connecter la caméra vidéo au serveur cloud ;
  • mettre en place la transmission des informations vidéo vers le site Internet ;
  • pour lire des vidéos dans le flux du lecteur sur différents appareils - téléphone mobile, ordinateur portable ou tablette.

A quoi sert le protocole RTSP ?

Le nom du protocole RTSP transfère le contrôle en mode en ligne. Ainsi, Real Time Streaming Protocol permet de gérer le streaming vidéo en ligne. Ce protocole est très souvent utilisé en vidéosurveillance IP, puisqu'il contient une description des commandes nécessaires.

Le protocole RTSP permet au propriétaire d'une caméra de sécurité de résoudre plusieurs fonctions importantes :

  • diffuser des données à l'aide de VLC ;
  • diffuser de la vidéo sur vos ressources et plateformes ;
  • configurer les enregistreurs vidéo NVR ;
  • connecter une caméra de vidéosurveillance au stockage virtuel ;
  • ajoutez une caméra vidéo aux applications mobiles basées sur Android ou iOS.

Dans le même temps, ouvrir un flux RTSP pour de nombreux utilisateurs de systèmes de vidéosurveillance n'est pas très simple et assez difficile.

Connaître l'adresse RTSP d'une caméra de vidéosurveillance

Il existe plusieurs options qui permettent de connaître le flux RTSP d'une caméra vidéo lorsqu'il n'est pas indiqué dans la notice correspondante.

Un grand nombre de caméras vidéo IP vendues en Russie contiennent des éléments chinois XMEye. Ces composants peuvent être vus même chez les fabricants nationaux d'appareils photo tels que Vesta, HiQ, SVplus, etc. Une caméra de modèles similaires aura le format de flux RTSP suivant :

rtsp://192.168.132.32:554/user=admin&password=12345&channel=1&stream=0.cgi

Cette adresse contient les éléments suivants :

  • 192.168.132.32 – adresse IP directe de l'appareil ;
  • 554 – port de protocole (par défaut il est numéroté 554, mais ce paramètre peut être modifié dans les paramètres de l'appareil) ;
  • admin – connexion à la caméra de vidéosurveillance ;
  • 12355 – mot de passe pour la connexion de l'utilisateur.

Dans le cas où la caméra vidéo IP contient d'autres composants, vous devrez utiliser l'une des deux options répertoriées ci-dessous.

La première option est la plus simplifiée. Pour connaître le flux RTSP d'une caméra de vidéosurveillance, vous devez contacter le fabricant ou le fournisseur de cet appareil. Sur demande, ils seront en mesure de fournir le format du flux requis, et même les vendeurs chinois pourront fournir ce service - depuis des usines en Chine ou depuis le site AliExpress.

La deuxième option consiste à utiliser un logiciel spécialisé. Cette méthode peut être utile dans les cas où le propriétaire du système de vidéosurveillance n'a pas la capacité ou le désir de demander une adresse de flux RTSP au fournisseur. Ensuite, vous pouvez le faire vous-même à l'aide d'un logiciel.

Tout d'abord, vous devrez télécharger un programme appelé One Device Manager. Après l'installation, ce logiciel vous aidera à connaître l'adresse RTSP.

En règle générale, la plupart des caméras vidéo prennent en charge le protocole ONVIF, il ne devrait donc y avoir aucune difficulté lors de l'utilisation du logiciel. Une nuance importante - pour que cela fonctionne correctement, vous devez connecter l'ordinateur portable ou l'ordinateur sur lequel le programme sera installé, ainsi que le périphérique IP lui-même, au même réseau local.

Vous pouvez trouver sur Internet des listes entières contenant les adresses des flux RTSP, car ces données dépendent de la marque de caméra de vidéosurveillance produite.

Comment ouvrir un flux RTSP dans une caméra vidéo ?

Lorsque l'adresse du flux RTSP est connue du propriétaire du système de suivi, il peut recevoir des informations vidéo de la caméra IP. Afin d'ouvrir une diffusion vidéo en streaming, vous devrez suivre la liste d'étapes suivante :

  • définissez une adresse IP permanente pour la caméra vidéo et commandez-la auprès de votre fournisseur d'accès Internet ;
  • transmettre les requêtes locales provenant de la caméra vidéo vers le port RTSP ;
  • passer un test de performance.

Une adresse statique peut être configurée à l'aide du programme IP Hunter, ou vous pouvez contacter votre fournisseur et lui demander de fournir une adresse IP permanente comme option supplémentaire. Après cela, vous devez configurer la redirection de port et transférer les ports vers le port RTSP à partir des ports locaux de la caméra vidéo. Ensuite, vous pouvez procéder à la vérification du flux.

Pour comprendre si le lien RTSP est fonctionnel, vous pouvez ouvrir le lecteur VLC et y vérifier. Pour ce faire, dans le menu principal du lecteur, vous devez cliquer sur la catégorie « Médias » et sélectionner « Ouvrir l'URL ». Ensuite, vous devrez vous rendre dans l'onglet « Réseau » de la fenêtre « Source » et préciser votre lien.

Il est évident qu'un nombre suffisant d'utilisateurs de services multimédias de type "streaming" souhaitent ou voudront utiliser des fonctions standard pour les systèmes de vidéo domestique et de DVD, telles que "pause", "avance/retour rapide", etc. Comme indiqué au paragraphe 1.2.2 de ce chapitre, la mise en œuvre de protocoles additionnels satisfera pleinement les besoins des utilisateurs les plus exigeants.

Au moment de la rédaction de cet article, le protocole le plus répandu et en développement rapide sur lequel les fonctions ci-dessus sont implémentées est le « protocole de streaming en temps réel » RTSP (Real-Time Streaming Protocol) défini dans .

La fonction principale du protocole RTSP est la possibilité de contrôler l'application « streaming ». Les fonctions de contrôle sont implémentées dans un produit logiciel qui reproduit les informations audio et/ou vidéo provenant du serveur, c'est-à-dire lecteur multimédia. La gestion s'effectue par échange de messages de contrôle entre le serveur et le client. Les messages de contrôle RTSP n'appartiennent pas aux connexions et flux de données entre le serveur et le client - ils utilisent une connexion ou un flux distinct avec le numéro de port 544, c'est pourquoi ce protocole est appelé « hors bande ». Une analogie pour les messages de contrôle RTSP peut être établie avec le canal de contrôle dans le protocole FTP. La spécification RTSP vous permet d'utiliser les protocoles TCP et UDP au niveau du transport pour vos paquets.

Sur la fig. La figure 1.27 montre un exemple d'interaction entre un client et un serveur utilisant le protocole RTSP. Nous considérerons le cas où l'utilisateur final côté client utilise un navigateur standard pour visualiser les informations hypertextes du réseau et, via celui-ci, lance la visualisation de vidéos en « streaming » avec audio. À la suite de la procédure d'initiation (physiquement, cela peut être simplement un clic de souris sur le lien hypertexte correspondant), le navigateur envoie une requête au serveur Web concernant les paramètres de l'objet (présentation) situé derrière le lien hypertexte (dans notre cas, il s'agit est une vidéo « streaming » avec son), en conséquence, le serveur Web envoie un « fichier de description de présentation », dont un exemple est illustré à la Fig. 1.26, L'interaction s'effectue via le protocole HTTP. Ce fichier peut contenir à la fois des liens vers plusieurs fichiers « streaming », et des directives pour les synchroniser. Chaque lien vers un fichier « stream » doit commencer par la méthode URL rtsp://.

Notez que les fichiers physiques de « streaming » peuvent se trouver sur un autre serveur, appelé « serveur multimédia ». Dans l'exemple considéré, les flux audio et vidéo doivent être lus en parallèle côté client en mode lip sync (synchronisation entre les flux audio et vidéo), et le lecteur multimédia a la possibilité de choisir dans quelle qualité l'audio doit être lu. - côté serveur média, deux flux audio de qualité différente sont disponibles : high ni fi et low lofi. Notez que l'exemple suppose le format SMIL bien connu pour les fichiers de flux audio. Ce format est utilisé pour assurer la synchronisation entre différents flux par de nombreux produits commerciaux.

Riz. 1.26. Exemple de métacode « fichier de description de présentation »

Après avoir reçu un « fichier de description de présentation » du serveur web côté client, le navigateur doit envoyer une requête pour charger dans la RAM un lecteur multimédia local capable de lire les flux audio et vidéo du format spécifié. De plus, comme le montre la Fig. 1.27, le lecteur multimédia côté client et le serveur multimédia échangent une série de messages RTSP. Le lecteur multimédia envoie au serveur multimédia un message de requête pour établir une connexion RTSP RTSP SETUP, dont la réponse est un message indiquant la prise en charge de cette connexion RTSP OK.

Le message RTSP SETUP contient des informations sur le numéro de port client où les paquets de fichiers « flux » doivent être adressés. Le lecteur multimédia envoie ensuite une requête RTSP PLAY pour commencer la transmission du fichier « streaming », soit, dans notre cas, un audio lofi de faible qualité. Après avoir reçu cette demande, le serveur multimédia commence à envoyer des paquets contenant les informations audio requises au lecteur multimédia situé côté client.

Suivant sur la fig. La figure 1.27 montre un exemple de mise en œuvre de la fonction « pause » - pour suspendre l'envoi de paquets audio « streaming », le lecteur multimédia doit envoyer un message RTSP PAUSE et le serveur multimédia doit répondre par un message RTSP OK. Si l'utilisateur décide d'arrêter l'écoute/le visionnage, la destruction de la connexion RTSP doit être initiée, pour laquelle le lecteur multimédia envoie un message RTSP TEARDOWN au serveur multimédia, et le serveur multimédia doit répondre par un message RTSP OK.

Le protocole RTSP n'inclut pas les fonctions suivantes :

Détermination de schémas et d'algorithmes de compression pour l'audio et la vidéo ;

Déterminer comment les informations audio et vidéo sont encapsulées dans des paquets à transmettre sur le réseau ; cette fonctionnalité peut être implémentée dans le protocole RTP ou dans le « protocole d'entreprise » de l'éditeur du logiciel d'application.

Par exemple, dans les implémentations logicielles du serveur multimédia et du client RealNetworks, le protocole RTSP est utilisé pour échanger des informations de service, et les informations audio et vidéo sont encapsulées via le protocole RTP ;

Déterminer quel protocole de transport est utilisé pour transférer les paquets de bout en bout - UDP et TCP peuvent être utilisés ;

Limitation de la façon dont les flux audio et vidéo sont mis en mémoire tampon côté client : la lecture peut être démarrée immédiatement après la réception du premier paquet, après un certain temps afin d'effectuer une mise en mémoire tampon pour lutter contre la dispersion du retard des paquets, et après que toutes les informations ont été enregistrées sur le client. côté.

Les informations les plus récentes et les plus complètes sur le protocole RTSP sont disponibles sur Internet à l'adresse

Protocole RTSP

RTSP (Real Time Streaming Protocol, ou, en russe, protocole de streaming en temps réel) est un protocole d'application qui décrit les commandes permettant de contrôler un flux vidéo. Grâce à ces commandes, nous pouvons « ordonner » à la caméra ou au serveur, par exemple, de commencer à diffuser un flux vidéo. Un exemple de demande de démarrage de la lecture ressemble à ceci : PLAY rtsp://192.168.0.200/h264 RTSP/1.0

Autrement dit, RTSP est simplement un ensemble de commandes permettant de contrôler un flux vidéo. Faisons une expérience. Pour ce faire, nous avons besoin d'une caméra IP prenant en charge le protocole RTSP et son adresse RTSP. Cette adresse ressemble à ceci rtsp:// /mpeg. Vous pouvez le trouver dans le manuel de l'appareil photo ou dans la description de l'API. Pour plus de commodité, nous répertorierons dans le tableau les adresses RTSP d’un certain nombre de caméras populaires. Après avoir découvert l'adresse RTSP de la caméra, nous ouvrons un lecteur standard prenant en charge RTSP. Il peut s'agir de l'un des programmes suivants : Windows Media Player, QuickTime, Media Player Classic, VLC media player, RealPlayer, MPlayer. Nous avons choisi QuickTime. Ouvrez le menu « Fichier > Ouvrir l'URL » et entrez notre adresse RTSP. QuickTime se connectera ensuite à la caméra et diffusera la vidéo en direct. Les appareils d'enregistrement fonctionnant dans les systèmes de vidéosurveillance IP reçoivent la vidéo des caméras soit en utilisant le protocole HTTP - c'est-à-dire de la même manière que nous téléchargeons des images JPEG à partir de sites Web, soit sous forme de flux via RTSP - c'est-à-dire de la même manière que nous l'avons reçu en utilisant la norme joueur dans le dernier exemple. Dans les paramètres des caméras IP, l'option de streaming pour la transmission de données peut être désignée comme RTSP sur TCP, RTSP sur UDP ou simplement RTP. Ainsi, RTSP est un ensemble de commandes pour le contrôle de flux. Mais que signifient les autres abréviations : TCP, UDP, RTP ? TCP, UDP et RTP sont des mécanismes de transport (protocoles) qui transmettent réellement la vidéo.

Protocole TCP

Disons que nous avons choisi la méthode RSTP sur TCP et que nous souhaitons commencer à transmettre un flux vidéo. Que va-t-il se passer au niveau des mécanismes de transport ? Tout d'abord, à l'aide de plusieurs commandes, une connexion sera établie entre l'expéditeur et le destinataire. Après cela, le transfert des données vidéo commencera. Dans le même temps, les mécanismes TCP

veillera à ce que toutes les données parviennent au destinataire sans modification et dans l’ordre requis. TCP régulera également le taux de transmission afin que l'émetteur n'envoie pas plus de données que le récepteur ne peut en traiter, par exemple :

UDP est une alternative au protocole de transport TCP. Contrairement à TCP, UDP n’établit pas de connexion préliminaire, mais commence simplement à transmettre des données. UDP ne garantit pas que les données sont reçues et ne les duplique pas si des pièces sont manquantes ou sont arrivées avec des erreurs. UDP moins

plus fiable que TCP. Mais d'un autre côté, il permet une transmission plus rapide des flux en raison de l'absence de mécanisme de retransmission des paquets perdus. La différence entre les protocoles TCP et UTP peut être illustrée par l'exemple suivant. Deux amis se rencontrent. Option TCP :

Ivan : « Bonjour ! Devons-nous discuter? (connexion établie)
Semyon : « Bonjour ! Allons!" (connexion établie)
Ivan : « J'étais au magasin hier. Est-ce que tu comprends? (transfert de données)
Semyon : « Oui ! (confirmation)
Ivan : « Là-bas, du nouveau matériel a été déchargé. Est-ce que tu comprends? (transfert de données)
Semyon : « Non » (confirmation)
Ivan : « Là-bas, du nouveau matériel a été déchargé. Est-ce que tu comprends? (retransmission)
Semyon : « Oui ! (confirmation)
Ivan : « Demain, j'y serai de nouveau. Est-ce que tu comprends? (transfert de données)
Semyon : « Oui ! (confirmation)
Option UDP
Ivan : « Bonjour ! J'étais au magasin hier" (transfert de données)
Ivan : « De nouveaux équipements y ont été déchargés » (transfert de données)
Ivan : « Demain, j'y serai à nouveau » (transfert de données)
Ivan : « Je peux trouver les prix pour vous » (transfert de données)
Ivan : « Ils ont promis des réductions pour les bons volumes » (transfert de données)
Ivan : « Si tu veux, appelle, nous y irons ensemble » (transfert de données)
Semyon : « Oui, j'appelle » (transfert de données)

Vous pouvez également voir la différence entre les protocoles en faisant l'expérience suivante : essayez de régler la caméra en mode RTSP sur TCP et en agitant votre main devant l'objectif - vous verrez un retard sur l'écran du moniteur. Exécutez maintenant le même test en mode RTSP sur UDP. Le retard sera moindre. La latence est affectée par plusieurs facteurs : le format de compression, la puissance de l'ordinateur, le protocole de transmission et les fonctionnalités du logiciel impliqué dans le décodage vidéo.

RTP (Real-time Transport Protocol), ou en russe protocole de transport en temps réel. Ce protocole est spécialement créé pour transmettre du trafic en temps réel. Il vous permet de surveiller la synchronisation des données transmises, d'ajuster la séquence de livraison des paquets et est donc plus adapté que d'autres à la transmission de données vidéo et audio. En général, il est préférable d'utiliser soit RTP, soit UDP pour transmettre un flux vidéo. Travailler via TCP n'est justifié que si nous devons travailler avec des réseaux problématiques, puisque le protocole TCP sera capable de corriger les erreurs et les échecs qui surviennent lors du transfert de données.



Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :