Annonce

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


#1 2012-12-30 12:35:45 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

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



Bonjour,

depuis peu de temps, je suis l'heureux propriétaire d'une pi et je voudrai m'en servir pour capter de la video via une webcem et envoyer le tout par reseau a une autre instance de PD.

je pensai betement utiliser netsend, mais pix_video n'envoye que des pointers gem, qui sont donc inexploitable sur une autre instance de PD.

Je ne vois pas d'autre solutions a part peut etre stremer la video de la pi, recuperer le flux et en faire une cam virtuelle sur mon pc, mais ca me parait etre une usine a gaz...

Quelqu'un a deja reussi a envoyer un pix_video entre differentes instances de PD?


merci d'avance

Hors ligne

 

#2 2012-12-30 13:45:57 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



acryl a écrit:

Quelqu'un a deja reussi a envoyer un pix_video entre differentes instances de PD?

Salut,
- si les 2 instances puredata sont sur la même machine regarde les objets [pix_share_read] et [pix_share_write]
- si ce sont 2 machines séparées mais en réseau, dans ce dernier cas effectivement oui il est nécessaire de streamer, je vois pas comment ça pourrait être autrement (mais peut être me trompe je). Bref, dans ce cas, vlc sur le pi et le plugin Gem : libVLC compilé depuis un Gem récent devrait pouvoir t'aider... Quoi que je suis pas sur et certains que le pi soit capable de streamer convenablement et sans lag, c'est à tester.

Hors ligne

 

#3 2012-12-30 14:21:01 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

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



citation :

Quoi que je suis pas sur et certains que le pi soit capable de streamer convenablement et sans lag, c'est à tester

Quelqu'un que chez nous a streamé (avec Gstreamer, je crois) à partir d'une pi via Wifi et le résultat a été concluant...
Mais je n'ai pas la def de l'image en tête...
Certainement pas de la HD... roll

Dernière modification par Olivier (2012-12-30 14:21:29)


L'Amour au Peuple !

Hors ligne

 

#4 2012-12-30 17:16:47 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



Merci a vous deux pour les reponses,

Ca m'interresse bien d'en savoir un pleu plus sur le plugin Gstreamer pour gem.

Je suis obligé de recompiler gem pour integrer le support du plugin ou est-ce qu'on peut l'integrer via une librairie ou via puredata import (comme une libraire de patch type cyclone)?

Olivier, ce n'est pas de la HD que je cherche a faire, au max du 640*480, mais si il ya deja eu des test de faits sur pi, je veux bien en savoir un peu plus sur le comment.

En fait, dans l'idée que j'en avait, je fait tourner un patch sur la pi qui fait une analyse de la cam, puis me transmet des notes midi sur mon autre pc, mais je voudrai pouvoir egalment recuperer le flux video pour l'afficher. Je le fait pour le moment en faisant un ssh -X sur la pi et en creant une fentre gem, mais le X forwarding en ssh avec un flux de Webcam provoquent beaucoup de latence et fait ramer mon patch. Si je desactive l'affichage de la fenetre gem, ca va deja beaucoup mieux.

Du coup, est-ce que ca vous poarrait coherent de faire a la fois du streaming et du traitement sur la pi, puis de recuperer le flux video streamer sur un autre pc?

merci en tout cas pour la rapidité des reponses, codelab, mieux qu'un support hotline!!!!

Hors ligne

 

#5 2012-12-31 16:32:45 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



Salut,

tu crées un goulot d'étranglement car la connexion est nécessairement cryptée par SSH. Et le pi n'a pas vraiment un processeur taillé pour.

Tu pourrais essayer de faire un partage de fichiers non cryptés dans un répertoire conservé uniquement en mémoire (comme /run/shm) dans lequel tu écris un pseudo pipe qui est accédé par mplayer par exemple depuis la machine distante.

Pour le pseudopipe, je ne sais pas si Gem permet de le faire, mais pdp oui. (cf [pdp_rawout] et [pdp_rawin]). mrecorder doit le faire , tout comme vlc.

Dernière modification par oli44 (2012-12-31 16:35:21)


La route est longue mais la voie est libre

Hors ligne

 

#6 2012-12-31 17:01:13 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



Oui à savoir aussi que ce n'est pas le serveur X du pi qui s'occupe de créer ta fenêtre Gem mais bien celui du poste depuis lequel tu as lancé ton client ssh -X (le pi n'as de serveur X accéléré OpenGL donc n'est pas foutu de créer la fenêtre sdl/opengl...)
A mon avis le mieux est encore de streamer ton flux webcam depuis le pi vers une autre machine, autre machine qui sera en mesure de traiter le signal comme il se doit (le pi c'est rigolo mais comme machine de guerre pour du traitement vidéo on a quand même vu mieux)

Hors ligne

 

#7 2012-12-31 17:32:43 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 :

Tu pourrais essayer de faire un partage de fichiers non cryptés dans un répertoire conservé uniquement en mémoire (comme /run/shm) dans lequel tu écris un pseudo pipe

cela me semble en effet la bonne solution .
c'est presque ce que je fait : créer un fichier yuv4mpeg dans un partage (nfs, samba,peu importe)
c'est aussi une des techniques employées dans le soft "Lives" .
ce à quoi je me suis par contre tjs heurté : le fichier se limite à 2 gigas (et heureusement) et donc la machine client va repartir au début arrivée au bout .
Je n'ai jamais réussi à faire tourner un effacement à mesure du lu même en ramdisk (tmpfs) .

Dernière modification par sakramh (2012-12-31 17:33:37)


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

Hors ligne

 

#8 2012-12-31 18:57:33 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

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



En ce qui me concerne, je n'ai pas été très clair... big_smile
Le test a bien été fait à partir d'une pi, mais pas via Pd... uniquement avec du Gstreamer pur... smile

Je vais tenter d'en savoir un peu plus auprès de la personne qui l'a effectuée...
À suivre...


L'Amour au Peuple !

Hors ligne

 

#9 2013-01-01 12:01:38 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



un tas de pistes et un bon tuto sur ce blog au sujet de gstreamer : http://blog.nicolargo.com/gstreamer


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

Hors ligne

 

#10 2013-01-01 19:07:06 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



Au fait, dans la doc de [pix_share_write] , il est mis que seule les machines 64bits le supportent. Est-ce que qq avec une machine 32 bits peut confirmer que ça ne marche pas?


La route est longue mais la voie est libre

Hors ligne

 

#11 2013-01-01 20:09:22 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



Mmmm c'est pas exactement ça, est indiqué juste que ça ne fonctionne pas sous windows32 :

aidePd a écrit:

WARNING: [pix_share_write] and [pix_share_read] are only available on platforms that support shared memory (no w32 for now!)

Hors ligne

 

#12 2013-01-03 10:52:05 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



yep j'avais zappé le w , le w qui veut dire Windows


La route est longue mais la voie est libre

Hors ligne

 

#13 2013-01-03 11:35:10 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,

woua, je pensais pas qu'il y aurait autant de bonnes idées et de pistes sur ce problemes, merci a tout le monde.

En ce qui me concerne pour le moment j'en suis a essayer de streamer via pur gstreamer et effectivement ca fonctionne, cependant il ya beaucoup de latence alors que je suis en 320*240 a 30Ips, donc surement un peu de reglage a faire de ce coté la. (en meme temps je suis aussi en wifi et c'est surement pas le mieux)

j'ai vu aussi dans le lien sur les tuto gstreamer qu'on pouvait envoyer l output de gstreamer a un v4l2loopback et ainsi créé une cam virtuelle qui recupere le flux de stream (output de gstreamer en v4l2sink) , et qui doit donc etre exploitable dans Puredata.


Affaire a suivre donc, mais avec toutes ces pistes, je ne risque plus d'etre a court de solutions possibles... smile

Par contre, gstreamer faut rentrer dedans, au debut, ca fait un peu peur quand meme smile

Hors ligne

 

#14 2013-01-03 11:58:25 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 :

Par contre, gstreamer faut rentrer dedans, au debut, ca fait un peu peur quand meme

avec la version 0.8 de gstreamer il y avait un GUI pour créer/éditer les "pipes" .
çà n'a pas été reconduit avec la version actuelle (0.10), dommage (et c'est pas compat.) .
Les "vloopback" sont un super outil aussi pour tuyauter de la video d'une appli à une autre .
Edit: gstreamer est passé en version 1.x (remplace les précédentes mais comme pour les 0.10 et 0.8 peut être installée en // sans conflit ) .

Dernière modification par sakramh (2013-01-03 12:33:06)


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

Hors ligne

 

#15 2013-01-06 11:33:26 Re : envoyer le flux d'un pix_video a une autre instance de PD via réseau

jerome
membre
Date d'inscription: 2008-03-04
Messages: 103
Site web

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



Pour le partage de mémoire, il y a la bibliothèque "share-mem" dans le svn à tester :
http://www.mail-archive.com/pd-list@iem … 53985.html

Je ne sais pas si ça marcherait avec de la vidéo.

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024