Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#16 2013-01-07 14:59:13 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

Olm-e
membre
Lieu: Bruxelles
Date d'inscription: 2011-11-15
Messages: 84
Site web

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau



pour répondre au titre du post :

dans pdp il y a pdp_netsend qui permet d'envoyer des paquets non compressés... ça fonctionne bien, avec une latence d'une image constatée sur mon réseau local.

pour répondre à la première question du post :

pour une webcam, il y a aussi la solution mjpeg-streamer ( http://sourceforge.net/projects/mjpg-streamer/ )
ça permet de générer un flux mjpg qui ne consomme pratiquement pas de CPU (c'est la webcam qui encode) qui est lisible sur une adresse http, soit dans un browser soit dans vlc...
il est aussi scriptable dans un sens, et il y a une petite lib javascript pour la lecture voire l'analyse de mouvement des flux dans un navigateur...
à vrai dire je n'ai pas encore eut l'occasion de tenter d'inclure un stream mjpg de la sorte dans un patch PD mais nous ne manqueront pas de tester ça au prochain pd circle bxl wink
(je l'ai fait dans le blender game engine par contre il y a un bail)


gstreamer est très puissant, mais assez mal documenté.
"il faudrait" faire une bonne page bien complète avec les ressources disponibles et un tas de "recettes" toutes faites...
j'en ai quelques une, mais je crois pas être le seul wink

pour les archives, je colle ici une ligne gstreamer pour créer un flux ogg/theora (sans son) vers un serveur icecast (depuis mon RasPi) :

gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-yuv,width=320,height=240 ! ffmpegcolorspace ! theoraenc quality=1 ! oggmux !  shout2send ip=yourip port=8000 password=password mount=/test.ogg

Hors ligne

 

#17 2013-01-07 16:08:37 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau


La route est longue mais la voie est libre

Hors ligne

 

#18 2013-01-07 17:35:44 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

sakramh
membre
Lieu: clichy-sous-bois
Date d'inscription: 2008-12-02
Messages: 829
Site web

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau



citation :

gstreamer est très puissant, mais assez mal documenté.
"il faudrait" faire une bonne page bien complète avec les ressources disponibles et un tas de "recettes" toutes faites...

on avance, on avance ....smile  c'est vrai qu'une page ressources ou genre ... parce que la doc en effet ....
y'en a marre de bourrer l'historique du terminal avec des tas de lignes qui plantent yikes
un gros plus de Gstreamer est sa relative légèreté .
pour les paresseux de la ligne de commande y'a çà  http://codelab.fr/3893 mais çà reste du graphe façon PD et la commande Gstreamer n'est pas "révélée" .

Dernière modification par sakramh (2013-01-07 17:44:44)


le code est l'alchimie de l'âge du silicium

Hors ligne

 

#19 2013-01-07 21:15:54 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

rep
modérateur
Lieu: Toulouse
Date d'inscription: 2008-02-27
Messages: 1444
Site web

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau



<hs>
+1 pour un tuto simple et efficace gstreamer
je suis preneur smile
</hs>

Hors ligne

 

#20 2013-03-12 13:11:55 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

acryl
membre
Date d'inscription: 2012-08-27
Messages: 31

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau



Bonjour a tous,

désolé je séterre un peu le post, mais j'ai trouvé une solution a mon probleme grace a la raspberry pi, et ayant un peu galéré je poste la solution que j'ai trouvé pour le moment, au cas ou ca en interresserait d'autre.

Du coup je suis parti sur l'utilisation de gstreamer avec une raspberrypi en wifi qui capte le flux dune webcam, et envoie le tout a mon eepc qui recupere le flux gstreamer et le fait passer dans un v4l2loopback, de facon a etre exploitable par puredata.

Je streame donc du 320*240  (ca me suffit pour ce que je veux faire, mais je pense qu'il doit y avoir moyen de faire un peu mieux), avec assez peu de latence (difficile a mesurer, mais je pense que c'est entre 0.5 et 1 seconde)

Pour Gstreamer, j'ai repris certains exemple du blog de nico largo www.blog.nicolargo.com, en les modifiant un peu pour utiliser le v4léloopback.

Sur la machine cliente (a lancer en premier) :
gst-launch-0.10 -v udpsrc port=1234 ! theoradec ! v4l2sink device=/dev/video1
Sur la pi
gst-launch -v v4l2src device=/dev/video0 ! ffmpegcolorspace ! videoscale method=1 ! video/xraw-yuv,width=320,height=240
! theoraenc bitrate=150 ! udpsink host=<IP_client> port=1234

Ce qui m'a surtout pris beaucoup de temps, c'est de comprendre pourquoi l'image recuperer par V4l2loopback était déformé.

Le probleme venait sans doute de la version de v4l2loopback (3.0) qui était packagé pour ma distribution ubuntu hardy.
Apres avoir compile la derniere version (6.0) du module v4l2loopback depuis le github https://github.com/umlaeute/v4l2loopback, tout marche bien.  (attention cependant, ce module ne peut pas etre compilé sur des noyaux inferiieur a 2.6).

il suffit d'un modprobe v4l2loopback pour charger le module v4l2loopback dans le noyau, ce qui crée la device virtuelle.


En esperant que ca puisse servir a quelqu'un.....

Hors ligne

 

#21 2013-03-13 23:54:22 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

benjamin
membre
Lieu: Orléans
Date d'inscription: 2008-03-18
Messages: 168
Site web

Re: envoyer le flux d'un pix_video a une autre instance de PD via réseau



Hello,
joli solution !
Pour en rajouter, possibilité de lire un flux gstreamer avec le plug in vlc pour [pix_video] directement dans gem ou avec pdgst
Il faut compiler pdgst en fonction de sa version de Gem, pour le plug vlc par sur que de la compil de Gem soit nécessaire
++b

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024