GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Fake A Webcam à l'aide d'un périphérique de bouclage vidéo ?

Je souhaite utiliser un clip vidéo en boucle comme source de ma webcam dans un Hangout Google+. J'ai installé v4l2loopback et créé un périphérique de bouclage vidéo. Mais je n'ai pas compris comment écrire les images vidéo sur l'appareil. L'exemple donné est :

gst-launch videotestsrc ! v4l2sink device=/dev/video1

Donc, après avoir lu la page de manuel de gst-launch et essayé de comprendre ce qui se passait, j'ai fait ma faible tentative :

sudo gst-launch-0.10 filesrc location=//eadn-wc01-5196795.nxedge.io/home/briankb/Videos/darthvaderdancing.mp4 ! v4l2sink device=/dev/video0

Ce qui a donné :

Setting pipeline to PAUSED ...
libv4l2: error getting pixformat: Invalid argument
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...

(gst-launch-0.10:12622): GStreamer-CRITICAL **: gst_caps_get_structure: assertion `GST_IS_CAPS (caps)' failed
New clock: GstSystemClock

(gst-launch-0.10:12622): GStreamer-CRITICAL **: gst_structure_get_name: assertion `structure != NULL' failed
Caught SIGSEGV accessing address (nil)
#0  0x00007fc1890f0b03 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fc18962bff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fc18962c45a in g_main_loop_run ()
#3  0x00007fc189b5c4cb in gst_bus_poll ()
#4  0x0000000000404587 in ?? ()
#5  0x0000000000403c34 in ?? ()
#6  0x00007fc18902b76d in __libc_start_main ()
#7  0x00000000004043bd in ?? ()
#8  0x00007fff88253ed8 in ?? ()
#9  0x000000000000001c in ?? ()
#10 0x0000000000000006 in ?? ()
#11 0x00007fff882548c4 in ?? ()
#12 0x00007fff882548d4 in ?? ()
#13 0x00007fff882548dc in ?? ()
#14 0x00007fff88254904 in ?? ()
#15 0x00007fff88254906 in ?? ()
#16 0x00007fff8825490f in ?? ()
#17 0x0000000000000000 in ?? ()
Spinning.  Please run 'gdb gst-launch 12622' to continue debugging, Ctrl-C to quit, or Ctrl- to dump core.

Le clip que j'essaie d'utiliser une vidéo h264 à 29,97 ips, 320 × 240 et dans un conteneur mp4 (il vient de Youtube).

Meilleure réponse

Le gst-launch Les pages de manuel nous indiquent que nous devons d'abord décoder la vidéo, et la façon la plus simple de le faire est la suivante :

gst-launch-0.10 filesrc location=[location] ! decodebin ! v4l2sink device=/dev/video0

gst-launch n'a pas besoin d'être exécuté en tant que root, et [location] peut être relatif aussi !


Ubuntu
  1. Ajouter du texte superposé à la vidéo à l'aide de PHP-FFMPeg

  2. Comment faire fonctionner la webcam avec Ubuntu 14.04 ?

  3. Comment télécharger des vidéos Facebook en utilisant « youtube-dl » sous Linux ?

  4. La vidéo ne fonctionne pas bien dans Skype ?

  5. Comment créer des partitions à l'intérieur du périphérique de bouclage

Comment créer votre propre serveur de vidéoconférence à l'aide de Jitsi Meet sur Ubuntu 18.04 LTS

Comment configurer les interfaces réseau à l'aide de NMCLI sur Centos 7.6

Problèmes vidéo avec la webcam Logitech C310 ?

Utilisation des didacticiels vidéo cPanel

Comment écrire sur une webcam virtuelle sous Linux ?

Pipe/Mix Line In vers Output dans PulseAudio