Annonce

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


#1 2014-06-18 22:19:04 v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

v4l2 FFMPEG loopback et autres petits soucis



Bonjour,

Je (re)viens vers vous car je patauge un peu dans tout ce qui est "partage" video entre les applications...

A présent que j'arrive à capturer (non sans mal) de la video issue de FireWire :

dvgrab -f dv2 - | avconv -i - -r 1 -f image2 foo.jpeg

Je voudrais savoir si je peux créer un peripherique virtuel en modifiant le code ci dessus (pour réussir à utiliser v4l de façon concrete et comprendre un peu notament, mais aussi pour pouvoir mieux exploiter mon périphérique FireWire)

Si j'ai bien compris, ili suffit de faire :

sudo modprobe v4l2loopback
ffmpeg -i source.avi -f v4l2 /dev/video1

et en principe on recupére source.avi

ffplay -f video4linux2 /dev/video1

Si c'est bien cela, j'ai un problème puisque avec dvgrab (le seul qui actuellement me capture une entree FireWire) cela ne fonctionne pas :

dvgrab -f dv2 - | ffmpeg -i - -f v4l2 /dev/video1

De plus, je n'ai pas réussi à utiliser avec succes vloopback (qui n'est pas v4l2loopback) qui m'aurait été utile avec dv4l (mais bon j'ai fais autrement, comme expliqué ci dessus)...

Je cherche aussi à transmettre ma fenêtre GEM à FFMPEG mais je patauge tout autant.

Enfin, lorsque j'ai essayé d'utiliser mon patch cree sous Mac sous Linux, avec toutes les librairies installé, pas grand chose pour ne pas dire rien ne fonctionnait... Même un pauvre [metro] ne se cree pas... Pourtant, j'ai renseigné les paths dans les preferences... Y a t il quelques choses à savoir, a faire en plus ? L'OS (Lubuntu) était buggé, je le ré-installe en ce moment même, mais tout de même, cela m'a étonné, et embêté...

Voila... Ca fait beaucoup je sais...

Merci par avance.

Dernière modification par Tepaze (2014-06-18 22:20:47)

Hors ligne

 

#2 2014-06-18 22:46:53 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



doit y avoir des chevaux qui piaffent d'impatience pour la photo .
vloopback n'est plus compilable sur les kernels > 2.6.39
seul v4l2loopback est compatible
quand à sudo modprobe v4l2loopback devices=x et ffmpeg ...... -f v4l2 /dev/video "n°" celà dépend du nombre de virtuels créés et si il y a ou non des caméras uvc et du n° du virtuel que l'on veut utiliser .
pour Gem il y a un fil sur le sujet ici : http://codelab.fr/1197
Possible aussi utiliser GSreamer avec le module v4l2sink .

Dernière modification par sakramh (2014-06-18 22:56:35)


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

Hors ligne

 

#3 2014-06-18 23:22:44 Re : v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

Re: v4l2 FFMPEG loopback et autres petits soucis



citation :

doit y avoir des chevaux qui piaffent d'impatience pour la photo

Arf... C'est moi surtout qui piaffe d'impatience... Je ne suis pas loin, mais je suis a coté à chaque fois...

Pour les N° c'est entendu que cela dépend de la présence ou non d'une webcam intégré. Ayant une webcam intégré, j'utilise le N°1
Par contre je dois spécifier le N° de device dans le modprobe ?? Je peux par exemple, et pour être sur de ne rien écraser faire :

modprobe v4l2loopback devices=21

Et as tu un lien vers un exemple pour gstreamer stp ?

Merci pour ces pistes Sakramh :-)

Hors ligne

 

#4 2014-06-19 01:47:57 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



Hello...

Pour créer les périphériques virtuels la commande qu'on utilise est :

sudo modprobe v4l2loopback video_nr=1,2

... pour créer un /dev/video1 et un /dev/video2

Pour ne pas avoir à te taper le modprobe a chaque fois, il te suffit d'aller écrire dans /etc/modules :

v4l2loopback video_nr=1,2

Et, oui, tu peux faire :

v4l2loopback video_nr=69

smile

citation :

Je cherche aussi à transmettre ma fenêtre GEM à FFMPEG mais je patauge tout autant.

Il faut que tu utilises [pix_snap] et [pix_record] avec le codec v4l2.
Je t'ai fait un patch vite fait qu'il te faudra peaufiner pour ton besoin, mais tout y est :

http://codelab.fr/up/puredata-pix-record-v4l2.png

Ensuite, la ligne de commande ffmpeg pour récupérer le flux commencera par quelque chose comme ça :

ffmpeg -y -f video4linux2 -s 1280x720 -i /dev/video69

Bon courage... smile


L'Amour au Peuple !

Hors ligne

 

#5 2014-06-19 02:56:57 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



citation :

Il faut que tu utilises [pix_snap] et [pix_record] avec le codec v4l2.

bonne alternative à un grab de X11 en effet .
Pour GStreamer il est probablement possible de réaliser toute la chaîne avec , mais il y a un souci de documentation . Je trouve que c'est bien plus ésotérique au début que Pd-extended .
Un début de tutoriel ici : http://blog.nicolargo.com/2009/01/intro … media.html

Dernière modification par sakramh (2014-06-19 09:06:56)


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

Hors ligne

 

#6 2014-06-19 09:34:00 Re : v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

Re: v4l2 FFMPEG loopback et autres petits soucis



Merci à tout deux. Je me plonge la dedans.

Entre nous, je trouve cet apprentissage passionnant :-)

Hors ligne

 

#7 2014-06-21 13:47:45 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



Olivier a écrit:

citation :

Je cherche aussi à transmettre ma fenêtre GEM à FFMPEG mais je patauge tout autant.

Il faut que tu utilises [pix_snap] et [pix_record] avec le codec v4l2.
Je t'ai fait un patch vite fait qu'il te faudra peaufiner pour ton besoin, mais tout y est :

http://codelab.fr/up/puredata-pix-record-v4l2.png

Très chouette ce patch !
smile

Hors ligne

 

#8 2014-10-16 18:21:56 Re : v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

Re: v4l2 FFMPEG loopback et autres petits soucis



Bonjour à tous et toutes,

Je reviens vers vous après avoir géré les priorités et afin d'avancer un peu plus sur un éventuel portage sur Linux de mon truc...

J'ai installé Ubuntu (j'ai essayé Debian aussi, mais je l'ai planté en faisant n'importe quoi, mea culpa, et du coup c'est un Ubuntu, voila)
J'ai installé pd-extended, v4l2loopback-dkms et vlc

Et lorsque je regarde mon flux GEM -> v4l2loopback avec VLC, mon image est à l'envers. Une rotation à 180°

J'ai resolu le soucis (je suis en test hein, c'est tout) en mettant un [rotate 180 1 0 0] et j'obtiens l'image dans le bon sens...

Original n'est ce pas...

De plus j'affiche juste la webcam intégré de l'ordi dans GEM, et pd-extended rame.... Un [metro 1000]-[print] m'affiche quelque chose toutes les 2 à 3 secondes... Alors ok, c'est unportable sans carte graphique dédié, mais c'est un core i5 tout de même... Avec une GMA 950 ok, mais.... A votre avis?

Bien a vous

Tepaze

Hors ligne

 

#9 2014-10-17 13:14:17 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



Pour la rotation, je pense que c'est inhérent à [pix_record].
Donc, pour ma part, soit je retourne l'image dans GEM, [rotate] ou [pix_flip], soit je retourne la webcam, soit je retourne l'image à l'acquisition (dans le cas de caméra IP par exemple).

Mais bon, je retourne bien quelque chose... :-p

Concernant ton débit, c'est étrange, une chose que tu peux faire, c'est te passer du [pix_snap] et de faire entrer ton flux vidéo directement dans le [pix_record]...
Le coup du [pix_snap], c'est pour chopper tout le contenu de la fenêtre GEM (logo éventuel, animation, je ne sais quoi encore...).
Si tu veux juste transmettre du flux en cut de plusieurs sources, tu peux t'en passer et utiliser un [gate] pour gérer le choix du flux envoyé au [pix_record]...

En espérant ne pas avoir été confus...

Bon courage...

01ivier


L'Amour au Peuple !

Hors ligne

 

#10 2014-10-18 16:23:56 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



si c'était un souci de driver carte graphique (voire de drivers openGL) je ne peux que te renvoyer à cette page :
http://doc.ubuntu-fr.org/intel_graphics .
il y a qlq commandes utiles (attention les bêtises !) .
p.s. : si cette carte graphique fonctionnait bien sous debian il n'y a aucune raison que pas sous ubuntu .

Dernière modification par sakramh (2014-10-18 16:27:06)


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

Hors ligne

 

#11 2014-10-20 13:41:12 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



maintenant le mieux est de repartir de la source : la webcam . Certaines ont la mauvaise idée de prioriser certains paramètres plutôt que d'autres ( ouverture vs luminosité vs vitesse ) . Pour fixer çà : le plus simple est video4linux control panel . Mais il y a plein d'autres outils (recherche v4l2 dans synaptic) . Choix selon ses goûts . Pour les loopbacks il y a aussi un outil . Verifier aussi le fps de gem .
EDIT : le plus simple (et le plus complet) est GUVCVIEW . surcouche gtk à uvcdyncontrol . (man guvcview)

Dernière modification par sakramh (2014-10-20 14:15:56)


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

Hors ligne

 

#12 2014-10-24 00:29:30 Re : v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

Re: v4l2 FFMPEG loopback et autres petits soucis



Merci à vous 2.

Je repond un peu en retard, car le temps m'a rattrapper, mais je vais regarder cela de près dès que possible :-)

Encore merci pour vos pistes.

:-)

Hors ligne

 

#13 2014-10-25 15:30:20 Re : v4l2 FFMPEG loopback et autres petits soucis

Tepaze
membre
Lieu: Angers
Date d'inscription: 2014-04-14
Messages: 202

Re: v4l2 FFMPEG loopback et autres petits soucis



Je me demande aussi comment faire pour transmettre le son de pure data à ffmpeg (ou libav) ?

Pour le reste je tatonne encore... Le retournement ne fonctionne pas si je n'utilise pas [pix_snap] et pix_snap me ralenti tout le patch...

Il faut que je recommence dans de bonne condition de test, avec les bonnes sources etc...

Hors ligne

 

#14 2014-10-26 12:48:02 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



ben c 'est la même que pour la vidéo .
ffmpeg -formats te renseigne sur ses capacités Décode/Encode
j'ai pas de tuto ffmpeg m'étant tjs débrouillé avec un man ffmpeg
donc qlq chose comme :

ffmpeg -f (alsa/jack/oss) -i (maSource) -f (x11/v4l2/etc..) -i (maSource) -acodec (encodageChoisi(pcm, mp3 ..)) -vcodec (encodageChoisi(flv,h264...)) maVideoAvecSon.containerChoisi

avec qlq indications de bits/sample et size/fps et affinage de débit si besoin
des exemples sont fournis par les pages de manuel ffmpeg et ffserver
mais c'est clair que beaucoup de tâtonnements avant de soigneusement copier la bonne dans un pense bête . cool

Dernière modification par sakramh (2014-10-26 12:49:06)


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

Hors ligne

 

#15 2014-10-26 13:39:43 Re : v4l2 FFMPEG loopback et autres petits soucis

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

Re: v4l2 FFMPEG loopback et autres petits soucis



citation :

Le retournement ne fonctionne pas si je n'utilise pas [pix_snap]

??!!
Je ne comprends pas... hmm
Quel est ton patch... ?
Tu dois "retourner" autre chose que la vidéo ?
Sinon, tu dois vraiment pouvoir te passer de [pix_snap]

Dans tous les cas, j'imagine que tu vas passer par un serveur pour streamer ta vidéo...
Sur la partie serveur, il doit t'être possible de retourner la vidéo qui est transmise avant diffusion.

Pour le son, il faut que tu passes par jack et que tu routes le flux vers ffmpeg :
http://wiki.labomedia.org/index.php/Flu … 9o_.2B_son

Attention, toutes les versions de ffmpeg ne sont pas compilées avec le backend jack...
Par exemple, les versions statiques disponibles ici et qui prennent en charge v4l2loopback ne prennent pas en charge jack...

Bon courage...


L'Amour au Peuple !

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024