begin process at 2010 02 10 04:32:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Mutimédia

 > 

Image & Vidéo

 > 

Image de webcam vers un avi


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Image de webcam vers un avi

dimanche 21 mai 2006 à 14:00:56 | Image de webcam vers un avi

ipeteivince

Membre Club
Salut@ tous

voila, j'ai écrit une petite application qui utilise le composant tcamera pour travailler avec une webcam
Ce qu'elle fait pour l'instant, elle permet l'enregistrement d'une image sur clique d'un bouton et un autre permet d'enregistrer une image toute les X seconde du style auto1.jpg auto2.jpg....

Je souhaiterais construire une vidéo a partir de ces images, et pourquoi pas le faire à la volée.
Un clique permet de créer un fichier mjpeg et toute les x secondes, la frame courante est ajoutée au fichier...
Je débute en Delphi . Quelqu'un pourrais m'expliquer comment faire? quel composant gratuit utiliser?
Source actuel:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Camera;

type
TTabImage = Array[0..230399] of byte;


type
TForm1 = class(TForm)
Camera1: TCamera;
Button1: TButton;
Button2: TButton;
GroupBox1: TGroupBox;
Button3: TButton;
Timer1: TTimer;
Label1: TLabel;
GroupBox2: TGroupBox;
Button4: TButton;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var

Form1: TForm1;
num : Integer;
rnum : Integer;


implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
p : ^TTabImage;
begin
Camera1.Actif:=True;
New(p);
num := 0;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Application.Terminate;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Camera1.FichierImage := '';
num := num + 1;
Camera1.FichierImage := 'MAsterC'+IntToStr(num)+'.jpg';
Camera1.CaptureImageDisque;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Timer1.Enabled := True;
Label1.Caption := 'Activé';
end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin
Camera1.FichierImage := '';
num := num + 1;
Camera1.FichierImage := 'Auto'+IntToStr(num)+'.jpg';
Camera1.CaptureImageDisque;
end;


end.

D'avance merci
dimanche 21 mai 2006 à 15:09:25 | Re : Image de webcam vers un avi

jlen100

Membre Club
salut,
je viens de déposer une source :http://www.delphifr.com/codes/VIDEOSURVEILLANCE-A4-CAMERAS-ENVOI-EMAIL-APPEL-TELEPHONIQUE_37687.aspxou
ou j'utilise un composant sous directx beaucoup plus puisant que TCamera il te permettras d'enregistrer  des séquences videos de  faire des capture  en Jpeg....
le composant ainsi de directdraw sont dans le zip

@+
jlen

dimanche 21 mai 2006 à 16:35:13 | Re : Image de webcam vers un avi

Francky23012301

Membre Club
Salut,

Tu ne peux pas passer d'un fichier image à un fichier video. Tu peux fusionner des fichiers bmp en un seul puis te promener dans ce fichier pour lire une photo. En utilisant un timer tu peux alors faire une sorte de film. Ayant tenté de réaliser un tel soft, je peux te dire que c'est assez hard (un bon niveau initié). Personnelement j'ai été confronté à un problème au niveau des streams qui est resté sans solution.

Si tu utilises le composant TCamera, tu peux réaliser une capture video en avi, directement. Maintenant le composant que te propose JLen est bien plus puissant que TCamera et je te le conseille

Voila

@+
dimanche 21 mai 2006 à 17:29:07 | Re : Image de webcam vers un avi

DeltaFX

Si si, y a des composants qui permettent la capture frame by frame (genre 1 image/seconde) et qui te génèrent des AVI avec. Le problème étant de maitriser la structure d'un AVI, pour le construire par code image par image.

+1 le compo de Jlen est tres bon.


dimanche 21 mai 2006 à 17:45:38 | Re : Image de webcam vers un avi

jlen100

Membre Club
je précise quand même que le compo TVideocapture n'est pas de moi

@+
jlen
dimanche 21 mai 2006 à 17:56:00 | Re : Image de webcam vers un avi

jlen100

Membre Club
petite précision concernant le composant Tcaméra , qui viens le l'API AVICAP c'est d'être totalement aveugle si l'image est masquée ce qui peut être gênant dans certains cas. Son avantage étant d'être moins gourmand en ressources que les appels à DirectX (C'est d'ailleurs la raison pour laquelle le compos de captures ont eu du mal à s'imposer malgré leurs performancea bien supérieures)

@+
jlen
dimanche 21 mai 2006 à 20:41:37 | Re : Image de webcam vers un avi

Francky23012301

Membre Club
En réponse à DeltaFX,

Je me suis peut etre mal exprimé : je voulais dire qu'il ne suffit pas de fusionner des bmp ou jpeg puis changer l'extension pour obtenir un avi. Il faut créer la structure de l'avi. C'est un travail très complexe et qui n'est pas à la portée de tous.

@+
dimanche 21 mai 2006 à 22:21:23 | Re : Image de webcam vers un avi

DeltaFX

C'est exactement ce que je disais "Le problème étant de maitriser la structure d'un AVI, pour le construire par code image par image."


Cette discussion est classée dans : sender, num, procedure, tobject, camera1


Répondre à ce message

Sujets en rapport avec ce message

"Incompatible types :''Cardinal' and 'String' " [ par Don0Choa ] Bonjour, je fais un petit prog permettant de fair des boite de dialogue en séléctionnant les bouttons, icones etc...Mais voila j'ai une erreur comem d pb a creer un exe avec la principal form invisible [ par Winniez ] J'ai voulu au demarrage de exe afficher une autre form que la form principal. a l'execution sa me met une erreur, apres g mis le meme code dans un bou Newbie & TCPI/IP [ par Megafan ] Bonjour je suis complétement débutant en delphi, par contre je suis pas mauvais en VB.Pourquoi je change allez vous dire ?Parce que VB ne tourne pas s probleme avec sockets [ par PsyClown44 ] Salut!J'ai un prob avec le composant TClientSocket : je n'arrive pas a recevoir de paquets lors d'une connexion!Voila le code:unit Unit1;interfaceuses Plantage [ par Rapakooti ] Je solicite votre ade car en fait j'ai un gros plantage avec un programme que je suis en train de faire et pourtant il est pas encore avancé une fois probleme aved Dbgrid relier a Access [ par rafraf6 ] Salut voici le code de mon programme delphi.Je depute encore.Lorsque j apuie sur le bouton moyenne.Il me dit 'Field Distance not found'. Le probleme p WebBrowser et page control [ par delphigenial ] Voila, pour mon navigateur j'ai mis un page control et un Webbrowser à l'interieur, je n'arrive pas à faire en sorte qu'on puisse creer un nouvel ongl procedure 'repetée' [ par karakvb ] bon voila mon probleme: a la place de ca: procedure TForm1.Image1Click(Sender: TObject); begin image1.picture.loadfromfile(fichier); end;procedure TFo [Socket] TcpServer-TcpClient : Erreur 10035 [ par Gmartintin ] Bonjour à tous, Pour tester les sockets en Delphi 7 sans les composants Indy, j'essaie de mettre en place un TcpServer et un TcpClient, sur deux appli Réccupérer des données sur un autre Unit [ par m_cyril1 ] J'ai fait un petit programme, celui-ci mémorise des chiffres entier sur une première form et sur la deuxième le résultat de la somme des chiffres s'af


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,432 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales