Acquisition video (webcam, tv cards ...)

Description

J'ai essayé de réécrire un composant d'acquisition vidéo en utilisant les fonctions de la DLL AviCap32.dll, et en restant au plus près de ces fonctions.
Les derniers sources que nous avons vu ici, usaient (et abusaient) de copier-coller pour présenter dans un TImage une vidéo rendue invisible à sa création !
Il y a ici, une utilisation des fonctions callback pour générer les évènements,
Il y a en plus, un bitmap intégré au composant qui permet de faire de l'incrustation de texte et de dessin dans l'image vidéo.

La démo présente deux points principaux :

1 - Incrustation
L'incrustation est obtenue en utilisant le canvas d'un bitmap du composant. Lors des évènements générés par les fonctions callback, lorsqu'il y a accès au buffer image captée (OnFrame et OnVideoStream), on fusionne ce buffer et les pixels du bitmap. J'encourage chaque utilisateur à écrire ses propres alogorithmes de fusion, selon ses besoins.
On peut ansi visualiser une capture avec incrustation ou enregistrer un flux vidéo avec incrustation

2 - Analyse d'image et détection de mouvement
Cette analyse est effectuée à chaque nouvelle trame, et si un mouvement est détecté, un cadre est ajouté à l'image vidéo par incrustation

Conclusion :


Limitations :

- Pas d'enregistrement des incrustations si on utilise un codec vidéo de compression (comme DivX, Intel IYUV ou autre). (le flux est probablement détourné avant de parvenir au composant)

(Z'avez vu la capture de la capture de la capture de la capture de la capture de la capture de la capture de la capture de la capture .....)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.