Autor
|
Tema: Software multicaptura webcam (Llegit 2322 vegades)
|
meteo_rodadater
Cumulus Humilis
   
Desconnectat
Gènere: 
Missatges: 253

|
Bona nit. He vist en algunes webs que tenen webcam ,que per mitjà d' una aplicació poden guardar les darreres quatre o més hores d' imatges. Em podria-ho dir quina/es aplicacions s' utilitzen per aconseguir això?. Es ben bé per treure ple rendiment a les càmeres.
Moltes gràcies
|
|
|
|
|
En línia
|
|
|
|
|
|
|
|
meteo_rodadater
Cumulus Humilis
   
Desconnectat
Gènere: 
Missatges: 253

|
Jo faig servir dues càmeres de xarxa.La imatge la envia directament per ftp al servidor sense passar per PC. Per això que haig de fer compatible les dues coses.
Gràcies per la resposta
|
|
|
|
|
En línia
|
|
|
|
|
|
casacota
Cumulus Congestus

Desconnectat
Missatges: 1246

|
Lo millor et fas un script en perl, que et podrà guardar el que vulguis com vulguis quan vulguis i on vulguis, sense haver de fer coses estranyes amb cap soft. Amb la webcam no ho faig actualment perquè no és massa interessant a l'estar fora de lloc per obres, però el mateix sistema em guarda els informes de tempestes, copia arxius d'una banda a l'altre etc. L'avantatge d'aquest sistema és que fàcilment pot guardar imatges provinents de càmeres IP, fins i tot a través d'internet. Per això Perl porta l'ordre "getstore" que t'ho permet fer de manera senzillíssima.
use File::Copy; use LWP::Simple; $interval = 59; # segons - veure més avall
# això és un fork per a windows, però es pot fer també per taskscheduler o en Linux amb CRON
my $forquilla = ($interval and ($^O !~ /mswin32/i)); do { my $pid = $$; my $nanoenforquillat; if ($forquilla) { my $nano; $SIG{CHLD} = 'IGNORE'; $nano = fork; die "fallada a webcam: $!\n" unless defined $nano; $nanoenforquillat++ if (!$nano); } if ($nanoenforquillat or !$forquilla) { &webcam; } exit if ($nanoenforquillat); sleep ($interval); } while $interval; 0;
# s'acaba el fork
sub webcam { &digueshora; if ($minuts =~ "[0-6]0" || $minuts =~ "[0-6]5"){ &arxiuwebcam; } }
sub arxiuwebcam { $arxiu = "C:/casacota/8-)/arxiu_webcam/webcam_$avui\.jpg"; # aixo en cas de càmera IP # getstore("http\:\/\/www\.casacota\.cat\/webcam\/webcam.jpg", $arxiu); # i això si és arxiu local $dlFile = "C:/vws/webcam\.jpg"; if (!$dlFile or !-e $dlFile) { # no està disponible, deixem-ho per a no estressar la màquina o bloquejar algun accés } else { copy($dlFile, $arxiu); } }
sub digueshora { my ($segon,$minut,$hores,$dia,$mes,$any); ($segon,$minut,$hores,$dia,$mes,$any) = (localtime(time))[0,1,2,3,4,5]; $hora = $hores; $hores = "0$hores" if ($hores < 10); $dia = "0$dia" if ($dia < 10); $mes = $mes + 1; $mes = "0$mes" if ($mes < 10); $any += 1900; $avui = ("$dia.$mes.$any\_$hores\_UTC"); $segons = $segon; # $segons = "0$segons" if ($segons < 10); $minuts = $minut; $minuts = "0$minuts" if ($minuts < 10); $avuim = "$dia.$mes.$any\_$hores\.$minuts\_UTC"; }
|
|
|
|
|
En línia
|
|
|
|
meteo_rodadater
Cumulus Humilis
   
Desconnectat
Gènere: 
Missatges: 253

|
Moltes gràcies Casacota. De codis en script no en tinc ni idea.De fet tot el codi que m`has possat més avall no sé aplicar-ho.Necessitaria que tot plegat es fes pas a pas.Des de la primera linea fins l' última.Si no es d' aquesta manera veig difícil que ho pugui fer. T' agraeixo molt la molèstia que t`has prés. Moltes gràcies
Joan Fradera
|
|
|
|
|
En línia
|
|
|
|
casacota
Cumulus Congestus

Desconnectat
Missatges: 1246

|
No costa gaire, només l'has de copiar amb un editor de texte, adaptant les coses que facin falta (bàsicament noms d'arxius i carpetes), instal·lar-te Perl - http://www.activestate.com/Products/ActivePerl/
i engegar-ho. Si t'animes t'ajudo - i potser algú més del fòrum també.
PS: de fet, ni et cal instal·lar Perl. Et puc passar una carpeta comprimida amb els executables i mòduls necessaris, i no cal tocar res. Es posen en una carpeta i prou, ja funciona així també.
|
|
|
|
|
En línia
|
|
|
|
casacota
Cumulus Congestus

Desconnectat
Missatges: 1246

|
El perl en forma compacte és aquí:
http://www.casacota.cat/teranyina?num=1159025635
I el script que he posat a dalt en un zip aquí sota. Si el poséssis a la carpeta C:\VWS ja et funcionaria, només adaptant les línies amb els noms dels arxius i les adreces web per les IP de les càmeres que tens.
Error - no m'el deixa afegir - el trobes en la URL de dalt, sota del Perl.
|
|
|
|
|
En línia
|
|
|
|
meteo_rodadater
Cumulus Humilis
   
Desconnectat
Gènere: 
Missatges: 253

|
Hola Casacota. Si no sòc massa pesat podem intentar posar-ho tot en marxa Ara descarregaré en el disc dur arxiuwebcam.zip i C:\Perl\bin\perl.exe C:\vws\arxiuwebcam.pl La carpeta vws no la sé trobar. Si et sembla no podries omplir el codi,jo t' aniria donant les diferents dades. Una vegada està tot descarregat.El codi una vegada omplet amb les dades, s' entra a una pàgina nova de la web i se li posa un nom?
|
|
|
|
|
En línia
|
|
|
|
|