Forum Linux.général Lancer steaming /dev/videoO avec vlc

Posté par  .
Étiquettes : aucune
0
18
avr.
2008
Bonjour j'essai de lancer ma web cam sur le réseau, mais ca ne marche pas en ligne de commande comme celle c-dessous.

vlc v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp" :v4l-norm=3 :v4l-frequency=-1 :sout=#duplicate{dst=192.168.0.16:1234}}

J'arrive a lancer avec l'interface graphique, mais je n'arrive pas non plus à récuperer sur un autre poste. en faisant
mplayer http://192.168.0.16:1234
hors j'arrive a recupérer avec cette commande le flux d'un film vidéo.
Ca fait 2 sujet a traiter, j'y crois encore !
Merci de votre aide, car je trouve ca super interressant.
  • # tout simplement

    Posté par  . Évalué à 3.

    parce que ton

    vlc v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp" :v4l-norm=3 :v4l-frequency=-1 :sout=#duplicate{dst=192.168.0.16:1234}}


    lui dit d'envoyer le flux sur le PC 192.168.0.16

    il te faut donc soit cibler le poste sur lequel tu veux envoyer

    ex: ton stream se fait sur 192.168.10.16
    et tu veux ecouter sur 192.168.0.17
    alors tu mettras dst=192.168.0.17

    en extrapolant, si tu veux "arroser" tout ton reseau, tu mettrais
    dst=192.168.0.255

    eventuellement en ajoutant un parametre pour preciser que c'est en udp plutot qu'en tcp.

    enfin sur le client, il te reste alors simplement (et dans les 2 cas) à ecoutere ce qui arrive sur le port 1234 de la machine localhost
    • [^] # Re: tout simplement

      Posté par  . Évalué à 0.

      vlc v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp" --sout '#transcode{vcodec=theo,vb=300,acodec=vorb,ab=64}:duplicate{dst=display,dst=std{access=http,mux=ogg,dst=:1234}}'

      et aussi

      vlc v4l:/dev/video0:size=640x480:adev=/dev/dsp --sout '#transcode{vcodec=theo,vb=300,acodec=vorb,ab=64}:duplicate{dst=display,dst=std{access=http,mux=ogg,dst=:1234}}'

      ajouter -vvv après vlc pour le le débogage

      en cas de refus de diffuser changer les encodeurs theora et vorbis

      la ligne indique le capturage,l'encodage et le streamage
      /dev/video0 est le péripherique video
      /dev/dsp est le péripherique audio
      vcodec=theo theora est l'encodeur video
      vb=300 est le debit video
      acodec=vorb vorbis est l'encodeur audio
      ab=64 est le debit audio
      acces=http est le transport
      mux=ogg est le conteneur de mixage audio video
      dst=l'adresse et le port de diffusion

      a noter qu'il y a un espace entre:
      vlc et v4L
      dsp et --sout
      --sout et '#transcode

      pour le lecteur totem-xine dans son menu film/ouvrir un emplacement indiquer http://192.168.0.1:1234
      votre reception apparait avec un léger retard sur l'emission

      si vous choisissez un grand format vidéo,c'est à dire 640x480 ou plus,votre coprocesseur doit ètre capable d'encoder
      le flux en direct,car il y aura alors chaque seconde pluss de pixels à encoder


      c'est vrai on peut aussi utiliser une adresse de groupe udp
      mais seulement en réseau local
      nos routeurs ne routent pas les paquets udp

      il y a aussi flumotion

      robertix
      • [^] # Re: tout simplement

        Posté par  . Évalué à 1.

        vlc v4l:/dev/video0:size=640x480:adev=/dev/dsp --sout '#transcode{vcodec=theo,vb=300,acodec=vorb,ab=64}:duplicate{dst=display,dst=std{access=http,mux=ogg,dst=:1234}}'

        l'option transcode permet de reencoder le flux dans un format plus facilement diffusable sur le reseau
        • [^] # Re: tout simplement

          Posté par  . Évalué à 0.

          a noter:

          entre chaque utilisation de périphérique

          il y a un temps de réinitialisation à respecter

          selon le hard et le soft

          de quelques secondes à quelques dizaines de secondes

          robertix
  • # ca avance

    Posté par  . Évalué à 1.

    vlc v4l:/dev/video0:size=640x480:adev=/dev/dsp --sout '#transcode{vcodec=theo,vb=300,acodec=vorb,ab=64}:duplicate{dst=display,dst=std{access=http,mux=ogg,dst=192.168.0.16:1234}}'

    Trop bien ca marche en utilisant 192.168.0.16 adresse ip serveur
    je récupére vlc http://192.168.0.16:1234 sur le poste client
    Mais je ne put faire beaucoup d'essai tout de meme j'ai un message d'erreur apres 1 ou 2 lancement de test un reboot machine est neccessaire.
    Erreur de segmentation (core dumped)
    Alors j'approche quand meme.
    • [^] # Re: ca avance

      Posté par  . Évalué à 0.

      • [^] # Re: ca avance

        Posté par  . Évalué à 1.

        C'est bien ca, un rappel memoire au cas alzheimer arriverait plus vite que prévu !
        "pour le multicasting en udp c'est un seul flux selon les routeurs du réseau informatique"
        donc une ip serveur 192.168.0.16
        avec un flux vidéo 1234
        puis un autre 1235
        etc ...
        c'est ca ?
        • [^] # Re: ca avance

          Posté par  . Évalué à 0.

          en multidiffusion multicast
          il faut choisir une adresse de groupe multicast udp

          http://www.crir.univ-avignon.fr/visio/pfe/protocoles/protoco(...)

          les postes clients se connectent sur cette adresse et sur le port
          choisi comme 1234

          c'est la méthode pour la télé sur adsl
          un seul flux montant

          udp://@233.33.33.33:1234

          il faut avoir un client fait pour cela


          robertix
          • [^] # Re: ca avance pas si vite

            Posté par  . Évalué à 1.

            J'ai trouvé un tuto vlc, mais je n'arrive pas à transmettre les flux avec la methode ci-dessous
            http://www.pervasive-network.org/SPIP/La-TNT-Television-Nume(...)

            vlc -vvv --color --ttl=12
            --ts-ed-id-pid
            --programs 257,273,259,260
            dvb-t:adapter=0:frequency=546000000:bandwidth=8
            --sout='#duplicate{
            dst=standard{access=udp,mux=ts,url=239.20.30.40:3002,sap,name="France2",group="TNT"},select="program=257",
            dst=standard{access=udp,mux=ts,url=239.20.30.40:3003,sap,name="France3",group="TNT"},select="program=273",
            dst=standard{access=udp,mux=ts,url=239.20.30.40:3004,sap,name="France4",group="TNT"},select="program=259",
            dst=standard{access=udp,mux=ts,url=239.20.30.40:3005,sap,name="France5",group="TNT"},select="program=260"
            }'

            Je ne sais qu'elle ip mettre 239.20.30.40 c'est exemple ou dois-je en utiliser une autre, celle du server est 192.168.0.16 j'ai essayer en changeant mais c'est pareil. message d'erreur
            stream chain failed for `duplicate{
            dst=standard{access=udp,mux=ts,url=192.168.0.16:3002,sap,name="France2",group="TNT"},select="program=257",
            dst=standard{access=udp,mux=ts,url=192.168.0.16:3003,sap,name="France3",group="TNT"},select="program=273",
            dst=standard{access=udp,mux=ts,url=192.168.0.16:3004,sap,name="France4",group="TNT"},select="program=259",
            dst=standard{access=udp,mux=ts,url=192.168.0.16:3005,sap,name="France5",group="TNT"},select="program=260"}

            dans cet exemple je stream 4 chaine de la tnt, enfin j'essai

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.