2017-01-03

La caméra de surveillance sans fil BlitzWolf BW-SIC1 affiche des caractéristiques intéressantes vu son prix relativement faible:

Comme c'est souvent le cas avec des produits peu coûteux venant de Chine, les quelques minces instructions qui accompagnent cet appareil sont pratiquement incompréhensibles. De surcroît, elles ne contiennent aucune information au sujet de son utilisation avec les systèmes d'exploitation Linux. Or justement, je veux voir le vidéo et des images provenant de cette caméra dans deux applications qui roulent sur des Raspberry Pi : Domoticz et Kodi.

Mise en marche

Puisque mon ordinateur de bureau roule sur Ubuntu, et que le fabricant n'offre aucun logiciel fonctionnant sur Linux, c'est avec le logiciel BlitzCam sur une tablette Android (version 6) et avec l'interface Web de la caméra sans l'extension ipc.exe que j'ai essayé d'établir une connexion avec celle-ci. Il me semble avoir fait plus ou moins comme Homer Zeng tel qu'expliqué sur le forum du vendeur. Cependant, il ne faut pas utiliser la version 1.0 de BlitzCam qu'on retrouve encore dans le Play Store de Google (vérifier le 3 janvier 2017). Il faut télécharger la plus récente version de l'application du site http://www.blitzwolf.com/support.html (version 1.4 à la même date).

Un peu comme semble l'admettre Homer Zeng à mi-chemin dans ses explications, je pense qu'il aurait été préférable que j'utilise la version Windows de BlitzCam (version 8.16.05.18) et que j'accède à l'interface Web de la caméra avec Internet Explorer qui peut utiliser l'ocx installé par ipc.exe. En revanche, j'ai été en mesure de facilement vérifier que la caméra fonctionnait en mode point d'accès sans fil (AP mode) sans trop de difficulté.

Dès que la connexion est faite avec la caméra, il est préférable de mettre à jour son micrologiciel. Je l'ai fait plus tôt aujourd'hui avec BlitzCam pour Windows. On clique avec le bouton droit de la souris sur la caméra, on sélectionne le menu Device Settings puis Device mangagement. Enfin on clique sur le bouton Apply à droite de Firmware upgrade. Cela prendra deux ou trois minutes pour que le téléchargement se fasse et il faut prévoir le temps d'un redémarrage de la caméra. Pendant tout ce temps on perd contact avec celle-ci. C'est la version 2.0.531 du micrologiciel qui est maintenant chargée sur la caméra (4 janvier 2017). L'interface Web identifie la version du micrologiciel que par les trois derniers chiffres : 351.

Avec cette nouvelle version du micrologiciel, peut-être sera-t-il possible de fixer une adresse IP statique pour la caméra avec l'interface Web ce que je n'arrivais pas à faire avec la version 2.0.206 fournie initialement. En principe l'application BlitzCam (dans Android ou Windows) peut être utilisée aussi, mais je n'ai pas testé. C'est le serveur DHCP du routeur qui fixe l'adresse IP de la caméra à partir de son adresse MAC. La façon de faire ce type d'opération est différente d'un routeur à l'autre. Il arrive qu'il ne soit pas facile à réaliser cette tâche, mais j'ai toujours trouvé avec la dizaine de routeurs que j'ai utilisé jusqu'à maintenant. Un bon moteur de recherche est un allié puissant dans ce genre de démarche.

Ce serait une très bonne idée de changer les mots de passe, notamment, pour l'interface Web. On peut enfin le faire avec les nouvelles versions du micrologiciel et des logiciels. J'ai aussi changé le port TCP pour l'interface Web. On peut faire cela avec Internet Explorer en allant à l'adresse http://<ip-de-la-caméra>; dans mon cas: http://192.168.0.26.

Selon le feuillet intitulé User Manual, BlitzCam pour Android est compatible avec les versions 2.3 et plus récentes de ce système d'exploitation. Je ne peux confirmer cette assertion, mais j'ai fait tourner le logiciel sur une vieille tablette, un Coby MID7065 avec Android version 4.0.4. Ce n'est pas très solide, mais on peut voir la vidéo et recevoir les avertissements de mouvement. Comme sur la tablette plus récente, l'application affiche le clavier virtuel au démarrage. Cependant, il faut s'empresser de taper sur quelques touches dans le vieil appareil sinon BlitzCam se plante.

Utilisation sous Android - ONVIF

Puisque la caméra est compatible avec le standard ONVIF, on peut se connecter à elle avec d'autres logiciels que ceux fournis par le fabricant. Les logiciels suivants trouvés dans Play Store,

fonctionnent plus ou moins bien. J'ai remarqué qu'il faut désactiver puis activer la caméra pour voir le flux vidéo à chaque départ de IP Cam Viewer Lite. De plus l'enregistrement d'un flux vidéo s'arrête après deux minutes, mais c'est probablement l'une des contraintes de l'édition gratuite de cette application. Ni l'une ni l'autre de ces applications ne peut enregistrer le flux de vidéo de haute définition. Je suppose qu'il s'agit là d'une limitation de la tablette pas très puissante. OnvifClient a aussi de la difficulté a se rebrancher avec la caméra quand il démarre. Si je change les paramètres réseau, passant du DHCP manuel à automatique et vice-versa à quelques reprises, j'arrive la plupart du temps à rétablir la connexion avec la caméra et ainsi voir et enregistrer le flux vidéo. Un des avantages de ce logiciel gratuit est qu'il n'y a pas de limite quand au temps d'enregistrement du flux video. Il y a une version Windows que je n'ai pas testée.

Il y aussi VLC for Android de Videolan. J'utilise la version Linux mais cette version est beaucoup plus limitée. En outre on ne peut enregister un flux vidéo et je n'arrive pas à rejoindre le flux de haute définition de la caméra, seulement le flux secondaire.

Utilisation sous Linux - RTSP

Puisqu'il n'y a pas d'application du fabricant qui fonctionne sur Linux, il faut de l'information au sujet de la caméra pour utiliser d'autres programmes. Au début, les commentaires des acheteurs de la caméra sur le site du vendeur, dont celui de zerobug du 11 décembre 2016 étaient ma source principale d'information pertinente. Depuis, je me suis rendu compte que cette information était pour l'ensemble disponible à partir du logiciel BlitzCam pour Windows.

 Port HTTP :80 (par défaut, peut être changé)
Port TCP :4001
Port ONVIF :8000
Port RTSP :8554
Nom d'utilisateur :admin
Mot de passe :adminadmin (par défaut, devrait être changé, était admin auparavant)

Le nom d'utilisateur et le mot de passe sont pour accéder aux serveurs Web (HTTP, ONVIF et RTSP) de la caméra. Les logiciels BlitzCam utilisent probablement le port TCP 4001 pour communiquer avec la caméra car ils demandent le numéro d'identité et le mot de passe d'accès imprimé sur l'étiquette fixée à la caméra.

On obtient les flux vidéo via le protocole RTSP aux adresses suivantes :

Flux haute définition 720P (1280×720)
rtsp://admin:<mot_de_passe>@<IP_de_la_caméra>:8554/1.3gp
Flux secondaire, résolution VGA (640×480)
rtsp://admin:<mot_de_passe>@<IP_de_la_caméra>:8554/2.3gp
Le nom d'utilisateur et le mot de passe sont nécessaires avec les nouvelles versions du micrologiciel; ils ne l'étaient pas antérieurement.

Dans Ubuntu, j'utilise VLC media player pour voir et enregistrer les flux vidéo. Entrer la commande suivante dans un terminal (démarré avec la combinaison de touches AltCtrlT) :

michel@hp:~$ vlc -vvv rtsp://admin:mot_de_passe@IP_de_la_caméra:8554/1.3gp

Si l'on préfère lancer VLC en mode graphique, alors on entre sensiblement la même source dans la boite de saisie intitulée Protocole réseau/Entrer un URL Réseau soit rtsp://admin:mot_de_passe@IP_de_la_caméra:8554/1.3gp. On trouve cette boîte avec les choix de menu Média/Ouvrir un flux réseau.... Ensuite il faut aussi choisir Lire comme action au bas de la fenêtre.

Pour enregistrer le flux vidéo dans un fichier les commandes suivantes fonctionnent :

michel@hp:~$ vlc -vvv rtsp://admin:mot_de_passe@IP_de_la_caméra:8554/1.3gp --intf dummy --sout file/demux:nom_fichier.mpg

demux peut être
 pspour le format MPEG2-PS ou
tspour le format MPEG2-TS.

L'option --intf dummy fait en sorte que l'interface utilisateur n'est pas affiché. On peut faire plus court en invoquant cvlc est que est la version ligne de commande du logiciel :

michel@hp:~$ cvlc -vvv rtsp://admin:mot_de_passe@IP_de_la_caméra:8554/1.3gp --sout file/demux:nom_fichier.mpg

À noter qu'on peut mettre h.264 au lieux de mettre 1.3gp.

Domoticz

Actuellement, il ne semble pas y avoir de moyen d'obtenir une image ponctuelle (snapshot) avec un URL. Les logiciels Android le font avec des fonctions ONVIF. Cela veut dire qu'il ne sera pas facile d'intégrer cette caméra dans Domoticz.