Comment lire des flux RTSP dans Ubuntu?

9

Plus précisément, la question est de savoir comment lire les flux rtsp à partir d'adresses qui ont un point d'interrogation.

IE: rtsp: //some.server.name: 554 / video_file.wmv? Authstring = sOm3StrIN2 == & param = 3

J'ai essayé divers lecteurs multimédias, mais je n'ai pas pu diffuser le fichier. Je sais que ce n'est pas un problème de serveur car je pourrais diffuser une vidéo de test sur ce serveur qui ne nécessite pas d'authentification.
J'ai été surpris que vlc ne puisse pas gérer de telles URL, j'ai donc essayé mplayer mais il ne pouvait pas non plus lire les streams.
mpv a été le premier joueur sur lequel j'ai réussi à lire la vidéo de test que j'ai mentionnée ci-dessus, mais je n'ai pas pu diffuser les URL de la forme que j'ai écrite ci-dessus. Avec mpv, j'ai essayé cette ligne de commande:

mpv --http-header-fields='authstring:sOm3StrIN2==','param:3' \rtsp://some.server.name:554/video_file.wmv

et a également essayé d'ajouter l' --rtsp-transport=lavf|tcp|udp|httpoption, mais rien n'a fonctionné.

Malheureusement, je sais que ces liens (comme écrit ci-dessus) fonctionnent avec le lecteur Windows Media, mais je ne veux pas utiliser Wine ou aller sur Windows (j'ai duel boot) juste pour regarder un flux.

yaron160
la source

Réponses:

6

Avez-vous essayé de suivre ces instructions de la documentation de Videolan ( faites défiler jusqu'à la section Vidéo à la demande )?

Il serait utile de fournir une URL de test rtsp que vous souhaitez diffuser.

Modifier : les instructions du lien ci-dessus sont:

Lancez d'abord le vlc:

vlc --ttl 12 -vvv --color -I telnet --telnet-password videolan --rtsp-host 0.0.0.0:5554

où:

  • 12 est la valeur du TTL (Time To Live) de vos paquets IP (ce qui signifie que le flux pourra traverser 11 routeurs).

  • telnet lance l'interface telnet du vlc.

  • videolan est le mot de passe pour se connecter à l'interface telnet.

  • 0.0.0.0 est l'adresse hôte.

  • 5554 est le port sur lequel vous diffusez.

Connectez-vous ensuite à l'interface telnet vlc et créez l' objet vod :

new Test vod enabled

setup Test input my_video.mpg

Vous pouvez accéder au flux avec:

vlc rtsp://server:5554/Test

serveur est l'adresse du serveur de streaming (IP ou DNS)

elgicse
la source
1
Je ne sais pas comment cela devrait fonctionner. Il me semble que cela fera de moi un serveur rtsp, mais je dois trouver un client qui puisse communiquer avec un serveur qui attend certains paramètres (pour l'authentification)
yaron160
3

Vous pouvez essayer Mplayer.

sudo apt-get install mplayer

Passez l' rtsp://URL à mplayer sur sa ligne de commande. Il existe des serveurs qui servent des fichiers contenant une rtsp://URL sur HTTP, mais qui servent ensuite du contenu dans le protocole MMS. C'est pour la compatibilité avec certains lecteurs Microsoft plus anciens (ma mémoire est floue sur les détails), mais cela brise les clients qui croient que RTSP est RTSP et MMS est MMS. Si vous obtenez une rtsp://URL qui ne fonctionne pas du tout, essayez de remplacer le schéma par mms://.

Anandu M Das
la source
essayé votre suggestion mais cela n'a pas fonctionné.
yaron160