Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

webcam

18 réponses
Avatar
ppellero
Bonjour,

je poss=E8de une webcam qui envoie une image toutes les 60s sur un site=20
tout va bien pas de probl=E8me.

J'installe une autre cam=E9ra sur un autre site mais voila le probl=E8me =
:=20
cette cam=E9ra ne sait pas envoyer des images avec le m=EAme nom. Chaque =

image a un nom diff=E9rent et mon script de la 1ere cam=E9ra ne convient =
pas.

Est-ce que quelqu'un aurait un d=E9but de script ou un script entier pour=
=20
afficher une image toutes les ni=E8mes seconde, des images qui arrivent=20
avec un nom diff=E9rent sur le site?

Merci de votre attention

Paul

10 réponses

1 2
Avatar
SAM
Le 07/08/10 00:05, ppellero a écrit :
Bonjour,

je possède une webcam qui envoie une image toutes les 60s sur un site
tout va bien pas de problème.

J'installe une autre caméra sur un autre site mais voila le problème :
cette caméra ne sait pas envoyer des images avec le même nom. Chaque
image a un nom différent et mon script de la 1ere caméra ne convient pas.



C'est assez étonnant ...
usuellement il y a un nom unique pour la dernière prise de vue
celles précédentes étant alors sauvegardées avec en plus un numéro.

Le logiciel de la cam ne propose pas un upload actualisé de la page
affichant la dernière photo ?

Est-ce que quelqu'un aurait un début de script ou un script entier pour
afficher une image toutes les nièmes seconde, des images qui arrivent
avec un nom différent sur le site?



si on pouvait avoir un aperçu des noms proposés ?
(et le(s) nom(s) de la dernière vue)
... bien que ... le JS va difficilement farfouiller dans le dossier des
vues à la recherche de celle qui pourrait correspondre à la plage
horaire d'affichage ... ! !

Le plus simple doit être de faire afficher la dernière vue dans un
fichier en php, ce php allant chercher le fichier le + récent de la
série de photos.

Mébon, encore une fois, il est étonnant que le soft de la cam ne propose
pas qque chose de simple (comme la ré-écriture de la page et son upload).

--
sm
Avatar
ppellero
Le 07/08/2010 12:47, SAM a écrit :
Le 07/08/10 00:05, ppellero a écrit :
Bonjour,

je possède une webcam qui envoie une image toutes les 60s sur un sit e
tout va bien pas de problème.

J'installe une autre caméra sur un autre site mais voila le problè me :
cette caméra ne sait pas envoyer des images avec le même nom. Chaq ue
image a un nom différent et mon script de la 1ere caméra ne convie nt pas.



C'est assez étonnant ...
usuellement il y a un nom unique pour la dernière prise de vue
celles précédentes étant alors sauvegardées avec en plus un num éro.

Le logiciel de la cam ne propose pas un upload actualisé de la page
affichant la dernière photo ?

Est-ce que quelqu'un aurait un début de script ou un script entier p our
afficher une image toutes les nièmes seconde, des images qui arriven t
avec un nom différent sur le site?



si on pouvait avoir un aperçu des noms proposés ?



Voici les derniers nom d'images:

00606E5DF63B(agayplongee)_0_19700101000023_0.jpg
00606E5DF63B(agayplongee)_0_20100806220806_44.jpg
00606E5DF63B(agayplongee)_0_20100807180034_1.jpg
00606E5DF63B(agayplongee)_0_20100807180134_2.jpg
00606E5DF63B(agayplongee)_0_20100807180234_3.jpg
00606E5DF63B(agayplongee)_0_20100807180333_4.jpg
00606E5DF63B(agayplongee)_0_20100807180434_5.jpg

Quand on éteint la caméra ou une coupure de courant les numéros
repartent à zéro.
Dans cette caméra il n'y a moyen de mettre un nom fixe.
Tout ce que l'on peut changer c'est ce qu'il y a entre parenthèses.
Peut être peut-on faire un script à partir des dates système des fi chiers?





--
Paul Pellero Agay (Var)
mailto:
Site: http://www.pellero.net
Avatar
SAM
Le 07/08/10 20:17, ppellero a écrit :
Le 07/08/2010 12:47, SAM a écrit :
Le 07/08/10 00:05, ppellero a écrit :
Bonjour,

je possède une webcam qui envoie une image toutes les 60s sur un site
tout va bien pas de problème.







C'est une webcam directement reliée à Internet ?

J'installe une autre caméra sur un autre site mais voila le problème :
cette caméra ne sait pas envoyer des images avec le même nom. Chaque
image a un nom différent et mon script de la 1ere caméra ne convient
pas.



C'est assez étonnant ...
usuellement il y a un nom unique pour la dernière prise de vue
celles précédentes étant alors sauvegardées avec en plus un numéro.

Le logiciel de la cam ne propose pas un upload actualisé de la page
affichant la dernière photo ?

Est-ce que quelqu'un aurait un début de script ou un script entier pour
afficher une image toutes les nièmes seconde, des images qui arrivent
avec un nom différent sur le site?



si on pouvait avoir un aperçu des noms proposés ?



Voici les derniers nom d'images:

00606E5DF63B(agayplongee)_0_19700101000023_0.jpg



Ha! problème de mise à l'heure de la cam ?

00606E5DF63B(agayplongee)_0_20100806220806_44.jpg



ce fichier est le + jeune de la série et porte en fin le N° 44
tandis que les autres qui sont espacés d'une minute finissent par leurs
N° d'ordre qui sont plus petits ... :(

00606E5DF63B(agayplongee)_0_20100807180034_1.jpg
00606E5DF63B(agayplongee)_0_20100807180134_2.jpg
00606E5DF63B(agayplongee)_0_20100807180234_3.jpg
00606E5DF63B(agayplongee)_0_20100807180333_4.jpg
00606E5DF63B(agayplongee)_0_20100807180434_5.jpg

Quand on éteint la caméra ou une coupure de courant les numéros
repartent à zéro.



tu veux dire le N° de la fin ? (celui après le dernier _ )

Dans cette caméra il n'y a moyen de mettre un nom fixe.



Je continue à ne pas comprendre "dans" cette caméra.
Il n'y a pas un logiciel sur l'ordi pour la piloter ?
ni un ensemble de fichiers php à mettre sur le serveur ?

Si ce soft est trop brut et inadapté, il n'y a pas moyen de trouver un
autre soft qui sache "intelligemment" piloter cette cam ?

Tout ce que l'on peut changer c'est ce qu'il y a entre parenthèses.
Peut être peut-on faire un script à partir des dates système des fichiers?



On peut imaginer un XHTMLRequest avec une routine pour inventer des noms
de fichiers et à chaque fois que l'un de ces noms répond présent
le mettre dans un array, trier l'array, faire afficher le + récent.
Mais ... :
- super lourd à faire tourner
- fatigue inutile du serveur (quand un php peut faire mieux et + vite)
- combien de fichiers existants vont être oubliés ?



Il y a un bail j'avais joué avec une webcam d'occaz (de piètre qualité)
et j'avais fait une recherche de softs pour la piloter depuis mon Mac
De mémoire, le soft se chargeait de tout.
Bon! bien sûr, je n'ai pu m'empêcher de faire qques JS (aidés du php)
pour pouvoir faire afficher les archives (auto ou au choix du visiteur)
... là, maintenant, je ne comprends pas plus trop bien ce que j'avais
farfouillé à l'époque ... néanmoins j'imagine qu'en config de base le
soft sait faire afficher la dernière prise de vue (facile: elle porte
touj le même nom)
<http://www.osxfacile.com/evocam.html>
<http://www.evological.com/evocam.html>
Pour Mac ;
<http://www.versiontracker.com/php/qs.php?modeºsic&action=search&str=webcam&srchArea=macosx|macosx-all&submit=Go>
<http://www.pure-mac.com/webcam.html>
Pour Windows :
<http://www.versiontracker.com/php/qs.php?modeºsic&action=search&str=webcam&srchArea=windows&submit=Go>
<http://www.yawcam.com/>

--
sm
Avatar
ppellero
On peut imaginer un XHTMLRequest avec une routine pour inventer des nom s
de fichiers et à chaque fois que l'un de ces noms répond présent
le mettre dans un array, trier l'array, faire afficher le + récent.
Mais ... :
- super lourd à faire tourner
- fatigue inutile du serveur (quand un php peut faire mieux et + vite)
- combien de fichiers existants vont être oubliés ?



Il y a un bail j'avais joué avec une webcam d'occaz (de piètre qual ité)
et j'avais fait une recherche de softs pour la piloter depuis mon Mac
De mémoire, le soft se chargeait de tout.
Bon! bien sûr, je n'ai pu m'empêcher de faire qques JS (aidés du php)
pour pouvoir faire afficher les archives (auto ou au choix du visiteur)
... là, maintenant, je ne comprends pas plus trop bien ce que j'avais
farfouillé à l'époque ... néanmoins j'imagine qu'en config de b ase le
soft sait faire afficher la dernière prise de vue (facile: elle porte
touj le même nom)
<http://www.osxfacile.com/evocam.html>
<http://www.evological.com/evocam.html>
Pour Mac ;
<http://www.versiontracker.com/php/qs.php?modeºsic&action=search& str=webcam&srchArea=macosx|macosx-all&submit=Go>

<http://www.pure-mac.com/webcam.html>
Pour Windows :
<http://www.versiontracker.com/php/qs.php?modeºsic&action=search& str=webcam&srchArea=windows&submit=Go>

<http://www.yawcam.com/>


La caméra (IP et wifi) envoie par FTP une image toutes les x secondes
sur le site.
Si l'image envoyée avait toujours le même nom la dernière arrivée
écraserait la précédente comme c'était le cas avec ma caméra pr écédente.
Donc je pensait à un script PHP qui repère la date la plus récente en la
comparant à la date système du serveur et un script javascript pour
l'afficher et rafraichir la page toutes les x secondes. Il faut en plus
effacer la flopée de fichiers pour ne pas encombrer inutilement le serv eur.
C'est vrai que le programme le plus important est en PHP et je devrais
plutôt poster sur une news PHP?


--
Paul Pellero Agay (Var)
mailto:
Site: http://www.pellero.net
Avatar
SAM
Le 09/08/10 16:28, ppellero a écrit :


La caméra (IP et wifi) envoie par FTP une image toutes les x secondes
sur le site.



Ha! une petite précision (importante)

Si l'image envoyée avait toujours le même nom la dernière arrivée
écraserait la précédente comme c'était le cas avec ma caméra précédente.



Si la caméra n'est pas trop bête elle archive en plus la dernière
envoyée (une image touj du même nom plus sa copie sous un autre nom
incrémenté)

Mébon ... il parait que celle-ci est idiote ...

Donc je pensait à un script PHP qui repère la date la plus récente en la
comparant à la date système du serveur et un script javascript pour



Le php doit certainement pouvoir repérer la plus récente sans se
référerer à une quelconque date autre que celles des fichiers.

l'afficher et rafraichir la page toutes les x secondes.



Ça, ça se fait direct en html (avec une balise meta)
<meta http-equiv="refresh" content="5">
dans le head du fichier html

Il faut en plus
effacer la flopée de fichiers pour ne pas encombrer inutilement le serveur.



oui, bon, à voir ...
Facile en php de trier les fichiers du dossier et d'effacer le dernier
(ou douzième si on veut en garder 11)

C'est vrai que le programme le plus important est en PHP et je devrais
plutôt poster sur une news PHP?



Certes.
Et il ne devrait il y avoir besoin d'aucun JavaScript
(sauf à faire en Ajax ?)


--
sm
Avatar
ppellero
Le 10/08/2010 02:27, SAM a écrit :
Le 09/08/10 16:28, ppellero a écrit :




La caméra (IP et wifi) envoie par FTP une image toutes les x seconde s
sur le site.



Ha! une petite précision (importante)

Si l'image envoyée avait toujours le même nom la dernière arrivé e
écraserait la précédente comme c'était le cas avec ma caméra précédente.



Si la caméra n'est pas trop bête elle archive en plus la dernière
envoyée (une image touj du même nom plus sa copie sous un autre nom
incrémenté)

Mébon ... il parait que celle-ci est idiote ...

Donc je pensait à un script PHP qui repère la date la plus récen te en la
comparant à la date système du serveur et un script javascript pou r



Le php doit certainement pouvoir repérer la plus récente sans se
référerer à une quelconque date autre que celles des fichiers.

l'afficher et rafraichir la page toutes les x secondes.



Ça, ça se fait direct en html (avec une balise meta)
<meta http-equiv="refresh" content="5">
dans le head du fichier html

Il faut en plus
effacer la flopée de fichiers pour ne pas encombrer inutilement le
serveur.



oui, bon, à voir ...
Facile en php de trier les fichiers du dossier et d'effacer le dernier
(ou douzième si on veut en garder 11)

C'est vrai que le programme le plus important est en PHP et je devrais
plutôt poster sur une news PHP?



Certes.
Et il ne devrait il y avoir besoin d'aucun JavaScript
(sauf à faire en Ajax ?)



C'est vrai je vais le faire en PHP dès que j'ai le temps je m'y attelle .
Avatar
SAM
Le 10/08/10 09:19, ppellero a écrit :
C'est vrai que le programme le plus important est en PHP et je devrais
plutôt poster sur une news PHP?



Certes.
Et il ne devrait il y avoir besoin d'aucun JavaScript
(sauf à faire en Ajax ?)



C'est vrai je vais le faire en PHP dès que j'ai le temps je m'y attelle.



Poste qqe chose que je ne vois pas sur le NG ... ! ?

copie :

Le pb : il y a des hébergeurs qui n'aiment pas que l'on fasse en php des
scans de dossiers pour un oui pour un rien :-(


Je ne connais rien au php.
Néanmoins, un exemple de mon cru et non testé :

<head>
<meta http-equiv="refresh" content="30">
<title>ma webcam idiote</title>
</head>
<body>
<h1>Ma webcam à moi</h1>
<div>

<?php

$rep = 'maWebCam/'; // chemin du dossier des vues de la webcam
$nombre = 12; // vues à archiver
$count = 0; // un compteur
$vues = []; // tableau des fichiers trouvés par le php

$dir = opendir($dossier) or die('Erreur');

// lecture du dossier (repère les fichiers)
while ($f = readdir($dir))
{
if(is_file($rep.$f))
$vues[] = [$rep.$f, filemtime($rep.$f)]; // nom + date fichier
# Peut-être serait-ce mieux d'utiliser la fonction filectime() ?
# plutôt que celle filemtime() ou date modification fichier.
# Pas réussi à comprendre où et quand l'une ou l'autre
# fonctionnait (Windows ... Unix ...)
# http://fr2.php.net/manual/fr/function.filectime.php
# http://fr2.php.net/manual/fr/function.filemtime.php
}
closedir($dir);

// tri des photos par date :
function isort($a,$b) { return ($a[1])>($b[1]); }
uksort($vues, "isort")

// affichage
$n = $vues.count();
while($count<$n) {
if($count == 0) // dernière image uploadée, on l'affiche
{
echo '<img src="'.$vues[$count][0].'" alt="">n';
echo '<h2>vues précédentes</h2>n<ul>n';
}
if($count >= $nombre)
{
chmod($vues[$count][0],0777);
unlink($vues[$count][0]); // supprime le fichier surnuméraire
}
else echo 't<li><a href="'.$vues[$count][0].'">webcam du : '.
date("d/m/Y H:i:s",$vues[$count][1]).'</a></li>n';
if($count == $n-1) echo '</ul>';
$count++;
}

?>
</div>


Le NG du PHP a l'air d'avoir fermé ses portes au 31 juillet ...
Il les ré-ouvrira sans doute en début septembre ?
--
sm
Avatar
ppellero
Je ne connais rien au php.
Néanmoins, un exemple de mon cru et non testé :

<head>
<meta http-equiv="refresh" content="30">
<title>ma webcam idiote</title>
</head>
<body>
<h1>Ma webcam à moi</h1>
<div>

<?php

$rep = 'maWebCam/'; // chemin du dossier des vues de la webcam
$nombre = 12; // vues à archiver
$count = 0; // un compteur
$vues = []; // tableau des fichiers trouvés par le php

$dir = opendir($dossier) or die('Erreur');

// lecture du dossier (repère les fichiers)
while ($f = readdir($dir))
{
if(is_file($rep.$f))
$vues[] = [$rep.$f, filemtime($rep.$f)]; // nom + date fichier
# Peut-être serait-ce mieux d'utiliser la fonction filectime() ?
# plutôt que celle filemtime() ou date modification fichier.
# Pas réussi à comprendre où et quand l'une ou l'autre
# fonctionnait (Windows ... Unix ...)
# http://fr2.php.net/manual/fr/function.filectime.php
# http://fr2.php.net/manual/fr/function.filemtime.php
}
closedir($dir);

// tri des photos par date :
function isort($a,$b) { return ($a[1])>($b[1]); }
uksort($vues, "isort")

// affichage
$n = $vues.count();
while($count<$n) {
if($count == 0) // dernière image uploadée, on l'affiche
{
echo '<img src="'.$vues[$count][0].'" alt="">n';
echo '<h2>vues précédentes</h2>n<ul>n';
}
if($count >= $nombre)
{
chmod($vues[$count][0],0777);
unlink($vues[$count][0]); // supprime le fichier surnuméraire
}
else echo 't<li><a href="'.$vues[$count][0].'">webcam du : '.
date("d/m/Y H:i:s",$vues[$count][1]).'</a></li>n';
if($count == $n-1) echo '</ul>';
$count++;
}

?>
</div>


Le NG du PHP a l'air d'avoir fermé ses portes au 31 juillet ...
Il les ré-ouvrira sans doute en début septembre ?



Moi je pensais plutôt faire une boucle qui liste les images présentes
dans le répertoire et à chaque itération vérifier si l'heure et l a
minute du fichier est la même que celle du système.
Si elle est différente on la supprime et si elle concorde on l'affiche. ???
Avatar
SAM
Le 10/08/10 23:44, ppellero a écrit :

Je ne connais rien au php.
Néanmoins, un exemple de mon cru et non testé :

<?php

$rep = 'maWebCam/'; // chemin du dossier des vues de la webcam
$nombre = 12; // vues à archiver
$count = 0; // un compteur
$vues = []; // tableau des fichiers trouvés par le php

$dir = opendir($dossier) or die('Erreur');

// lecture du dossier (repère les fichiers)
while ($f = readdir($dir))
{
if(is_file($rep.$f))
$vues[] = [$rep.$f, filemtime($rep.$f)]; // nom + date fichier
}
closedir($dir);

// tri des photos par date :
function isort($a,$b) { return ($a[1])>($b[1]); }
uksort($vues, "isort")

// affichage
$n = $vues.count();
while($count<$n) {
if($count == 0) // dernière image uploadée, on l'affiche
{
echo '<img src="'.$vues[$count][0].'" alt="">n';
echo '<h2>vues précédentes</h2>n<ul>n';
}
if($count >= $nombre)
{
chmod($vues[$count][0],0777);
unlink($vues[$count][0]); // supprime le fichier surnuméraire
}
else echo 't<li><a href="'.$vues[$count][0].'">webcam du : '.
date("d/m/Y H:i:s",$vues[$count][1]).'</a></li>n';
if($count == $n-1) echo '</ul>';
$count++;
}

?>



Moi je pensais plutôt faire une boucle qui liste les images présentes
dans le répertoire et à chaque itération vérifier si l'heure et la
minute du fichier est la même que celle du système.
Si elle est différente on la supprime et si elle concorde on l'affiche.???



C'est apparemment plus simple, à la nuance qu'on doit qd même faire un
scan du dossier, ce qui est un "gros" travail pour le serveur
(comparativement à utiliser une base de données, par exemple).
Après le parcours du dossier le travail supplémentaire de proposer en
liens une 12aine de vues n'est plus que pipi de sansonnet.
(au besoin, on doit pouvoir assez facilement proposer une archive
d'heure en heure)

Heu ... ça suppose que :
- tu n'as une nouvelle vue que toutes les minutes
- et au moins une vue
(prévoir une annonce si le dernier upload a échoué)
- tu n'archives aucune autre vue
(j'avais compris que tu voulais en garder qques unes)

À ce compte, il faudrait tt de même voir si le soft de la webcam ne
permet pas de faire des vues que sous un seul nom,
(n'avoir, en fait, qu'une seule image, la dernière, sur le site)
il doit bien il y avoir un truc de communication avec cette cam pour lui
dire :
- fréquence des vues
- où les enregistrer/uploader
- nom des vues (la partie personnalisable)

Et, à mon idée, il doit aussi il y avoir :
- probablement une case à cocher pour
l'option fichier(s) unique/multiple
- éventuellement utiliser une BdD ou un fichier texte de réf des vues
(si ce log existe, ce serait mieux de travailler à partir de là
plutôt que de faire parcourir inutilement le contenu du dossier)

--
sm
Avatar
ppellero
Moi je pensais plutôt faire une boucle qui liste les images présen tes
dans le répertoire et à chaque itération vérifier si l'heure e t la
minute du fichier est la même que celle du système.
Si elle est différente on la supprime et si elle concorde on
l'affiche.???



C'est apparemment plus simple, à la nuance qu'on doit qd même faire un
scan du dossier, ce qui est un "gros" travail pour le serveur
(comparativement à utiliser une base de données, par exemple).
Après le parcours du dossier le travail supplémentaire de proposer en
liens une 12aine de vues n'est plus que pipi de sansonnet.
(au besoin, on doit pouvoir assez facilement proposer une archive
d'heure en heure)



J'ai la possibilité de faire une tache à des heures bien définies s ur le
serveur pour lancer un "nettoyeur" de fichier car pendant la nuit par
exemple à raison d'une vue par minute cela va vite le saturer.

Heu ... ça suppose que :
- tu n'as une nouvelle vue que toutes les minutes
- et au moins une vue
(prévoir une annonce si le dernier upload a échoué)
- tu n'archives aucune autre vue
(j'avais compris que tu voulais en garder qques unes)



Archiver les vues n'est pas le but, la caméra doit juste montrer un lie u
et rafraichir l'image toutes les minutes.

À ce compte, il faudrait tt de même voir si le soft de la webcam ne
permet pas de faire des vues que sous un seul nom,
(n'avoir, en fait, qu'une seule image, la dernière, sur le site)
il doit bien il y avoir un truc de communication avec cette cam pour lu i
dire :
- fréquence des vues
- où les enregistrer/uploader
- nom des vues (la partie personnalisable)



La fréquence des vues est paramétrable au lieu de 1 minute je pourrai
mettre 1 heure ou toute autre valeur.
Le répertoire d'upload se paramètre.
Le nom de fichier a une petite partie paramétrable entre parenthèse ;
00606E5DF63B(agayplongee)_0_20100807180434_5.jpg
mais impossible d'enlever la partie compteur entre l'underscore et le poi nt.


Et, à mon idée, il doit aussi il y avoir :
- probablement une case à cocher pour
l'option fichier(s) unique/multiple



La caméra précédente à celle-ci se paramétrait avec un nom de f ichier
unique. Chaque nouvelle vue arrivant sur le serveur écrasait la
précédente et je l'affichait avec un script de quelques lignes.

- éventuellement utiliser une BdD ou un fichier texte de réf des vu es
(si ce log existe, ce serait mieux de travailler à partir de là
plutôt que de faire parcourir inutilement le contenu du dossier)



J'ai déjà essayer de stocker des images dans une BDD et j'y ai renonc é
par contre on pourrait stocker le nom des images et faire rapidement un
tri. Mais c'est quand même un système très lourd pour afficher une image.
Peut être en désassemblant et en bidouillant le soft interne pour vir er
le compteur... mais c'est une autre histoire.
1 2