Question

Nous devons capturer des vidéos en direct et afficher facilement sous Linux. Nous avons besoin d'une carte bon marché ou d'un périphérique USB doté d'une API simple. Quelqu'un veut-il partager une expérience?

Était-ce utile?

La solution

Utilisez la bibliothèque video4linux . Je l'ai utilisé avec un programme c ++ et j'ai été capable de capturer des images de webcam en environ une heure. (Très facile à utiliser et à configurer)

Autres conseils

Si vous devez programmer, vous feriez mieux d’utiliser GStreamer , un outil multimédia cadre sous Linux.

Cheese, mentionné par jackbravo, est basé sur GStreamer, de même que Flumotion , un serveur de diffusion sur lequel je travaille sur.

Comme mentionné, utilisez dvgrab pour capturer à partir d’une interface Firewire à partir de la caméra, puis utilisez des outils tels que ffmpeg (ligne de commande) ou kino (éditeur de vidéo en gui simple) pour traiter la vidéo selon vos besoins. Les cartes Firewire basées sur PCI sont relativement peu coûteuses et faciles à trouver.

Voici quelques exemples:

  • capture continue depuis le firewire, autosplit toutes les deux minutes

    dvgrab --size 500 --autosplit <filename>
    
  • regarder la caméra en direct

    dvgrab - | mplayer -
    

Sachez que certaines distributions récentes (par exemple, Fedora8) utilisent des pilotes Firewire nouveaux mais à moitié cuits. Cependant, Ubuntu fonctionne très bien.

Il y a " scellé " solutions de caméras là-bas avec des mini-serveurs Web et un port Ethernet à l'arrière. Il suffit de le connecter au réseau, de définir son adresse IP et d'ouvrir un navigateur ... sous Linux ou ailleurs.

Si vous souhaitez capturer sous Linux, j’avais une webcam peu coûteuse capturant des images uniques dans un script Perl, qui aurait pu être modifiée en temps réel, même si c’était il ya environ 10 ans. Quoi qu'il en soit, c'est possible: - /

Il existe l’application cheese . Vraiment simple à utiliser. Pas trop de fonctionnalités, juste une capture vidéo.

openCV vous permettra de capturer des images individuelles à partir d’une caméra et de les enregistrer sur le disque. Si vous devez ensuite les manipuler pour créer une vidéo, je vous suggérerais netpbm, un ensemble assez puissant d’outils de ligne de commande que vous pouvez utiliser avec des scripts shell pour créer une vidéo ou faire tout ce dont vous avez besoin.

Une autre option consiste à utiliser des caméras Firewire (IEEE1394), telles que les caméscopes DV les plus courants. Ils ont tendance à très bien fonctionner et donnent une bien meilleure vidéo que des webcams bon marché. Il existe une multitude d'outils sous Linux pour travailler avec la vidéo DV, tels que dvgrab .

Si vous utilisez Java, v4l4j simplifie grandement la capture de trames à partir de tout périphérique V4L. Il vous permet également de contrôler le périphérique à partir de Java. Je l’utilisais avec une webcam PTZ (logitech quickam orbit) et je pouvais contrôler les paramètres habituels tels que la luminosité, la saturation et la balance des blancs automatique, mais également l’inclinaison et le panoramique de la caméra. Très pratique!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top