VIDEOSURVEILLANCE A 4 CAMERAS +ENVOI EMAIL+APPEL TELEPHONIQUE
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 2016
-
21 mai 2006 à 07:44
codeur75
Messages postés1Date d'inscriptionjeudi 21 juin 2012StatutMembreDernière intervention21 juin 2012
-
21 juin 2012 à 14:12
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_amel99
Messages postés3Date d'inscriptionvendredi 30 avril 2010StatutMembreDernière intervention23 avril 2012 23 avril 2012 à 00:14
bjr, comment intégrer ce travail sous android ???
merci d'avance
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 27 oct. 2011 à 13:10
Bonjour à toutes et à tous,
Concernant cette excellente source, y a t'il possibilité de pouvoir faire un effet miroir sur l'affichage de la caméra,
car après de nombreux tests, je n'ai pas sut le faire.
@ Jlen100, j'espère que tu vas bien !
@+,
Cincap
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 18 mars 2011 à 18:29
Bonjour à toutes et à tous,
@Jlen100, merci de ta réponse et bien content que tu vas bien.
Sur XP, la même application fonctionne avec une grille parfaitement égale au composant TMed.
Sur Seven 64bits, la grille s'affiche anormalement et par contre si on la zoom, elle a l'air d'être correcte.
@+,
Cincap
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 18 mars 2011 à 18:07
salut cincap,
c'est vrai que je suis sur un très gros projet qui me prend tout mon temps, mais je viens quand même régulièrement sur le site.
pour ce qui est de l'affichage de la grille je suis toujours en XP je ne pourrais donc pas résoudre ce problème.
pour ce qui est de l'alarme dans l'unité "Unitprincipale.pas" il faut déclencher le timer: "TimerAlarm" soit en mettant
TimerAlarm.Interval:=XXXXX pour le retard et TimerAlarm.Enabled:=True; pour une alarme différée soit en appelant la méthode "TimerAlarmTimer(Sender);" pour un déclenchement immédiat
@+
JLEN
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 18 mars 2011 à 09:13
Bonjour à toutes et à tous,
Cette source a très bien fonctionnée sur mon PC avec XP mais depuis l'achat de mon Pc portable, j'ai constaté sur la fiche "U_Parcam.pas" que la grille n'était plus correctement affichée (zoom à zéro) et que les zones de détections par contre s'affichait bien en utilisant le zoom, la grille était correcte.
J'aurai bien voulu aussi avoir l'instruction qui déclenche l'alarme lors d'une détection par la caméra afin d'y ajouter un module de détection sonore.
Peut être Francky23012301 pourra y répondre puisque JLen100 est trop occupé ?
Merci d'avance,
@+,
Cincap
migangel
Messages postés1Date d'inscriptionmercredi 14 octobre 2009StatutMembreDernière intervention14 octobre 2009 14 oct. 2009 à 05:39
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.
cs_systy
Messages postés2Date d'inscriptionsamedi 2 mai 2009StatutMembreDernière intervention 7 mai 2009 7 mai 2009 à 17:34
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
cs_systy
Messages postés2Date d'inscriptionsamedi 2 mai 2009StatutMembreDernière intervention 7 mai 2009 7 mai 2009 à 17:32
Bonjour j aimerais de l aide pour installer ton programme. si quelqun peut me dire comment sa fonctionne. merci ducmaxime@gmail.com
strobinateur
Messages postés11Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention14 avril 2009 23 mars 2009 à 15:32
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!
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 21 mars 2008 à 09:27
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
dok flintvb
Messages postés1Date d'inscriptionmardi 9 mai 2006StatutMembreDernière intervention17 mars 2008 17 mars 2008 à 17:09
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 18 févr. 2008 à 11:33
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) :
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 7 févr. 2008 à 11:41
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
lassad_haddaji
Messages postés141Date d'inscriptionmardi 24 avril 2007StatutMembreDernière intervention 6 avril 2012 27 juil. 2007 à 20:16
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é.
daminovich
Messages postés7Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention 7 octobre 2007 10 juin 2007 à 19:02
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 6 juin 2007 à 15:08
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
daminovich
Messages postés7Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention 7 octobre 2007 6 mai 2007 à 19:35
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.
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 5 mai 2007 à 15:45
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 5 mai 2007 à 11:12
merci je modifierai la source
@+
jlen
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 5 mai 2007 à 11:07
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 5 mai 2007 à 09:56
-->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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 4 mai 2007 à 16:53
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
daminovich
Messages postés7Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention 7 octobre 2007 4 mai 2007 à 14:41
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,
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 3 mai 2007 à 20:59
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
daminovich
Messages postés7Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention 7 octobre 2007 3 mai 2007 à 20:25
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.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 3 mai 2007 à 15:12
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
daminovich
Messages postés7Date d'inscriptionmardi 10 avril 2007StatutMembreDernière intervention 7 octobre 2007 3 mai 2007 à 13:47
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 24 avril 2007 à 23:47
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
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 20161 24 avril 2007 à 23:17
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).
@+
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 24 avril 2007 à 11:17
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 24 avril 2007 à 11:00
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
sofinf2006
Messages postés17Date d'inscriptionlundi 7 novembre 2005StatutMembreDernière intervention 7 juillet 2010 24 avril 2007 à 10:36
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 24 avril 2007 à 07:47
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 avril 2007 à 21:22
ç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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 23 avril 2007 à 21:09
Bonsoir Jlen100, en effet, une erreur avec le Tspinedit est invraisemblable.
Sinon j'espère que tu vas bien depuis ce temps ?
@+,
Cincap
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 avril 2007 à 20:03
salut cincap tu m'as devancé d'une poignée de secondes!!
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 avril 2007 à 19:49
merci pour la note.
pour l'erreur de compilation quelle version de Delphi utilises-tu?
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 23 avril 2007 à 19:49
Bonsoir,
Peus tu préciser avec quelle version Delphi.
@+,
Cincap
sofinf2006
Messages postés17Date d'inscriptionlundi 7 novembre 2005StatutMembreDernière intervention 7 juillet 2010 23 avril 2007 à 19:42
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
fersouce
Messages postés23Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention28 novembre 2012 10 janv. 2007 à 14:09
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 10 janv. 2007 à 12:50
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 10 janv. 2007 à 12:25
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
fersouce
Messages postés23Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention28 novembre 2012 10 janv. 2007 à 11:35
vous parlez de quel zip
fersouce
Messages postés23Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention28 novembre 2012 10 janv. 2007 à 11:31
Ou exactement dans le zip
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 10 janv. 2007 à 10:19
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
fersouce
Messages postés23Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention28 novembre 2012 10 janv. 2007 à 10:07
Salut a tous j'ai essayé de faire exécuté ce programme mais j'ai vu le Composant TvideoCapture Manquant .comment l'ajouter SVP.
cs_salimouu
Messages postés10Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention12 janvier 2011 31 déc. 2006 à 15:03
je veux savoir une chose, ou es la hard dans tous ça?
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 22 nov. 2006 à 19:26
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 :
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 nov. 2006 à 14: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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 21 nov. 2006 à 13:12
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 :
.
@+,
Cincap
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 nov. 2006 à 09:12
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
Z abidine
Messages postés4Date d'inscriptionvendredi 18 novembre 2005StatutMembreDernière intervention21 novembre 2006 21 nov. 2006 à 09:04
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 .
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 19 nov. 2006 à 16:29
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 10 nov. 2006 à 00:34
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 8 sept. 2006 à 13:30
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 10:54
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:
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 10:38
petit nota en passant : il faut également modifier le fichier .INI pour qu'il conserve la sélection!!
@+
jlen
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juil. 2006 à 10:24
C'est Ok maintenant.
Excellent travail et que d'heures passées gratuitement !
@+,
Cincap
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 09:52
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juil. 2006 à 09:47
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juil. 2006 à 07:32
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 28 juil. 2006 à 22:47
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 28 juil. 2006 à 22:21
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 :
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 28 juil. 2006 à 21:36
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 28 juil. 2006 à 13:23
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".
@+
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juin 2006 à 14:04
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juin 2006 à 12:54
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juin 2006 à 12:52
je regarde cela certainement encore un morceau qui est resté dans le HD
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juin 2006 à 12:45
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juin 2006 à 11:16
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 29 juin 2006 à 08:17
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 12 juin 2006 à 21:10
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 12 juin 2006 à 20:18
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 12 juin 2006 à 19:51
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
christophe25021981
Messages postés1Date d'inscriptionlundi 22 mai 2006StatutMembreDernière intervention 6 juin 2006 6 juin 2006 à 10:39
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!
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 31 mai 2006 à 17:53
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 31 mai 2006 à 15:59
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 31 mai 2006 à 15:35
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 31 mai 2006 à 15:26
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
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 31 mai 2006 à 14:57
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 27 mai 2006 à 11:36
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 26 mai 2006 à 18:58
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 26 mai 2006 à 13:43
peux tu aussi me dire quelle version de delphi?
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 26 mai 2006 à 13:19
peux tu m'indiquer le module et la ligne?
@+
jlen
cs_mouchie
Messages postés2Date d'inscriptionmardi 9 mai 2006StatutMembreDernière intervention26 mai 2006 26 mai 2006 à 13:17
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 25 mai 2006 à 23:27
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 25 mai 2006 à 20:03
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
cs_mouchie
Messages postés2Date d'inscriptionmardi 9 mai 2006StatutMembreDernière intervention26 mai 2006 25 mai 2006 à 19:30
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 25 mai 2006 à 10:26
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 mai 2006 à 16:10
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
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 23 mai 2006 à 16:08
Je voulais parler de la fonction capCaptureSequenceNoFile bien sûr !
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 23 mai 2006 à 15: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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 mai 2006 à 12:55
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 mai 2006 à 12:46
c'est bien sauf que le composant TCapture ne l'implémente pas
@+
jlen
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 23 mai 2006 à 12:09
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 mai 2006 à 10:08
au fait kenavo il n'y a tout simplement pas d'évènement OnFrame si l'image n'est pas visble
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 mai 2006 à 09:52
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
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 23 mai 2006 à 09:17
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 22 mai 2006 à 20:31
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
EddiTheHead
Messages postés58Date d'inscriptionmercredi 16 février 2005StatutMembreDernière intervention 2 juin 2006 22 mai 2006 à 20:03
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.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 22 mai 2006 à 08:20
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
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 18:30
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.
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 17:58
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.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 17:42
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
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 17:39
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 17:24
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.
tlemcen1393
Messages postés7Date d'inscriptiondimanche 14 mai 2006StatutMembreDernière intervention21 mai 2006 21 mai 2006 à 15:42
merci
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 15:03
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
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 14:41
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 14:39
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
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 14:37
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.
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 14:17
J'utilise videocapx car il fait également player video( et ca faisait ca de moins a coder). Je vais regarder Tmed.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 12:16
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
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 20161 21 mai 2006 à 10:57
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!
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 10:25
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
DeltaFX
Messages postés449Date d'inscriptionlundi 19 avril 2004StatutMembreDernière intervention 8 avril 20092 21 mai 2006 à 09:55
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.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 21 mai 2006 à 09:36
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
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 20161 21 mai 2006 à 07:44
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.
21 juin 2012 à 14:12
Est-il possible d'utiliser le code avec la caméra IP CW502W : http://www.alarme-habitation-sans-fil.com/camera-ip/la-camera-ip-cw502w-une-camera-tres-puisante-et-simple-dutilisation-184
Merci
23 avril 2012 à 00:14
merci d'avance
27 oct. 2011 à 13:10
Concernant cette excellente source, y a t'il possibilité de pouvoir faire un effet miroir sur l'affichage de la caméra,
car après de nombreux tests, je n'ai pas sut le faire.
@ Jlen100, j'espère que tu vas bien !
@+,
Cincap
18 mars 2011 à 18:29
@Jlen100, merci de ta réponse et bien content que tu vas bien.
Sur XP, la même application fonctionne avec une grille parfaitement égale au composant TMed.
Sur Seven 64bits, la grille s'affiche anormalement et par contre si on la zoom, elle a l'air d'être correcte.
@+,
Cincap
18 mars 2011 à 18:07
c'est vrai que je suis sur un très gros projet qui me prend tout mon temps, mais je viens quand même régulièrement sur le site.
pour ce qui est de l'affichage de la grille je suis toujours en XP je ne pourrais donc pas résoudre ce problème.
pour ce qui est de l'alarme dans l'unité "Unitprincipale.pas" il faut déclencher le timer: "TimerAlarm" soit en mettant
TimerAlarm.Interval:=XXXXX pour le retard et TimerAlarm.Enabled:=True; pour une alarme différée soit en appelant la méthode "TimerAlarmTimer(Sender);" pour un déclenchement immédiat
@+
JLEN
18 mars 2011 à 09:13
Cette source a très bien fonctionnée sur mon PC avec XP mais depuis l'achat de mon Pc portable, j'ai constaté sur la fiche "U_Parcam.pas" que la grille n'était plus correctement affichée (zoom à zéro) et que les zones de détections par contre s'affichait bien en utilisant le zoom, la grille était correcte.
J'aurai bien voulu aussi avoir l'instruction qui déclenche l'alarme lors d'une détection par la caméra afin d'y ajouter un module de détection sonore.
Peut être Francky23012301 pourra y répondre puisque JLen100 est trop occupé ?
Merci d'avance,
@+,
Cincap
14 oct. 2009 à 05:39
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.
7 mai 2009 à 17:34
7 mai 2009 à 17:32
23 mars 2009 à 15:32
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!
21 mars 2008 à 09:27
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
17 mars 2008 à 17:09
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
18 févr. 2008 à 11:33
@ 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
7 févr. 2008 à 11:41
@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
27 juil. 2007 à 20:16
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é.
10 juin 2007 à 19:02
svp eske vou avé une idé sur l'algorithme de detection de mouvement avec lekel le composant TMED fonctionne et merci beaucoup
6 juin 2007 à 15:08
@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
6 mai 2007 à 19:35
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.
5 mai 2007 à 15:45
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
5 mai 2007 à 11:12
@+
jlen
5 mai 2007 à 11:07
@ 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
5 mai 2007 à 09:56
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
4 mai 2007 à 16:53
@ 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
4 mai 2007 à 14:41
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,
3 mai 2007 à 20:59
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
3 mai 2007 à 20:25
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.
3 mai 2007 à 15:12
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
3 mai 2007 à 13:47
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
24 avril 2007 à 23:47
ç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
24 avril 2007 à 23:17
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).
@+
24 avril 2007 à 11:17
Cette source est donc stable et fiable.
@+,
Cincap
24 avril 2007 à 11:00
salut
jlen100
24 avril 2007 à 10:36
merci
24 avril 2007 à 07:47
@ 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
23 avril 2007 à 21:22
23 avril 2007 à 21:09
Sinon j'espère que tu vas bien depuis ce temps ?
@+,
Cincap
23 avril 2007 à 20:03
23 avril 2007 à 19:49
pour l'erreur de compilation quelle version de Delphi utilises-tu?
23 avril 2007 à 19:49
Peus tu préciser avec quelle version Delphi.
@+,
Cincap
23 avril 2007 à 19:42
class TspinEdit non trouvé??
Je met 10/10 comme note et bon travail
10 janv. 2007 à 14:09
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
10 janv. 2007 à 12:50
--->fersouce il n'y a qu'un seul zip il faut simplement faire attention à la version de DELPHI utilisé
jlen
mon site jlen.fr
10 janv. 2007 à 12:25
@ 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
10 janv. 2007 à 11:35
10 janv. 2007 à 11:31
10 janv. 2007 à 10:19
-->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
10 janv. 2007 à 10:07
31 déc. 2006 à 15:03
22 nov. 2006 à 19:26
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
21 nov. 2006 à 16:30
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
21 nov. 2006 à 14:15
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
21 nov. 2006 à 13:12
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 :
.
@+,
Cincap
21 nov. 2006 à 09:12
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
21 nov. 2006 à 09:04
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 .
19 nov. 2006 à 16:29
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
10 nov. 2006 à 00:34
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
8 sept. 2006 à 13:30
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
29 juil. 2006 à 10:54
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
29 juil. 2006 à 10:38
@+
jlen
29 juil. 2006 à 10:24
Excellent travail et que d'heures passées gratuitement !
@+,
Cincap
29 juil. 2006 à 09:52
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
29 juil. 2006 à 09:47
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
29 juil. 2006 à 07:32
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
28 juil. 2006 à 22:47
@+
jlen
28 juil. 2006 à 22:21
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
28 juil. 2006 à 21:36
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
28 juil. 2006 à 13:23
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".
@+
29 juin 2006 à 14:04
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
29 juin 2006 à 12:54
Continuation des tests.
Cincap
29 juin 2006 à 12:52
29 juin 2006 à 12:45
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
29 juin 2006 à 11:16
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
29 juin 2006 à 08:17
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
12 juin 2006 à 21:10
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
12 juin 2006 à 20:18
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
12 juin 2006 à 19:51
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
6 juin 2006 à 10:39
31 mai 2006 à 17:53
@+,
Cincap
31 mai 2006 à 15:59
@+
jlen
31 mai 2006 à 15:35
@+,
Cincap
31 mai 2006 à 15:26
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
31 mai 2006 à 14:57
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
27 mai 2006 à 11:36
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
26 mai 2006 à 18:58
Encore une chose à mettre au passif de D2005!!
@+
jlen
26 mai 2006 à 13:43
@+
jlen
26 mai 2006 à 13:19
@+
jlen
26 mai 2006 à 13:17
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
25 mai 2006 à 23:27
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
25 mai 2006 à 20:03
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
25 mai 2006 à 19:30
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
25 mai 2006 à 10:26
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
23 mai 2006 à 16:10
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
23 mai 2006 à 16:08
23 mai 2006 à 15:46
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
23 mai 2006 à 12:55
@+
jlen
23 mai 2006 à 12:46
@+
jlen
23 mai 2006 à 12:09
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
23 mai 2006 à 10:08
@+
jlen
23 mai 2006 à 09:52
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
23 mai 2006 à 09:17
"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
22 mai 2006 à 20:31
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
22 mai 2006 à 20:03
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.
22 mai 2006 à 08:20
@+
jlen
21 mai 2006 à 18:30
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.
21 mai 2006 à 17:58
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.
21 mai 2006 à 17:42
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
21 mai 2006 à 17:39
http://rsb.info.nih.gov/ij/features.html
21 mai 2006 à 17:24
- 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.
21 mai 2006 à 15:42
21 mai 2006 à 15:03
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
21 mai 2006 à 14:41
http://www.fathsoft.com/videocapx.html
Vala un peu plus que 4 lignes.
21 mai 2006 à 14:39
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
21 mai 2006 à 14:37
21 mai 2006 à 14:17
21 mai 2006 à 12:16
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
21 mai 2006 à 10:57
-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!
21 mai 2006 à 10:25
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
21 mai 2006 à 09:55
Mais c'est pas gratuit.
21 mai 2006 à 09:36
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
21 mai 2006 à 07:44
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.