RTSP streaming de Web App (à l'Aide de VLC 2.0)
Je suis en train de travailler sur une application web qui doit afficher la vidéo en streaming d'un bureau à distance. Nous avons déjà mis en place cette aide de ffmpeg/ffserver et flowplayer, le transcodage RTSP .format flv, mais il est très fragile et mes recherches m'a conduit à l'utilisation de la ligne de commande version de VLC.
Ma question est:
Est-il un moyen de tuyau transcodé RTSP (comme OGG, RTP, ou un autre format) dans un navigateur, tout en évitant de compter sur flash?
Je sais que la balise n'a pas soutenu la vidéo en streaming depuis un certain temps, mais je vais avoir du mal à trouver une documentation cohérente. Certains disent que vous pouvez pipe RTP directement dans le, certains disent que vous ne serez jamais en mesure de diffuser devant la balise.
Aussi, je suis en train de tester tout cela sur mon serveur Apache local.
Je suis en supposant que le transcodage va ressembler à quelque chose le long des lignes de:
- vlc -vvv rtsp://xx.xx.xx.xx:554/vga.sdp --no-sout-audio --sout '#standard{access=http mux=ogg,dst=http://localhost/test_ogg.php}'
OU
- vlc -vvv rtsp://xx.xx.xx.xx:554/vga.sdp --no-sout-audio --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=400}:duplicate{dst=display,dst=rtp{mux=ts,dst=xxx.xxx.xx.xx,port=xxxx}}'
Merci
Mason
OriginalL'auteur MasonWinsauer | 2012-06-11
Vous devez vous connecter pour publier un commentaire.
Ok, donc la solution que je cherchais est venu sous la forme de CVLC 2.0.1 [de la Console uniquement VLC], mais aussi profité de l'multiplexage des capacités de ffmpeg.
Ce one-liner convertit le flux RTSP en FLV et il pousse à mon localhost serveur sur un port spécifié.
Les avantages de ce fait de ne pas avoir à modifier le ffserver.fichier conf à chaque fois que le cours d'eau change la résolution, le débit binaire, taux d'armature, etc. - Seulement pour redémarrer cette ligne de sorte qu'il peut re-capturer le flux. Aussi, si le flux a des spécifications appropriées, vous n'avez pas besoin de la
vb=
etfps=
propriétés; je tiens seulement à les utiliser si j'avais besoin pour réguler le flux de données pour l'amour de la page web.--network-caching
est une autre fonction que j'ai pris en considération, bien que très utile dans certaines situations, inutiles dans mon cas.Le Lecteur de code ressemble à quelque chose comme:
Espère que cela aide tout de téléspectateurs en cours d'exécution dans des questions similaires!
Mason
http{mime=video/x-flv,mux=ffmpeg{mux=flv},dst=127.0.0.1:8090/device_1.flv}
ne cvlc créer le serveur? qu'advient-il si vous avez plusieurs flux?Pour autant que je comprends, c'est un one-liner qui transcode à la volée sans avoir besoin d'un serveur. Il PEUT créer un serveur virtuel dans le fond, mais je n'ai pas vu de preuve. Autant que de multiples flux aller, je pense que vous devez avoir une instance de cette course, pour chacun, dans un autre shell.
OriginalL'auteur MasonWinsauer