begin process at 2010 02 10 01:18:20
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Périphériques

 > VIDEOSURVEILLANCE A 4 CAMERAS +ENVOI EMAIL+APPEL TELEPHONIQUE

VIDEOSURVEILLANCE A 4 CAMERAS +ENVOI EMAIL+APPEL TELEPHONIQUE


 Information sur la source

Note :
9,6 / 10 - par 10 personnes
9,60 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Périphériques Classé sous :webcam, directx, video, internet, mails Niveau :Initié Date de création :20/05/2006 Date de mise à jour :25/11/2007 11:02:56 Vu / téléchargé :25 900 / 5 499

Auteur : jlen100

Ecrire un message privé
Site perso
Commentaire sur cette source (115)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Ce programme permet de gérer 4 caméras avec détection de mouvements en multizones et d’envoyer des messages d’alertes par mails et/ou par téléphone On peut également visualiser les caméras sur le WEB avec un navigateur l'alarme dans ce cas est transmise en temps réel.
La détection se fait en multizones (jusqu'à 9 zones par caméra chaque zone pouvant être définie et possédant son propre seuil de sensilibilté) La sensibilité peut être également réglée temporellement ( de 1 à 20 images/s et déclenchement après  1 à 20 dépassements de seuil ceci afin de pouvoir éliminer les phénomèmes transitoires rapides éclairs....)
les écrans de surveillances sont équipés de zoom jusqu'à X 8
Visualisation en mode Preview ou en mode détection...
La capture utilise le directX pour assurer de bonnes performances d’affichage
REMARQUES :   Ce programme ne multiplexant pas les caméras demande beaucoup de ressources (processeur à 1Ghz pour 1 camera et 2.5GHz pour 4 ).
systeme d'exploitation XP SP2(Home ou Pro)
pour le module cameras il faut installer le composant TvideoCapture et le composant de détection TMED (dans le ZIP dans le dossier composant ainsi que directdraw. j'ai modifié directdraw pour qu'il se compile sou D7 et D2005)
Pour le module MAIL il faut installer Indy (avec image en fichier attaché)
Nota sous D2005 et les version utilisant Indy10 il faut remplacer les fichiers configmail par ceux dans le dossier indy10
Pour pouvoir envoyer des messages vocaux il faut que le modem soit un modem Voice (répondeur) compatible avec les commandes AT HAYES (avec un modem standard l'alerte est envoyée mais sans le message vocal)
les tests ont été faits avecun modem SWEEX 56k PCI HARDWARE (disponible chez Conrad ref:09-52-98 )
En principe tout modem hardware doivent convenir
Nota les modems software n'ont pas donné satisfaction.
il faut que les fichiers audio pour le modem soit au au format: PCM 11025Hz 8bits mono (vous pouvez utiliser le magnétophone de windows en  changeant le format d'enregistrement)
Nota: Ces 2 derniers modules peuvent être supprimés en retirant leur déclaration dans les clauses uses et les appels dans les boutons correspondants de la fiche Cameras  et leur suppression du projet.
Pour ceux qui voudraient tester ce code sans le compiler vous trouverez l'exécutable à l'adresse:
http://jlen.fr/telechargement_programme .html

Source

  • Tout est dans le zip
Tout est dans le zip

 Conclusion

c'est une version beta d'un module destinée à une application plus générale
Pas de bug connu (mais cela ne veut pas dire qu'il n'y en a pas)
Si vous trouvez des améliorations à apporter n'hésitez pas à m'en faire part.
Le module WEB a été développé en collaboration avec franck23012301
je remercie max pour sa contribution pour les tests
J'espère ne rien avoir oublié dans le zip...les unités sont nombreuses!!

suite à la non-compatibilité ascendante entre indy9 et indy10 j'ai rajouté une version spéciale indy10

Pour pouvoir envoyer des messages vocaux il faut que le modem soit un modem Voice (répondeur) compatible avec les commandes AT HAYES (avec un modem standard l'alerte est envoyée mais sans le message vocal)
les tests ont été faits avecun modem SWEEX 56k PCI HARDWARE (disponible chez Conrad ref:09-52-98 )
En principe tout modem hardware doivent convenir
Nota les modems software n'ont pas donné satisfaction.
il faut que les fichiers audio pour le modem soit au au format: PCM 11025Hz 8bits mono (vous pouvez utiliser le magnétophone de windows en  changeant le format d'enregistrement)
Nota vous trouverez dans le module setup un bouton non affecté il est destiné pour une extension future permettant de visionner les caméras à partir du WEB (module réalisé en très grande partie par francky20312301)
petite mise à jour : Un HD m'ayant trahi la mise à jour que j'ai postée (récupérée dans la sauvegarde)....n'était pa à jour.
le défaut signalé par cincap est un bug de l'autosize de la fiche.(????)
Le module internet est un micro serveur HTTP il suffit de récupérer l'adresse IP du PC dans sa boite mails et d'ouvrir une session en entrant http://xx.xx.xx.xx/ dans l'explorateur (voir également la source http://www.delphifr.com/codes/WEBCAM-MICROSERVEUR- HTTP-WEBCAM-IP-INDY-INDY-10_38726.aspx pour avoir des explications détaillées)
la prochaine étape comprendra un module domotique pilotable par le WEB.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

22 mai 2006 08:16:50 :
le 20-05-06 ajout d'un bouton OK dans changercode. renommer la fiche form1-->Fprincipal et l'unité Test2---->UnitPrincipale forcer la fiche choicevideo en premier plan lors du premier lancement.
23 mai 2006 17:10:44 :
correction d'un bug sur le fichier INX ajouter la sauvegarde des positions des vignettes et voyants par défaut changer état dans descripteur d'objet l'etat des voyants 1 et 2 supression de la lecture redondante du fichier INX dans unitprincipale
24 mai 2006 20:55:12 :
[Ver 1.01.12] : ajouter delai avant mise en service suite à remarque de cincap retour à USR (attention à l'installation sous D6 )
25 mai 2006 23:23:53 :
changement de composant dans le module Phone et retour à TurboPower Async Professional
27 mai 2006 11:32:26 :
[Ver 1.01.14] : suite à la non portabilité du module ConfigMail sous Indy10 creation d'une version spécifique (ceci ne me satisfait pas mais c'est pourtant la seule possibilité pour l'instant)
27 juin 2006 21:26:04 :
[Ver 1.01.15] : développement d'un nouveau Module telephonique regroupement des setups dans une unité dédiée accessible depuis la fiche principale
29 juin 2006 11:12:52 :
récupération de la mise à jour.
03 juillet 2006 09:08:06 :
quleques mises à jour suite à la récupération de la copie se sauvegarde.
23 juillet 2006 23:57:42 :
ajouter module Web
24 juillet 2006 15:39:46 :
correction de l'activation alarme dans le module internet
25 novembre 2007 11:03:00 :
ajouter le lien pour l'exécutable

 Sources du même auteur

Source avec Zip Source avec une capture WEBCAM+ MICROSERVEUR HTTP = WEBCAM IP (INDY 9 ET INDY 10)
RECHERCHE AUTOMATIQUE D'UN PORT SERIE
Source avec Zip Source avec une capture PILOTAGE 4 AXES POUR MOTEUR PAS A PAS + 4 SERVOS MOTEURS CC+...

 Sources de la même categorie

Source avec Zip Source avec une capture EXTRAIRE PÉRIPHÉRIQUE USB ( HOTPLUG ) par yanb
Source avec Zip Source avec une capture LOGICIEL INTERRUPTEUR MONDIAL USB par ced55957
Source avec Zip Source avec une capture RETIRER LES PÉRIPHÉRIQUES USB par yanb
Source avec Zip CHARGER ET ENVOYER DES DONNÉES VIA L'USB par ldesmartin
Source avec Zip Source avec une capture GESTION DU CLAVIER G15 DE LOGITECH par delphitness

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture SCREENCAMTURE 0.2 par JulioDelphi
Source avec Zip Source avec une capture LOGICIEL INTERRUPTEUR MONDIAL USB par ced55957
Source avec Zip Source avec une capture GESTIONS DE FILMS PAR FICHES "MOVIECOVERS", AVEC LECTEUR MUL... par morinxav2
Source avec Zip Source avec une capture WEBCAM+ MICROSERVEUR HTTP = WEBCAM IP (INDY 9 ET INDY 10) par jlen100
Source avec Zip DÉTECTION HUMAINE ET PILOTAGE D'UNE WEBCAM par doomer

Commentaires et avis

Commentaire de Francky23012301 le 21/05/2006 07:44:56

Salut,

Que dire : c'est grandiose. C'est du très très bon travail JLen. Tu peux être fiere de toi.

Ce projet est original. Le code est limpide et superbement bien réalisé. En plus j'ai appris plein de nouvelles fonctions.

Je n'ai pas pu tester les alertes mails ou vocales (ma configuration ne le permet pas).

Allez je te mets un 10/10 car je peux pas mettre plus.

Commentaire de jlen100 le 21/05/2006 09:36:52

salut francky,
merci pour la note, grandiose c'est peut être beaucouq dire, il ne fait appel qu'à des fonctions bien connues, je n'ai fait fait que les appliquer.
En fait le plus difficile a été de trouver des composants video assez performants. Pour la petite histoire au départ j'étzis parti sur l'API AVICAP mais elle présente un gros défaut : c'est d'çtre complètement "aveugle" quand l'image est cachée.
Un problème que je n'ai pas réussi à résoudre: il n'est pas possible d'arrêter une caméra durant la cession (appaemmment un problème au niveau du memorystream qui n'est pas libérer même par la destruction du composant par free)

@+
jlen

Commentaire de DeltaFX le 21/05/2006 09:55:50

Si tu cherches un compo video puissant, jettes un oeil à videocapx chez fathsoft.com. Il gere la detection multizone par camera, l'upload vers server, l'enregistrement/rééncodage,la capture son. Etc..

Mais c'est pas gratuit.

Commentaire de jlen100 le 21/05/2006 10:25:59

salut deltafx,
le composant de fathsoft à l'air pas mal mais si avant de le charger le setup il donnait un peu plus de renseigneiments sur ces caractéristques et ses possibilités ce serait mieux!! 4 lignes sur la page d'accuei c'est un peu short

pour info les composants que j'ai utilisé gèrent le multizones par caméras sour différents modes
caractéristiques du composabt MED utilisé pour la détection:
scan global ou par zones définies
choix de la couleur de scan (ou toutes)
pour le scan par zone choix de la matrice (il présente un bug que je n'ai pas encore corrigé: il ne fontionne correctement que si la matrice est carré
le composant video permet l'enregistrement des images au format jpeg la récupération des images au format Bitmap,
enregistrement video et au audio (je ne l'ai pas tester dans l'appli)
on peut déclencher la capture quand on le désire (utilisation du memorystream) et pour l'envoi sur le Web il suffit de rajouter un module qui s'en charge (dans le programme je n'envoie que la capture ayantdéclenchée l'alarm et encore pour de la surveillance le net n'est pas l'idéal : on ne l'a pas toujours sous la main et n'est pas toujours rivé à l'écran je préfère et de loin une alerte téléphonique qui est beaucoup plus sur d'aboutir)

Et cerise sur le gateau ces composants sont en freeware!! même s'il demande un peu plus de creusage de méninges.

@+
jlen

Commentaire de Francky23012301 le 21/05/2006 10:57:05

Je justifie le grandiose :

-Il s'agit là d'un soft et pas d'une simple source Je conseille à tout le monde de le télécharger : c'est un cours de coding à lui tout seul.

-Bien que cela ne saute peut etre pas aux yeux : tu as du etre confronté à beaucoup de "petits beugs" et reglages qu'ils ne devaient pas être simples à regler.

-Il a été fait en un temps record!

-C'est bourré d'astuces

-Ce soft est très très bien structuré : rien de superflus.

Ce n'est que du bon quoi! A lire absolument!

Commentaire de jlen100 le 21/05/2006 12:16:51

pour le bugs il y en a eu quelques uns et si je n'ai pas planté windows une centaine de fois (sortie en appuyant 4s sur le bouton d'arrêt) je ne l'ai jamais planté!!sans parler des palntage au niveau du bios --> sortie en coupant l'alimentation.
le premier à été celui de directdraw qui n'a pas été mis à jour depuis 2000 si je me souviens bien et qui refusait de se compiler sous D7.
pour le temps de dévellopement les journées ont 24h mais dommage que les nuits soient si courtes!!
Cette appli n'est qu'un module d'une appli plus importante (elle en représente le 1/3) ce qui m'a obligé à faire de la programmation modulaire (noter que chaque module peut être réutiliser dans d'autre appli ce n'est pas des composants mais c'est plus souple à adapter!!)
la structure est assez simple il y a une fiche (que j'ai oubliée de renomer ): celle ou il y le plan qui simule l'application principale et par laquelle toutes les infos transitent ensuite chaque module tranmet ou va rechercher le infos sur la fiche on limite ainsi les risques que cela se "morde la queue" et chaque module peut être mis au point indépendament. Ainsi dans les module PHONE et MAILS si tu vire la fiche dans les uses et que tu supprimes la lignes qui sert au déclenchement au les timer de scan tu peux les utiliser indépendament (c'est pour les mettre au point que j'ai mis un bouton test!!)
je pense que si j'avais adopté une structure globale cela aurait été vite indermerdable excuses moi du terme. d'autant que l'application finale permet de gérer 16 caméras (mais là il s'agit d'autres matériels et que je suis obligé de multiplexer sinon le PC n'en peut plus)sans parler d'une centrale 32 zones plus quelques sorties pour la domotique et liaison par bus de terrain..)
pour le multiplexage c'est à peine plus compliqué: il y a un scan supplémentaire et une commande de sélection de caméra  qui est envoyée au boitier ensuite il n'y a plus qu'a récupérer le bitmap et l'envoyer sur le bon détecteur. Ce n'est aps dans le programme puisqu'il faut le boitier ad hoc.(4 caméras par boitier). d'ou l'avantage d'utiliser des composants capture et détection indépendants.

@+
jlen

Commentaire de DeltaFX le 21/05/2006 14:17:34

J'utilise videocapx  car il fait également player video( et ca faisait ca de moins a coder). Je vais regarder Tmed.

Commentaire de DeltaFX le 21/05/2006 14:37:50

Tres complet pour un compo freeware, j'en conviens. Par contre il y a des fonctionnalités que je devrais ajouter perso si je décidait de m'en servir, comme la possibiliter de mirrorer/flipper/cropper une image que je n'ai pas trouvé dedans.


Commentaire de jlen100 le 21/05/2006 14:39:42

Pour TMED il est est assez simple a utiliser :
il compare les bitmaps qu'on lui passe (methode InsertNextBitmap)ce qui permet de régler facilement le nombre de comparaison/seconde et surtout d'être indépendant de la fréquence vidéo.
Pour la programmation des zones vas voir le module paramzones.
le seul problème que j'ai rencontré c'est au niveau de la matrice ou les colonnes et les lignes sont inversées ce qui oblige à travailler en matrice carrée. ( je n'ai pas encore corrigé la source de TMED mais je m'y mets dés que j'ai un moment)
dans le programme cela me permet de changer de caméra sans modifier les paramètres de détection (utile si une caméra tombe en rade ou si l'on veut changer de système: windows donne un nom unique à chaque caméra installée et si l'on change de caméra il vaut mieux pouvoir récupérer les paramètres sans avoir à tout refaire)

@+
jlen

Commentaire de DeltaFX le 21/05/2006 14:41:38

http://www.fathsoft.com/videocapx.chm.zip

http://www.fathsoft.com/videocapx.html

Vala un peu plus que 4 lignes.

Commentaire de jlen100 le 21/05/2006 15:03:02

oui effectivement il est pas mal. toutefois il y a une chose qui semble manquer (je n'ai pas regarder dans le détail) c'est le réglagedu nombre de comparaisons pas seconde qui est important en surveillance pour éliminer les variations parasites rapides. D'autant qu'il est inutile dans ce cas de faire plus de 2 à 6 comparaisons/seconde les mouvements que l'on veut détecter étant généralement bien plus lents c qui limite la charge processeur.
Pour le fonctions que tu sites se sont plus des fonctions de traitement d'image que de détection et le compo TMED est spécialisé.

@+
jlen

Commentaire de tlemcen1393 le 21/05/2006 15:42:04

merci

Commentaire de DeltaFX le 21/05/2006 17:24:47

Ouaip, Tmed est + spécialisé. Pour répondre a ta question concernant les detections, il y a

- la methode DetectMotion qui renvoi à un instant T une estimation de mouvement (d'apres la doc si result > 30; result dans [0..100], il y a mouvement entre 2 images consécutives du flux

- ou CompareImage, qui compare 2 images, indépendament du flux, au concepteur de régler la fréquence du truc.

Arf, j'ai l'impression de faire de la pub pour le truc, c'est pas le cas hein, mais je le trouve sympa donc j'en parle. (Par contre il gere la perte d'une source, les cameras de surveillances motorisées, iris, expo, focus, si la cam le permet, tu peux tout controler par le code....)

Pour aller plus loin, je dois avoir qqpart l'url d'un site sur traitement et vision par ordinateur (mais en java) avec des codes bien puissants, permettant par example de déterminer dans une image ce qui est au premier plan etc etc. (j'avais trouver ca en me renseignant sur un projet de détection d'obstacles/mobiles peu visibles en vision nocturne).

J'ai testé ton prog (en dehors de Tmed) et 10/10 aussi.

Commentaire de DeltaFX le 21/05/2006 17:39:42

Et hop, le lien :

http://rsb.info.nih.gov/ij/features.html

Commentaire de jlen100 le 21/05/2006 17:42:19

merci pour la note.
effectivement ton compo est puissant et certainement plus que TMED mais une petite question est ce qu'il permet de g"rer les caméra multiplexées (un flux et plusieurs détecteurs) puisque dans mon projet pour limiter la charge (avec 16 caméras et autant de memorystream on dépasse largement capacités des systèmes actuels, mais c'est vrai que cela évolue rapudement)je multplexe les sources, je suis parti à 1/4 mais l'on peut faire  jusqu'à 1/10 avec des caméras video de qualité à 70 frames/s et un boitier prévu  en conséquence.

@+
jlen

Commentaire de DeltaFX le 21/05/2006 17:58:08

Par multiplexé tu entends un flux video où
Frame1=Camera1
Frame2=Camera2
Frame3=Camera3
Frame4=Camera1
Frame5=Camera2
Frame6=Camera3
....

et une detection de mouvements entre les images de la camera 1, une autre pour la cam 2, etc ? Donc par cam, 1/N fois la freq de chaque cam : 7 ips dans le cas de 10 cam à 70 ips chacune ?
Ca c'est pas possible avec videocapX.

Commentaire de jlen100 le 21/05/2006 18:30:53

c'est exactement cela
ce n'est pas surprenant qu'il ne puisse pas le faire puique je pense qu'il associe directement la caméra au composant.
dans l'appli on adresse une interface (USB pour 4 caméras ethernet au delà) on lui envoie le N° de caméra et elle renvoie la frame correspondante.
pour les caméras motorisées et les réglages ce sont des commandes que l'on envoient par le même canal en fait cela fait partie du driver et c'est indépendant de la capture.
Ces commandes sont struturées de la façon suivante: nom_du_boitier+N° de caméras +nom_de_la_commande+paramètre;
le nom du boitier correspondant au nom de la device donné par windows (elle est considérée comme une source video unique) l'appel se fait au travers d'une DLL.
c'est pour cela que j'avais besoin d'une capture et de détecteurs séparés
Pour TMED il active un évènement si l'on dépasse le seuil mais rien n'empêche de le modifier pour qu'en plus il renvoie le résultat dans une propriété même s'il n'y a pas alerte.

Commentaire de jlen100 le 22/05/2006 08:20:16

je ne comprends pas pourquoi cette source est mise en .NET alors que je n'ai pas coché la case (je viens de vérifier)

@+
jlen

Commentaire de EddiTheHead le 22/05/2006 20:03:45

Slt,
C'est pas du code pour les bleus. Maintenant je sais pourquoi je ne pouvais pas mettre ces fonctions dans mon prog CentraleAlarme.
Très bon travail.

Commentaire de jlen100 le 22/05/2006 20:31:23

salut EddiTheHead,
pour l'intégrer dans ton programme c'est assez simple:
tu vires ma fiche principale (la tienne faira l'affaire
tu rajoutes 4 capteurs les 4 vignettes et les 4 voyants , dans ton scan tu vas lire les capteurs et tu rajoutes le traitement
et évidemment tu rajoutes les unités Ad Hoc

et le tour est jouer

Note ausi que tu peux rajouter le déplacement des objets (les routines sont gérénrales puisque je fait appel à des TControl et tu peux aussi rajouter le changement de l'image de fond et tu sauvegardes le tout en fichier .INI

@+
jlen

Commentaire de Kenavo le 23/05/2006 09:17:23

Satut !

"j'étzis parti sur l'API AVICAP mais elle présente un gros défaut : c'est d'çtre complètement "aveugle" quand l'image est cachée".
FAUX ! Seulement en mode preview, mais pas en mode capture ! Heureusement, ma Doue benniget !

Ken@vo

Commentaire de jlen100 le 23/05/2006 09:52:59

salut kenavo,
la capture en fichier video dans cette application n'est pas d'une grande utilité;

d'ailleurs fais le test sur ta source mets un témoin ou un beep déclenché par la détection lance le programme et masque la fenêtre ou mets la en barre des tâches et.... plus rien c'est pour cela que je dis qu'AVICAP est aveugle et cela vient de l'API on n'y peut rien
Alors à moins que tu ais une astuce pour contourner le problème ça la rend inutilisable en détection.


@+
jlen

Commentaire de jlen100 le 23/05/2006 10:08:31

au fait kenavo il n'y a tout simplement pas d'évènement OnFrame si l'image n'est pas visble

@+
jlen

Commentaire de Kenavo le 23/05/2006 12:09:22

Ben si !
En utilisant la fonction capCaptureSequenceNoFile à la place de capCaptureSequence (donc pas de fichier créé)l'évènement OnFrame est généré à chaque trame; même si l'image est invisible ! C'est ça l'astuce : Capture, pas Preview !
Ken@vo

Commentaire de jlen100 le 23/05/2006 12:46:10

c'est bien sauf que le composant TCapture ne l'implémente pas
@+
jlen

Commentaire de jlen100 le 23/05/2006 12:55:46

ce serait bien aussi que TCApture implémente un captureframe en single frame (on n'a pas tujours besoin de recevoir les frames en continu et dans certains cas il vaut pouvoir choisir sa trame)

@+
jlen

Commentaire de Kenavo le 23/05/2006 15:46:46

Tu voulais une astuce pour les acquisitions à partir d'AVICAP ! Je te l'ai donnée ! Vrai que j'aurais pu l'intégrer dans TCapture ! Mea culpa !
J'avais remarqué cette fonction () et je me demandais à quoi elle servait.... et j'avais noté cette différence de comportement en cas de masquage de la visualisation par une autre fenêtre.  
Je cherche encore les explications à des fonctionnements "non contrôlés" de TCapture, mais je mettrais à jour bientôt !

Ken@vo

Commentaire de Kenavo le 23/05/2006 16:08:55

Je voulais parler de la fonction capCaptureSequenceNoFile bien sûr !

Commentaire de jlen100 le 23/05/2006 16:10:33

c'est pas très grave.
cela dit AVICAP est moins performant que l'acquisition avec directX et on note une nette différence sur la fluidité de l'affichage mais en contre partie il est plus gourmand en ressources.
Enfin il y avait un bug sur la sélection des caméras (certains modeles ne sont pas reconnus comme source video et comme c'était le cas du boitier c'était plutot gênant ) cela semble venir du GetDriverList qui ne les trouve pas tous bien qu'ils apparaissent dans la liste du gestionnaire de périphériques: en fait il le trouvait comme un second device0 quand je forçais l'assignation pas cool! là je n'ai rien compris à ce qui se passait et que c'est plutot surprenant puisque c'est directement la DLL qui gère cela
@+
jlen

Commentaire de jlen100 le 25/05/2006 10:26:21

salut francky,

C'est d'autant plus regrettable que cela porte sur un module qui n'est pas indispensable que je l'avais traité avec d'autres composants (turdoasynchropro utilisant TAPI) mais qui ne fonctionnait pas chez MAX: je referai cratinnement ce module.

Pour sa remarque sur la sugestion du module video il y a un gouffre entre suggerer une chose et en imaginer l'architecture et la réaliser et autant que je sache le propriétaire en est l'auteur et je pense , à tort ou à raison que cette source méritait d'être publiée tant pour son intérêt propre que par la façon dont j'ai abordé le problème. (il suffit d'ailleurs de voir le nombre de consultations en 4 jours: 850 pour s'en rendre compte)
Ce sera ma dernière réponse sur ce PB.

@+
jlen

Commentaire de mouchie le 25/05/2006 19:30:51

salut  jlen100

Je suis très intéressé  pour ton programme mais malheureusement je suis débutant en delphi  j’ai télécharger ton programme mais je ne sais pas comment installer les nouveau  composants .
es tu peut me dire comment en peut faire ça ?
et es qu’en peut installer se composant dans builder c++ et comment ?
Dans l’attente de votre réponse veuillez accepter mes salutations.
merci  

Commentaire de jlen100 le 25/05/2006 20:03:34

bonjour,
pour installer les composants:
tu mets le répertoire composant dans progrmammefile, borland
tu ouvres delphi
pour chaque composant tu fais fichier -->tout fermer
ensuite tu fais ouvrir et tu vas chercher le fichier *.dpk(delphi package)
ensuite tu fais compiler puis install en principe tu dois retrouver le composant dans la palette.
remarque TMED à quelques fois des difficultés à s'installer si c'est le cas tu fais fichier -->nouveau-->autre-->packet puis tu fais ajouter et tu ajoutes le fichier MED.PAS ensuite tu fais la procédure précédente.
pour le composant USR il faut le dezziper avant. (je vais modifier le module phone pour ne plus employer ce composant.)
Par contre ce programme ne se compile pas sous C++ (il faudrait le réecrire entièrement) pour les composants il est possible qu'ils existent pour C++ mais je n'ai pas regardé.

@+
jlen

Commentaire de jlen100 le 25/05/2006 23:27:08

bonsoir,

Pour couper cours à toutes polémiques sur le composant utilisé dans le module PHONE je reviens à la version initiale basée sur TurboPower Async Professional

@+
jlen

Commentaire de mouchie le 26/05/2006 13:17:39

salut
merci pour tes informations; j'ai suivi tous les etapes qu tu ma dit et j'arrivé a bien installer les composants mais quand j'exécute ton programme le compilateur lance une erreur " fichier variant non trouvé"
comment je peut résoudre ca ?
merci d'avance

Commentaire de jlen100 le 26/05/2006 13:19:55

peux tu m'indiquer le module et la ligne?

@+
jlen

Commentaire de jlen100 le 26/05/2006 13:43:06

peux tu aussi me dire quelle version de delphi?

@+
jlen

Commentaire de jlen100 le 26/05/2006 18:58:00

je viens de m'appercevoir que le code du module MAIL n'est pas portable sous D2005 et INDY 10 (il ne se compile tout simplement pas) Apparemment il y a eu une refonte complète du composant, comme il n'est pas documenté ..... et que l'on ne peut pas installer la version 9  je n'ai pas de solution à proposer.
Encore une chose à mettre au passif de D2005!!

@+
jlen

Commentaire de jlen100 le 27/05/2006 11:36:51

salut,
j'ai apporté la modifiction au module MAIL (Merci Cirec)
suite à la non portabilité du module ConfigMail sous Indy10 creation d'une version spécifique (ceci ne me satisafait pas entièrement mais c'est porutant la seule possibilité pour l'instant)
@+
jlen

Commentaire de cincap le 31/05/2006 14:57:09

Bonjour JLEN,

Après test du module téléphone et avec 3 cartes modem data/fax/voice différentes, aucune reconnaissance et trans mission correcte du fichier wav.

Une fois le bouton général On/Off enclenché, les modules cochés pour la transmission fonctionnent (tél (bip), email, sons, sauvegarde image) par contre, si tu remets ce bouton général sur Off, seul le son n'est plus actif, le reste continue à fonctionner.

@+,

Cincap alias Max

Commentaire de jlen100 le 31/05/2006 15:26:46

salut,
excuse moi mais je n'avais pas encore eu le temps de te répondre (surtout que l'ADSL était OUT et que sans laison internet pas facile de venir sur le site ou de répondre à des mails)
pour le bouton OFF la sppression du flag alarme a disparue quand je n'ai gardé qu'un seul bouton marche /arret
il faut rajouter une ligne Alarme:= false dans le onclick du bouton:
procedure TCameras.BtONOFFClick(Sender: TObject);
begin
  with sender as TSpeedbutton do
  if tag=1 then
  begin
    code.ShowModal;
    if  Resultatcode  then
    begin
      Caption:='ON';
      alarme:=false;
      Font.Color:=clgreen;
      controlpanel.Visible:=true;
      tag:=0;
    end;
  end
pour les sauvegardes d'image c'est indépendant de l'état du bouton cela ne dépend que des checkbox "sauvegarde image" et "detection"
je posterai le Zip corrigé
pour le modem cela doit être un modem analogique tout autre modem simulant ce fonctionnement ne pourra pas fonctionner (en sortie un wav est de l'analogique et faire passer de l'analogique dans une modem numérique ne peut pas aller)

@+
jlen

Commentaire de cincap le 31/05/2006 15:35:21

Merci pour le On/Off, pour le modem, l'essai portait sur un numérique et analogique d'après le vendeur, le principal est le 56KPCIHARDWARE de chez Sweex et le répondeur intégré lit pourtant les messages wav tandis que l'application non.

@+,

Cincap

Commentaire de jlen100 le 31/05/2006 15:59:55

j'ai fais le test (juste pour le modem) sur un vieux PC (le pauvre n'a même pas d'USB mais équipé d'un modem analogique et cela fonctionnait. Problème ce PC est tellement ancien que je ne peux pas récupérer le modem (pas le bon type de slot et en plus on ne trouve pas de driver pour XP) j'ai commandé un modem analogique et je vous tiens au courant.

@+
jlen

Commentaire de cincap le 31/05/2006 17:53:51

Ce serait intéressant de savoir quel type de modem analogique et de quelle marque, convient pour cette application car mes tests étaient bien avec des modems analogiques et l'appel se faisait correctement mais le wav n'était pas audible sur un Gsm naturellement.

@+,

Cincap

Commentaire de christophe25021981 le 06/06/2006 10:39:15

Salut!Il ne m'écrit pas bien en français.Mais ce programme est vraiment bon.Je plie la considération administrateurs de ce portail!

Commentaire de cincap le 12/06/2006 19:51:58

Bonjour Jlen100,

ne crois tu pas en ce qui concerne le module téléphone, qu'il vaudrait mieux utiliser un simple Tedit afin de rentrer au choix un n° de Gsm ou de téléphone privé.

En effet, en Belgique la numérotation d'un téléphone particulier est de 9 chiffres et celui d'un Gsm est de 10 chiffres.

A moins de permettre cette différence avec le Teditmask.

Dans le module "paramétrage des zones, il me semble que cela gafouille, après avoir configuré la zone de sélection pour les 2 caméras, au prochain démarrage, les zones sont bien reconnues mais si on clique sur le bouton "rafraichir" puis sur le bouton "voir zone" on se retrouve avec une autre zone sur le coin supérieur gauche mais en cliquant sur le bouton "voir toutes les zones" on retrouve en plus sa zone d'origine.

@+,

Cincap

Commentaire de jlen100 le 12/06/2006 20:18:14

bonjour,
pour le maskedit il présente l'avantage d'éliminer les erreurs de saisie(en ce qui concerne les le filtrage ds touches) j'ignorais la particularité belge en ce qui concerne cette différence. pour passer à un simple TEdit il faut rajouter un filtrage.
pour l'affichage de la zone en haut à droite il y à effectivemnt un petit bug d'affichage (apparamment je ne rafraichis pas les coordonnées de la zone courante d'affichage) je regarde cela et je mets les sources à jour.
NB pour le modem je n'ai pas trouvé pour l'instant de solution satisfaisante pour la transmission du message que je passe par TAPI ou par des memorystream le résultat est décevant (pour ne pas dire plus) et comme le modem n'a pas supporté les mauvais traitements que je lui ait fait subir je m'oriente vers une autre solution.(plus de hard et moins de soft mais en contrepartie un modem standard et pas de composant spéciaux : le dial tient en 10 lignes)


@+
jlen

Commentaire de jlen100 le 12/06/2006 21:10:31

bonsoir, en attendant que j'ai posté une nouvelle mouture des sources qui comprendar également des fonctionnalités supplémentaire vous pouvez modifier l'unité U_Parcam dans le bouton d'affichage d'uen zone comme suit:
procedure TParamZones.BAfficheZoneClick(Sender: TObject);
begin
  modifzone:=false;
  with ParCam[0] do
  begin
    if mask[ENumZone.Value].defined then
    begin
      FirstCell:= mask[ENumZone.Value].Haut;
      LastCell:=  mask[ENumZone.Value].Bas;
      AfficheZone (FirstCell,LastCell);
    end;
//    AfficheZone (FirstCell,LastCell);
  end;
end;

cela supprime le bug signalé par cincap

@+
jlen

Commentaire de cincap le 29/06/2006 08:17:06

Bonjour,

A la 1ère exécution, et après paramétrage, l'écran de gauche se positionne mal.
Le fait de relancer l'application corrige ce positionnement.
Jlen a raison le modem 56KPciHardware de chez Sweek est idéal pour cette application.
Toujours 10/10 pour l'application.

Cincap

Commentaire de jlen100 le 29/06/2006 11:16:45

voila qui est réparé.
Un HD m'ayant lachement abandonné la mise à jour n'était.....pas à jour
le bug est du à l'autosize de la fiche qui ne replace pas les composants à leur place. Bizarre

Commentaire de cincap le 29/06/2006 12:45:59

Re bonjour,
En ce qui concerne l'alerte par émail et par téléphone, elles ne sont pas actives malgré l'alerte checkée et le bouton ON.

@+

Cincap

Commentaire de jlen100 le 29/06/2006 12:52:44

je regarde cela certainement encore un morceau qui est resté dans le HD

Commentaire de cincap le 29/06/2006 12:54:49

Suite, la fiche setup n'accepte pas le paramétrage du bouton "Ok" il suffit de le mettre à MrOk dans modalresult.

Continuation des tests.

Cincap

Commentaire de jlen100 le 29/06/2006 14:04:47

Attention j'ai oublié de préciser il y a un petit piège dans l'utilisation: j'ai rajouté une temporisation de mise en service(eh oui il faut quand avoir le temps de quiter la picéce avant de sonner la charge!!) elle est réglée par défaut à 5 minutes et est paramètrable dans le SETUP paramètre mise en service après X mn.
quoi il en soit il y a quand même un reste de mise à jour non effectuée : pour la fiche phone mettre timer1 a true dans l'inspecteur d'objet
normalement tout doit rentrer dans l'ordre.

@+
jlen

Commentaire de cincap le 28/07/2006 13:23:51

Bonjour Jlen100,

Avec l'interface "Surveillance par webcam" concernant le module "Web", j'ai modifié la fonction de récupération de l'IP afin d'éviter de passer par le site qui communique un cheval de troie (http://filezilla.sourceforge.net/misc/ip.php).

Dans la source que tu as communiquée dernièrement concernant cette application, il y a des fiches qui correspondent à la version avec interface microprocesseur, comme la fiche "Falarm".

@+

Commentaire de jlen100 le 28/07/2006 21:36:14

bonsoir
pour le cheval de Troie les anti virus le bloque (encore faut-il en avoir un et qu'il soit à jour mais pour les anxieux je modifierai la fonction getlocalIP en proposant 4 sites au choix:
function TFServer.GetLocalIp: string;
var HTMLSource:string;
  wsaData: TWSAData;
  addr: TSockAddrIn;
  Phe: PHostEnt;
  szHostName: array[0..128] of Char;
  BeginDelimit,EndDelimit:integer;
begin
  if RadioButton1.Checked then
  begin
try
    try
      if WSAStartup($101, WSAData) <> 0 then
        raise Exception.Create('Cannot initialize WSA');
      try
        if GetHostName(szHostName, 128) <> SOCKET_ERROR then
        begin
          Phe := GetHostByName(szHostName);
          if Assigned(Phe) then
          begin
            addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
            Result := inet_ntoa(addr.sin_addr);
          end;
        end;
      finally
        WSACleanup;
      end;
    except
      on e:Exception do begin
        Result:='Error: '+e.Message;
        raise;
      end else
        raise;
    end;
  finally
    //
  end;
  end;
  if RadioButton2.Checked then
  begin
  Try
    HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
    delete(HTMLSource,1,pos(':',HTMLSource)+1);
    delete(HTMLSource,pos('<',HTMLSource),80);
    result:=HTMLSource;
  end;
  Except
//  Result:=false;
  end;
  if RadioButton3.Checked then
  Try
   result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
//Dommage car la procédure était particulièrement simple!!!
  Except
//  Result:=false;
  end;
  if RadioButton4.Checked then// ce site m'a été proposé par francky
  begin
  Try
    HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
    BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
    EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
    Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
  Except
//  Result:=false;
  end;
  end;
  IPServer.Text:=Result;//'Automatic Ip detection: '+
end;

pour la fiche FAlarm si ces 2 unités ont le même nom les fonctionnalités sont sensiblement différentes.
dans le cas de la version avec interface microprocesseur elle ne fait qu'afficher l'alarme alors qiue dans le programme de vidéosurveillance elle centralise et traite les défauts et est capable des gérer les défauts d'autres modules (non encore implémentés)elle génère en plus l'alarme sonore (celle du programme que tu cite ne fait qu'afficher la fiche)
J'ai préféré cette structure centralisée plutot que d'avoir à traiter les défauts dans chacun des modules

@+
jlen

Commentaire de cincap le 28/07/2006 22:21:46

Bonsoir Jlen100,

Ce troyen est un redoutable, un antivirus simple ne le détecte pas nécessairement.

Voici une méthode plus rationnelle me semble t'il et sans faire appel à un site :

***************************************
uses
Winsock,

function TFServer.GetLocalIp: string;
type
  TaPInAddr = array [0..10] of PInAddr;
  PaPInAddr = ^TaPInAddr;
var
  phe : PHostEnt;
  pptr : PaPInAddr;
  Buffer : array [0..63] of char;
  I       : Integer;
  GInitData           : TWSADATA;
  ip_machine:string;
begin
  
WSAStartup($101, GInitData);
  ip_machine:='';
  GetHostName(Buffer, SizeOf(Buffer));
  phe :=GetHostByName(buffer);
  if phe = nil then Exit;
  pptr := PaPInAddr(Phe^.h_addr_list);
  I := 0;
  while pptr^[I] <> nil do begin
      // l'IP est stockée ci-dessous
      ip_machine := StrPas(inet_ntoa(pptr^[I]^));
      IPServer.Text:= ip_machine;
      Inc(I);
  end;
  WSACleanup;
end;
**********************************************************

@+,

Cincap

Commentaire de jlen100 le 28/07/2006 22:47:44

si tu ne fais pas appel un site et si tu as un routeur l'adresse ne sera pas accessible la solution que tu donnes est celle du RadioButton1 à peu de chose près

@+
jlen

Commentaire de cincap le 29/07/2006 07:32:23

Bonjour Jlen100,

Dans le cas du routeur, c'est peut être vrai je n'ai pas testé, mais dans les autres cas cela fonctionne.

C'est vrai que les fonctions en Delphi peuvent se ressembler, c'est pour cela que par émail et ici je t'avisais par ces termes, "j'ai modifié la fonction de récupération de l'IP... " que j'avais du modifier la fonction à cause de cette intrusion vicieuse.

Ceci dit la solution que tu préconises, permet maintenant le choix à l'utilisateur de connaître son Ip avec ou sans routeur et sans troyen.

@+,

Cincap

Commentaire de cincap le 29/07/2006 09:47:31

Je viens d'essayer ta solution, je constate une erreur à la ligne suivante :

if RadioButton2.Checked then
  begin
  Try
    HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
    delete(HTMLSource,1,pos(':',HTMLSource)+1);
    delete(HTMLSource,pos('<',HTMLSource),80);
    result:=HTMLSource;

  end;//ICI, impossible de compiler sauf après enlèvement !

De plus après enlèvement du "end;" compilation et seul le radiobutton2 checked fonctionne.

Continuation des tests.

@+,

Cincap

Commentaire de jlen100 le 29/07/2006 09:52:48

un avatar su copié collé!!
ceci focntionne chez moi:
function TFServer.GetLocalIp: string;
var HTMLSource:string;
  wsaData: TWSAData;
  addr: TSockAddrIn;
  Phe: PHostEnt;
  szHostName: array[0..128] of Char;
  BeginDelimit,EndDelimit:integer;
begin
  if RadioButton1.Checked then
  begin
try
    try
      if WSAStartup($101, WSAData) <> 0 then
        raise Exception.Create('Cannot initialize WSA');
      try
        if GetHostName(szHostName, 128) <> SOCKET_ERROR then
        begin
          Phe := GetHostByName(szHostName);
          if Assigned(Phe) then
          begin
            addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
            Result := inet_ntoa(addr.sin_addr);
          end;
        end;
      finally
        WSACleanup;
      end;
    except
      on e:Exception do begin
        Result:='Error: '+e.Message;
        raise;
      end else
        raise;
    end;
  finally
    //StaticText1.Caption:='Automatic Ip detection: '+Result;
  end;
  end;
  if RadioButton2.Checked then
  begin
  Try
    HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
    delete(HTMLSource,1,pos(':',HTMLSource)+1);
    delete(HTMLSource,pos('<',HTMLSource),80);
    result:=HTMLSource;
  Except
//  Result:=false;
  end;
  end;
  if RadioButton3.Checked then
  Try
   result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
  Except
//  Result:=false;
  end;
  if RadioButton4.Checked then
  begin
  Try
    HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
    BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
    EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
    Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
  Except
//  Result:=false;
  end;
  end;
  IPServer.Text:=Result;//'Automatic Ip detection: '
end;
@+
jlen

Commentaire de cincap le 29/07/2006 10:24:49

C'est Ok maintenant.

Excellent travail et que d'heures passées gratuitement !

@+,

Cincap

Commentaire de jlen100 le 29/07/2006 10:38:33

petit nota en passant : il faut également modifier le fichier .INI pour qu'il conserve la sélection!!
@+
jlen

Commentaire de jlen100 le 29/07/2006 10:54:04

pour sauvegarder la sélection du mode recherche de l'IP en fichier.INI

dans le Formclose rajouter:
  for i:=1 to 4 do
  begin
    if TRadioButton(FindComponent('RadioButton'+inttostr(i))).Checked then break;
  end;
.
.
.
  fIniFile.WriteInteger('Internet', 'ModeIP',i);
et dans le formCreate:

  i:= fIniFile.ReadInteger('Internet', 'ModeIP',1);
  TRadioButton(FindComponent('RadioButton'+inttostr(i))).Checked:=true;

@+
jlen

Commentaire de cincap le 08/09/2006 13:30:41

Je reviens à ce projet car je pense qu'il a une anomalie au sujet de l'envoi des mails.
Au démarrage de l'application, l'envoi du mail est coché, l'envoi des photos aussi et la detéction aussi mais pas la mise en veille avec le bouton ON, dès une détection, l'envoi des mails ne se fait pas ce qui me semble normal.
Maintenant, le bouton ON est activé, dès une détection,l'envoi des mails se fait correctement, ce qui est aussi normal.
Par contre, si on désactive la centrale par le bouton ON, dès une détection, l'envoi des mails reste activé et ce n'est pas normal à mon avis.

@+,

Cincap

Commentaire de cincap le 10/11/2006 00:34:35

Bonsoir,

Après plusieurs tests, j'ai constaté qu'avec un routeur Wifi, l'Ip est reconnue soit au pc (local) soit avec le routeur mais alors impossible de se connecter avec le module web (accès denied).

@+,

Cincap alias Max le solitaire

Commentaire de cincap le 19/11/2006 16:29:01

Ho ho, il y a toujours quelqu'un pour répondre aux questions ?

Bonjour,

Serait t'il possible d'ajouter une image comme background à la page htlm visionnée depuis internet concernant le module web.
(page ou sont représentées les caméras)comme un thème par ex.

Mes essais ne donnent rien sauf si on appelle la page directement sur Iexploreur, je pense qu'il faut rajouter un lien concernant l'image du background car en fait cette page est créée dynamiquement par le module web et ne charge que les images provenant des caméras et pas l'image du backgroud placée dans un dossier, à moins d'utiliser une page htlm indépendante.

Qu'en pensez vous ?

Cincap

Commentaire de Z abidine le 21/11/2006 09:04:55

Bonjour
j'ai consulter votre travail il est de bon qualite c'est un programme des expert.
  j'ai des question:
    1- quel est le type des camera(webcam/normal) .
    2- est ce que les camera sont liees a un seul pc ou (1camera pour 1 pc)
       si la premiere cas coment en peu liees ces 4 camera avec 1 seul pc .
    

Commentaire de jlen100 le 21/11/2006 09:12:58

bonjour,
ce sont des WEBCAM
en modifiant le programme il est possible de récupérer les images d'une caméra IP
pour les caméras video il faut passer par une interface
les 4 cameras sont sur le même PC, il suffit de disposer de 4 ports USB

@+
jlen

Commentaire de cincap le 21/11/2006 13:12:36

Salut Jlen100,

Pourquoi avec un routeur wifi et après détection de l'IP, il est impossible d'accéder à la page représentant les caméras alors que sans le routeur cela fonctionne.

Pourquoi en passant par le module web, la page représentant les caméras ne peut pas afficher le backgroud image afin de l'embellir alors que séparée cela fonctionne avec ce code :

<body style="WIDTH: 400px; HEIGHT: 400px" bgproperties="fixed" background="1.jpg">.

@+,

Cincap

Commentaire de jlen100 le 21/11/2006 14:15:15

salut,
pour le routeur je pense que cela vient de la configuration du routeur mais à défaut de la doc et de test je ne peux pas endire plus
pour le background il est chargé avec la page or l'image n'est chargée qu'après il esr donc normal qu'elle ne puisse pas servir de fond

@+
jlen

Commentaire de cincap le 21/11/2006 16:30:59

Le routeur est un wifi philips : http://www.belgacom.be/private/fr/jsp/dynamic/product.jsp?dcrName=hbs_ad_wrlp_phil_g.

Pour le background, il n'est donc pas possible de rajouter un theme même si on utilise une page htlm séparée !

@+,
Cincap

Commentaire de cincap le 22/11/2006 19:26:53

Bonjour,

Suite à ma demande d'intégrer une image comme fond sur la page affichant les caméras, voici un lien d'un soft assez complet :

http://www.biromsoft.com/webcam/

@+,

Cincap

Commentaire de salimouu le 31/12/2006 15:03:28

je veux savoir une chose, ou es la hard dans tous ça?

Commentaire de fersouce le 10/01/2007 10:07:36

Salut a tous j'ai essayé de faire exécuté ce programme mais j’ai vu le Composant   TvideoCapture Manquant .comment l’ajouter SVP.

Commentaire de jlen100 le 10/01/2007 10:19:48

Bonjour à tous, de retour de voyage à l'étranger je vai répondre aux derniers commeentaires
-->salimou ici ce n'est que du soft. le seul hard concerne les caméras (ça marche mieux avec!!)

--->fersouce le composant videocapture est dans le zip mais faut l'installer attention à installer la bonne version

@+
jlen

Commentaire de fersouce le 10/01/2007 11:31:49

Ou exactement dans le zip

Commentaire de fersouce le 10/01/2007 11:35:38

vous parlez de quel zip

Commentaire de cincap le 10/01/2007 12:25:21

Bonjour,

@ JLen100, tes vacances se sont bien passées, pour ma part c'est au mois de mars (Malaga).

A quand la suite de ce soft génial ?

@ FERSOUCE, lève les yeux jusqu'à voir "Télécharger le ZIP" et tu constateras que JLEN100 a même prévu plusieures versions remaniées par ses soins.

Bonne programmation.

Cincap

Commentaire de jlen100 le 10/01/2007 12:50:54

je ne suis que de passage en France et je dois bientot repartir pour organiser une expo. donc pour l'instant la suite est toujours dans les cartons et pourtant il ne reste pas grand chose à faire.... mais je n'ai que deux mains et une tête et hélas les journées n'ont que 24h
--->fersouce il n'y a qu'un seul zip il faut simplement faire attention à la version de DELPHI utilisé

jlen

mon site jlen.fr

Commentaire de fersouce le 10/01/2007 14:09:07

Paradant j’été mené a ce projet a partir  d’un autre projet (WEBCAM+ MICROSERVEUR HTTP = WEBCAM IP (INDY 9 ET INDY 10) c’est pour ça qu’on parler pas de même
Contenu du fichier l’autre n’avais pas un répertoire Composant ce pendant je n’arrive toujours pas a exploité ce projet car je ne sait pas comment installer les composant

Commentaire de cincap le 10/01/2007 16:24:27

L'ami Grandvisir à réalisé un excellent tutorial à ce sujet.

http://www.delphifr.com/tutorial.aspx?id=86

@+,

Cincap

Commentaire de sofinf2006 le 23/04/2007 19:42:01

salut , c'est bien lu votre application , j'ai une erreur lors de la compilation

class TspinEdit non trouvé??

Je met 10/10 comme note et bon travail

Commentaire de cincap le 23/04/2007 19:49:20

Bonsoir,

Peus tu préciser avec quelle version Delphi.

@+,

Cincap

Commentaire de jlen100 le 23/04/2007 19:49:53

merci pour la note.

pour l'erreur de compilation quelle version de Delphi utilises-tu?

Commentaire de jlen100 le 23/04/2007 20:03:49

salut cincap tu m'as devancé d'une poignée de secondes!!

Commentaire de cincap le 23/04/2007 21:09:45

Bonsoir Jlen100, en effet, une erreur avec le Tspinedit est invraisemblable.

Sinon j'espère que tu vas bien depuis ce temps ?

@+,

Cincap

Commentaire de jlen100 le 23/04/2007 21:22:10

ça va de passage en France le temps de finir préparer l'exposition à raison de 2 à 3 tableaux par semaine cela devrait bientot être bon. si tu vas voir sur jlen.fr dans les pages "nouveau" et "atelier" tu auras une idée de la nouvelle collection ( enfin tout ne sera pas exposé question d'homogénétité dans les thèmes) ensuite plusieurs sont prévues cette année.(ma nouvelle compagne fait aussi office d'agent et est très (trop!!)active) enfin je devrai m'en sortir

Commentaire de cincap le 24/04/2007 07:47:59

Bonjour à tous,

@ jlen100, je suis allé voir le site et tes nouveaux projets, superbes comme d'habitude, je comprends vu la quantité de news tableaux que la programation reste en standby.

Vivement que tu retravailles sur cette source.

Bonne continuation dans la peinture.

@+,

Cincap

Commentaire de sofinf2006 le 24/04/2007 10:36:19

Bonjour les amis , j'utilise delphi6 , j'ai tjs l'erreur tspinedit not found, autre chose , je suis entrain de creer une societe specialisé dans la domotique  , parmi mes produits un système de sécurité que j'ai appelai "smart-house", je cherche à creer mmoi même mes logiciels et interfaces electronique ,je peux vous aider pour rendre votre systeme professionnel , on y ajoutant les contraintes du mondes réél
merci

Commentaire de jlen100 le 24/04/2007 11:00:56

je suis assez surpris que D6 ne reconnaisse pas le spinedit. je l'ai compilé à l'époque avec une version D6 pro (elle n'esy pas installée sur ce PC) sans problème. Si tel est le cas il te faudra refaire le composant ou le trouver il s'agit d'un edit en numérque avec 2 boutons pour incrémenter et décrémenter.

salut
jlen100

Commentaire de cincap le 24/04/2007 11:17:14

Je suggère au membre "sofinf2006" de réinstaller D6 car de base se composant s'y trouve et de plus je travaille aussi sur D6 et tout fonctionne correctement indépendamment des petits oublis lors de la mise à jour du disque dur de jlen100.

Cette source est donc stable et fiable.

@+,

Cincap

Commentaire de Francky23012301 le 24/04/2007 23:17:46

Salut Jacques,

J'espère que tu vas bien. Curiosité oblige j'ai été voir tes nouvelles toiles : elles sont superbes. Les couleurs chaudes c'est .. wahou enfin j'aime beaucoup.

Prend soin de toi et revient nous vite (ca commence à faire quelques mois que tu n'es plus avec nous et ca manque).

@+

Commentaire de jlen100 le 24/04/2007 23:47:30

salut francky,

ça va bien un peu surbooké comme d'habitude, entre les voyages la préparation des expos, le site et les expos j'ai un peu de mal à faire surface. je repars la semaine prochaine à Marseille, la semaine suivante je suis sur Paris ensuite je dois préparer mon voyage aux US. pas vraiment le temps de travailler sur Delphi bien que je regrette de ne pouvoir ajouter quelques fonctionnalités à ce programme qui sont toujours dans les cartons ou de participer au forum.
Nouvelle vie nouvelle compagne, nouvelle muse et nouvelle source d'inspiration. La nouvelle collection alie le chaud où explose les couleurs et le  froid tout en délicatesse.
suis le site je le mets à jour tous les 2 ou 3 jours (le temps de faire un tableau)

@+
jlen

Commentaire de daminovich le 03/05/2007 13:47:48

salut,
tout dabord je te félicite pour ce travail,et j'ai des questions:
-comment je peut faire l'enregistrement?
-a quoi sert la form FGraphConfig?
-si j'ai des cameras IP quel sont les modification a faire?
et merci beaucoup

Commentaire de jlen100 le 03/05/2007 15:12:09

bonjour,
actuellement l'enregistrement peut se faire image par image et pour chaque chaque camera (on enregistre une image par détection)
en règle générale cela suffit pour garder la trace de l'intrusion.
Pour enregistrer une video il faut modifier la procedure et déclencher l'enregistrement et le stopper par un timer.
la form FGraphConfig est utilisée par videocapture pour le paramétrage.
il est possible des caméras IP mais il faut modifier le programme.
le fonctionnement de ces caméras est différents des webcam, elle n'envoient en principe des images que sur demande le problème c'est qu'il n'existe pas à ma connaissance de standart. en règle générale on on leur envoie une commande html et elle renvoie une page contenant l'image, on peut la récupérer dans un stream puis la transférer dans le bitmap (opération inverse de celle que j'effectue dans le module internet). il faut également modifier le setup pour paramètrer la caméra. Compte tenu de la diversité des modèles et l'impossibilité de tester les solutions  il m'est impossible de traiter et de donner une solution générale.
@+
jlen

Commentaire de daminovich le 03/05/2007 20:25:50

merci,
si vous pouvez m'aider concernant l'enregistrement video et me renseignez sur les modification(les instruction de l'enregistrement)car j'ai pas une grande idée sur le composant Tvideocapture(Vcap)et j'ai pas de 'help' sur lui.
si vous avez un help sur le composant Tvideocapture svp ajoutez le fichiez zip.

-il n'ya aucun lien entre les forms du projet et la form Fgraphconfig!
comment je peut acceder a cette form?

merci beaucoup.

Commentaire de jlen100 le 03/05/2007 20:59:34

je te déconseille d'appeler directement la form Fgraphconfig en effet avec 4 cameras et 6 composants possible elle est assez difficile à manipuler et les risques de plantage sont importants, aussi j'appelle les fonctions dans l'unité U_choisevideo.

pour l'enregistrement ce sont les fonctions VideoCaptureXX.startcapture(true)pour lancer l'enregistrement et VideoCaptureXX.stopcapture pour l'arrêter la video est enregistrée dans le fichier video définit dans TempCaptureFileName du composant

il n'y a pas de fichier d'aide pour ce composant

@+
jlen

Commentaire de daminovich le 04/05/2007 14:41:55

merci beaucoup pour ton aide,
mais où je dois définir le fichier video?
dans les propriétés du VideocaptureXX ou je dois l'appeler après le startcapture(true) et comment?
merci encore,

Commentaire de cincap le 04/05/2007 16:53:36

Bonjour à tous,

@ Jlen100 as tu remarqué à la 1ère utilisation du logiciel, et après avoir rempli tes paramètres dans les modules adéquats, dans la fiche setup tu as le choix de choisir un message vocal et de l'écouter.

Seulement, tu n'as pas la possibilité de le valider même en fermant la fiche "Setup", il faut que tu redémarres le logiciel pour le faire.

Peut être une trace de ton ancien disque dur qui avait rendu l'âme.

Sinon j'espère que tu as le temps de siroter un bon pastis.

@+,

Cincap

Commentaire de jlen100 le 05/05/2007 09:56:07

-->daminovich il faut définir le fichier avant d'appeler startcapture soit en le définissant dans la propriété soit ce qui est mieux en faisant:
VideocaptureXX.tempcapturefilename:='nom_du_fichier';
ensuite tu peux renommer le fichier (ce qui préférable puisque ce fichier sera écrasé)
-->cincap je n'avais pas remarqué ce phénomène, c'est possible que ce soit un reste de la version précédente, j'y jetterai un oeil à l'occasion

Merci de la remarque

aujourd'hui il fait beau mais le vent c'est levé enfin on ne pas tout avoir!!

@+

jlen

Commentaire de cincap le 05/05/2007 11:07:22

Bonjour à tous,

@ Jlen100, j'ai remédier à ce problème en modifiant ceci :

procedure TSetUp.bwavClick(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
     EMessage.Text:=OpenDialog1.FileName;
  end;

  if EMessage.Text=OpenDialog1.FileName
// Au lieu de EMessage.Text= ''
then
  begin
     CBVoiceEnable.Enabled:=true; //Au lieu de false
  end;

end;

@+,

Cincap

Commentaire de jlen100 le 05/05/2007 11:12:41

merci je modifierai la source

@+
jlen

Commentaire de cincap le 05/05/2007 15:45:07

Bonjour à tous,

En fait après utilisation, j'ai préféré ceci :

Dans le module "Setup"

procedure TSetUp.bwavClick(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
     EMessage.Text:=OpenDialog1.FileName;
  CBVoiceEnable.Enabled:=true ;
  end;
   end;

Dans le cas d'une annulation,CBVoiceEnable.Enabled reste false.

@+,

Cincap

Commentaire de daminovich le 06/05/2007 19:35:23

salut,
j'ai procede comme vous m'aviez dit mais je trouve pas le fichier .avi(tempvideocapture name.avi),
en principe ou je doit le trouver(sous quel dossier)?
car je l'ai pas trouvé sous le dossier a partir du quel j'ai lancer l'application,j'ai meme utiliser un dialogue de type save et j'ai pas réussi(VideoCaptureXX.startcapture(dialogue.execute))et aprés le choix du fichier desirer je le trouve pas.peut etre il me manque une instruction.
merci beaucoup.

Commentaire de cincap le 06/06/2007 15:08:59

Bonjour à tous,

@Jlen100, j'ai aussi constaté qu'une fois les paramètres des webcams effectués, si tu choisis un plan dans un autre répertoire de l'application, le fichier ".inx" est sauvé dans ce dernier répertoire à la fermeture de l'application et donc au démarrage il faut recommencer.

Même chôse si on ajoute un fichier aide dans un repertoire "Aide", pour le choix d'un skin dans son dossier "Skins", pour le choix d'un son etc...

L'idéal serait de forcer l'application a sauver le fichier ".inx" dans son propre répertoire comme pour l'aide, les sons, le plan.

@+,

Cincap

Commentaire de daminovich le 10/06/2007 19:02:23

salut jlen comment sava
svp eske vou avé une idé sur l'algorithme de detection de mouvement avec lekel le composant TMED fonctionne et merci beaucoup

Commentaire de lassad_haddaji le 27/07/2007 20:16:49

salut
je ne peus pas te remercie plus que les autres mais bravo tres fort pour cette realisation j'ai le telecharger car ma attirer le nom de projet et j'espére ke j'auri le Delphi pour l'executer encore un grand merci.

          Le savoir n'est bon que s'il est partagé.

Commentaire de cincap le 07/02/2008 11:41:24

Bonjour à toutes et à tous,

@jlen100, j'ai constaté avec certaines webcam que lors d'une détection, l'image sauvegardée était floue.

Serait t'il possible de faire en sorte de prendre la photo dès que la détection est terminée (témoin rouge éteint).

Soit en incluant un timer ?

Merci de ta réponse.

@+,

Cincap

Commentaire de cincap le 18/02/2008 11:33:14

Bonjour à toutes et à tous,

@ Daminovich, en fait pour sauvegarder un fichier *.avi, il suffit d'ajouter ceci :

1) Dans le oncreate de la fiche "Caméras" (éfface éventuellement ce qui est dans les propriétés) :

Videocapture1.tempcapturefilename:= 'captemp.avi' ;
Videocapture1.capturefilename:= 'capture.avi' ;

Tu peus spécifier un répertoire et un autre nom pour ton fichier *.avi.

2) Ensuite tu ajoutes un bouton pour le play pas besoin du stop :

procedure TCameras.BStartClick(Sender: TObject);
begin
VideoCapture1.startcapture(true) ;
end;

3) Dans les propriétés de chaque composant "Videocapture" tu écris ceci :

TimeLimit = 5 //Remplace le bouton stop

UseTempFile = true

UseTimeLimit = true //Remplace le bouton stop

Cordialement,

Cincap


Commentaire de dok flintvb le 17/03/2008 17:09:21

Bonjour ,
ca marche et l'alerte telephonique c'est ce que je cherchais et en plus il ne faut pas avoir d'abonnement telephonique specifique.
c'est genial ,MERCI

Commentaire de cincap le 21/03/2008 09:27:03

Bonjour à toutes et à tous,

Dans l'unité Fserver, un code Html est créé dynamiquement.

Ce code permet le refresh de la page entière suivant le délai choisi de 1s à 30s.

Y a t'il quelqu'un qui pourrait adapter ce code pour le refresh de l'image seule mais sans devoir les mettres en cache, car si on place une image comme background de cette page, le refresh de la page se perçoit sauf si le background est en couleur par contre le refresh de l'image passera inaperçut.

Merci d'avance,

@+,

Cincap

Commentaire de strobinateur le 23/03/2009 15:32:55 10/10

Bonjour, cette source est vraiment très bien! Je remercie l'auteur pour ce partage! Sous delphi 2007 j'ai eu le bug du ifdef, résolu grâce aux commentaires ci-dessus.
je vais m'acheter une autre webcam pour mieux tester, je vais essayer de rajouter le redimensionnement des fenêtres à terme afin d'avoir 4 fenêtres en pleine écran avec une résolution de bureau de 1024

En tous cas merci pour cette application fonctionnelle et vraiment compète!

Commentaire de systy le 07/05/2009 17:32:13

Bonjour j aimerais de l aide pour installer ton programme. si quelqun peut me dire comment sa fonctionne. merci  ducmaxime@gmail.com

Commentaire de systy le 07/05/2009 17:34:30

j aimerai surtout savoir comment faire pour executer le programme afin d afficher ma webcam. Puis ensuite comment mettre cette meme webcam sur mon site perso.merci

Commentaire de migangel le 14/10/2009 05:39:56

bonjour à tous,

Je développe un système pour contrôler les caméras IP, CCTV, godt si cette source ne peut m'aider.

Quelqu'un peut-il m'aider à trouver une source d'utiliser des caméras IP?

Merci.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Video sur msn [ par Qualvin ] J'aimerais pouvoir faire une application qui afficherais mes videos dans la section webcam de MSN, quelqu'un a une idée de comment ça serait possible? lire une video a partir d'internet [ par bazbazus ] bonjour a tous alors je veut creer une application delphi qui affiche mes video qui sont uploader dans youtube merci de me répondre Webcam et site internet [ par justodge ] bonjour &#224; tous, je suis dans un projet et je cherche &#224; visualiser une webcam sur un site internet cr&#233;er avec le serveur apache.comment couleur d'un pixel d'une video webcam [ par serbon ] BonjourJe suis en train de faire un orgue lazer: le principe est simple, des lazer tombes du plafond, et se réfléchissent vers un écran, lequel est fi Bug de débutant avec un mediaplayer [ par noz666 ] Bonjour a tous,Ayant commencé hier soir mon apprentissage delphi ne me blamez pas trop vite :p Voila j'essaye pour mes début de faire un bête petit pl Comment connaître le débit de ma connexion internet [ par yokochimada ] Salut à tous!je voulais savoir s'il existait un source delphi qui permet de connaître le débit entrant de ma connexion internet, et aussi détecter le message d'erreur [ par ssd ] Bonsoir, j'ai créer une petite application qui ouvre une page internet, apres avoir effectue une recherchelors de l'ouverture de la page, un message d desactiver clic droit sous internet explorer [ par ssd ] Bonjour, comment faire pour desactiver le clic droit d'internet explorer , sous un Twebrowser ???d'avance merci. besoin d'aide INTERNET [ par ssd ] Je voudrais savoir si il est possible de :1 -  Remplir un champ texte d'une page internet qui n'est pas sur mon serveur mais dont je connais le nom, g Internet et delphi 2005 [ par dxh_master ] jai un problème !!tout les programme qui utilise internet ou le réseau local mon delphi 2005 ne trouve pas la librairie nessaisssaire!es que delphi 20


Nos sponsors


Sondage...

Comparez les prix

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 : 1,092 sec (4)

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