Mes vieilles enceintes portables ayant rendu l’âme juste avant le départ des vacances estivales, j’ai décidé d’acheter une enceinte portable Bluetooth. Après quelques essais en magasin, mon choix s’est porté vers une MiniJamBox du constructeur JawBone. Pour environ 100€, elle offre des performances acceptables dans un volume de poche et avec une bonne autonomie.
L’association c’est effectué sans problème avec mes « eDevices »: iPhones 5S & Mac Book Pro de ma femme et mes iPhone 4 & Google Nexus 5.
Cependant, impossible de la faire détecter par mon PC Ubuntu 14.04…
Le problème
Lors de la connexion Bluetooth, le message d’erreur suivant est affiché:
Failed to connect to the device…
En fouillant dans les logs, j’ai trouvé les messages suivants:
Il y a quelques mois, j’avais rédigé un billet sur ma shortlist d’UltraBooks compatible avec un système d’exploitation GNU/Linux. Depuis, mon choix s’est porté vers le Dell XPS 13 » Developer Edition (version 2014 Sputnik). J’ai un peu attendu avant de me lancer dans la rédaction de cet article afin d’avoir le recul suffisant.
Outside de beast
On commence par le premier contact avec la machine: l’extérieur. Première chose qui me vient: il est beau. La preuve: même ma femme qui ne jure que par Apple m’a complimenté sur les lignes fines et la qualité des matières (aluminium et plastique). On peut donc le laisser traîner sans problème au milieu de salon.
Au niveau de la taille, il se rapproche du format d’un MacBook Air sans en atteindre la finesse. Comparé à mon ancienne machine, celle-ci passe pour un dinosaure.
Taille du Dell XPS comparé à un Apple MBP 13″
Inside de beast
Basé sur processeur Intel i7 4500U cadencé à 3 GHz et disposant de 8 Go de RAM, il est livré avec un disque dur SSD de 250 Go avec Ubuntu 12.04 LTS pré-installé. Pour mon utilisation personnelle (majoritairement du développement, du blogging, de la navigation Internet et de la visualisation de films/séries TV), le dimensionnement de la machine est suffisant. J’aurai cependant aimé pouvoir gonfler la mémoire vive à 16 voir 32 Go de RAM mais Dell ne propose pas cette customisation (d’après certains forums, il semble que la RAM soit soudée à la carte mère…).
L’autonomie est d’environ 6 heures avec une luminosité d’écran adapté (je suis à un peu plus de 50% à l’intérieur de ma maison) et une utilisation mixte (développement, surf et visionnage de vidéos HD). On est donc dans la moyenne des machines de la même catégorie.
L’écran
L’écran de 13.3 pouces (résolution full HD de 1920×1024) est superbe: lumineux, uniforme en terme de rendu des couleurs et tactile. Ce dernier point est très bien géré, avec notamment la gestion des gestes comme le pincé/écarté pour le zoom/dé-zoom ou le scrolling haut et bas.
C’est un vrai bonheur à regarder. Cependant, il est brillant et donc dédié à une utilisation à l’intérieur.
Ecran superbe mais brillant, donc utilisation en extérieur à éviter… (photo prise avec soleil dans le dos)
Le clavier
Les touches sont très agréables, relativement silencieuses. Seul bémol, il n’y a pas de touches Page Up et Page Down, il faut appuyer sur une combinaison de touches (Fn+Up et Fn+Down). C’est un peu gênant surtout pour les développeurs qui se servent souvent de ces touches pour naviguer à l’intérieur des codes sources. Cependant, après quelques jours, j’ai pris l’habitude des combinaisons.
Un rétro-éclairage du plus bel effet se déclenche automatiquement en cas de besoin. On peut donc continuer à coder dans la nuit :).
Le touchpad
Grand, très grand, trop grand. Bien que réactif et précis, il m’arrive régulièrement de cliquer dessus en saisissant un texte sur le clavier. Sous Ubuntu 14.04, il faut saisir la ligne de commande suivante pour avoir un touchpad fonctionnel avec la gestion multitouch:
echo "blacklist i2c_hid" | sudo tee -a /etc/modprobe.d/blacklist.conf
Puis rebooter la machine.
Système d’exploitation GNU/Linux
Le Dell XPS Dev Edition est livré en standard avec Ubuntu 12.04 LTS. Au premier démarrage, on tombe donc sur le wizard qui permet de configurer le nom de la machine, le compte utilisateur et la configuration locale (clavier, heure…). Il est donc utilisable en moins de 5 minutes avec un environnement graphique Unity. Avant la réception de ma machine, j’ai consulté les forums de Dell pour savoir si une évolution vers Ubuntu 14.04 LTS était prévue: malheureusement ce n’est pas le cas. On voit ici les limites de la stratégie Linux de Dell. Si on peut louer la démarche de Dell de proposer un PC portable de cette qualité sans Windows, on ne peut que déplorer les limites comme le fait de travailler avec une version qui date de plus de deux ans (même si le support long terme est de cinq ans). Les acheteurs de ce type de configuration sont des geeks qui s’en foutent d’avoir sur leur PC perso une version « stable » de Linux, ils veulent de la nouveauté.
Cependant, cette machine supportant tous les systèmes de dernière génération, j’ai donc téléchargé l’ISO d’Ubuntu Gnome Edition version 14.04 et j’ai fait un test à partir d’une clés USB live pour vérifier que le matériel était compatible. Une fois fait, j’ai donc réinstallé complètement la machine.
Une fois correctement configuré, la machine est très réactive et agréable à utiliser.
Ma prochaine étape sera d’essayer une Arch Linux avec un environnement Gnome 3.12.
Conclusion
Je suis globalement très satisfait de mon achat. Pour avoir bien étudié les différentes alternatives, le Dell XPS est un bon compromis entre la qualité, la puissance et le coût de la machine.
Les +:
Qualité générale de fabrication de la machine
Puissance idéale pour le développement logiciel
Poids et taille de la machine que l’on hésite pas à emporter en voyage
Ecran de grande qualité
Rapport qualité/prix (j’ai eu le mien à un peu moins de 1100€ grâce à une promotion)
Autonomie
Les -:
Pas de port Ethernet (il faut passer par un adaptateur Ethernet/USB que l’on trouve à environ 25€ sur le Web)
Pas de lecteur de carte SD
Pas de lecteur DVD/BlueRay (perso je n’en fait rien…)
Ecran brillant donc difficilement utilisable en plein soleil
Je cherche à remplacer mon bon vieux PC laptop personnel qui commence un peu à dater (Fujitsu Lifebook S Series de 2009). L’utilisation que je fais de ce PC est assez varié: Surf sur le Web, blogging, développement, traitement d’image (photo)…
A partir de mon expérience sur le Fujitsu, les caractéristiques minimales sont les suivantes (par ordre décroissant d’importance):
composant compatible avec les distributions GNU/Linux (Ubuntu pour mon cas)
écran avec une résolution Full HD avec une diagonale minimale de 13″
8 Go de RAM
disque dur système SSD car une fois que l’on y a goûté, il est impossible de revenir en arrière
processeur i5 ou supérieur
qu’il ne soit pas trop moche car il traîne souvent dans mon salon et pas trop lourd car je l’emporte avec moi en voyage et déplacement
un clavier AZERTY normal (donc ce qui met hors jeu des Apple MacBook Pro…)
un prix autour des 1200€
Comme vous pouvez le voir, ces caractéristiques collent parfaitement avec les laptop de type ultrabook.
J’ai donc commencé à chercher sur le net des informations sur les machines pouvant coller à mes besoins. De manière assez surprenante, la liste n’est pas si grande que cela. En effet, à l’heure actuelle (décembre 2013), beaucoup d’Ultrabooks ne proposent qu’une résolution « HD Ready » (1366×778 pixels) ou d’une mémoire trop juste (4 Go).
Ainsi, ma shortlist initiale se compose d’une dizaine de machines: CLIQUEZ ICI pour consulter ma liste sur Google Drive.
Voici, par ordre alphabétique, les ultrabooks qui sortent du lot par rapport à mes besoins/goûts.
Clevo W840SU 14″
Proposé par le site Anglais PCSpecialist, ce laptop n’est pas à proprement parler un ultrabook mais dispose d’une configuration paramétrable, d’un port Ethernet (oui madame !) et de composant de qualité. Il peut de plus être commandé sans OS Windows, d’ou un prix de vente assez concurrentiel (moins de 1200 € pour une configuration musclée).
Le seul problème pour moi est le design général qui n’est pas vraiment glamour.
Dell XPS 13 Dev
La deuxième machine est beaucoup plus connue car elle avait fait le buzz au moment de sa commercialisation. Imaginer un ultrabook design, doté d’une configuration musclée pour les développeurs sous Ubuntu (au moins on est sûr de la compatibilité) !
Vous en avez rêvé ? Dell a essayé de le faire avec son XPS 13 Dev Edition.
Au niveau du look, rien à dire, c’est une belle machine que l’on a pas honte de sortir en public. Au chapitre des points négatifs: pas de port Ethernet et un prix qui grimpe à plus de 1300€ avec la livraison.
Lenovo Ideapad Yoga 2 Pro 59386559
Quoi ? Un IBM (enfin Lenovo) dans cette sélection ? Et oui, l’Ideapad Yoga 2 est une bien belle machine avec notamment une dalle HD avec une résolution de 3200×1800 pixels, un design très sympa (si on aime le orange) et une configuration qui tient la route pour 1200€.
Il est par contre très difficile de le trouver en France et la compatibilité avec Linux demande quelques manipulations.
MOUNTAIN Portátil LightU T744G
Enfin, pour finir cette sélection, nous allons aller du coté de l’Espagne ou l’intégrateur Mountain propose des PC et laptops à configurer et compatible avec Ubuntu (il propose même d’installer nativement l’OS avant de vous l’expédier).
La configuration est bonne, le design plus sexy que le Clevo Anglais mais le prix grimpe à plus de 1300€.
Conclusion
Je ne suis pas encore fixé sur mon choix final. Pour l’instant, le Montain, le Dell et le Lenovo tiennent la corde.
Dans la jungle très lucrative des « NAS appliance », c’est à dire des serveurs NAS intégré dans un hardware et un système spécifique, NetApp fait office de leader pour la qualité prix de ses produits. Nous allons voir ensemble dans ce billet comment superviser une machine NetApp FAS2200 à partir de Nagios ou de Shinken.
Note: ce billet doit également être valable pour l’ensemble des produits NetApp.
Il faut ensuite éditer le fichier (par exemple /usr/local/shinken/libexec/check-netapp-ng.pl) pour y éditer la ligne numéro 15 avec le chemin vers les librairies:
use lib "/usr/local/shinken/libexec";
Note: Respectivement /usr/local/nagios/libexec pour Nagios.
On doit ensuite faire connaître le plugin à Shinken (ou Nagios) en ajoutant les lignes suivantes dans votre fichier commands.cfg (sous /usr/local/shinken/etc):
Il ne reste plus qu’à définir votre serveur NAS dans la configuration de Shinken (ou de Nagios). Par exemple, j’ai un fichier nas01.cfg qui contient:
define host {
use ssh,generic-host
host_name nas01
address 192.168.1.130
}
define service {
use generic-service
host_name nas01
service_description NetAPP Global status
check_command check_netapp_globalstatus
}
define service {
use generic-service
host_name nas01
service_description NetAPP Temperature
check_command check_netapp_temp
}
define service {
use generic-service
host_name nas01
service_description NetAPP FAN
check_command check_netapp_fan
}
define service {
use generic-service
host_name nas01
service_description NetAPP Power Supply
check_command check_netapp_ps
}
define service {
use generic-service
host_name nas01
service_description NetAPP CPU LOAD
check_command check_netapp_cpuload
}
define service {
use generic-service
host_name nas01
service_description NetAPP NVRAM
check_command check_netapp_nvram
}
define service {
use generic-service
host_name nas01
service_description NetAPP Disk used Home
check_command check_netapp_diskused!/vol/vol0/
}
define service {
use generic-service
host_name nas01
service_description NetAPP Disk used Archive
check_command check_netapp_diskused!/vol/vol_ARCHIVE/
}
define service {
use generic-service
host_name nas01
service_description NetAPP Disk used Install
check_command check_netapp_diskused!/vol/vol_INSTALL/
}
define service {
use generic-service
host_name nas01
service_description NetAPP Failed disk
check_command check_netapp_faileddisk
}
Une fois Shinken (ou Nagios) redémarré et après les premiers checks, vous devriez voir la page de supervision apparaître dans l’interface Web (comme au début de ce billet).
On peut donc superviser les choses suivantes:
La charge CPU (ce qui peut être utile si votre serveur NAS est trop chargé, par exemple trop d’accès simultanés)
La taille utilisé par partitions
L’état des ventilateuts
L’état des disques (supervision du RAID)
Le status global
Voilà une bonne chose de faite: la supervision du serveur le plus sensible (il y a toutes vos données dessus normalement) de votre infrastructure.
La semaine dernière j’ai reçu la dernière tablette Nexus 7 de Google. C’est mon premier matériel sous Android et je vais, dans ce billet, partager mes premières impressions avec vous.
Le hardware
Apple ayant poussé le packaging de ces produits à un niveau très (trop ?) élevé, la concurrence s’est petit à petit mis au diapason et le déballage de la version 2013 de la tablette 7 pouces de Google, en réalité fabrique par Asus, est un vrai bonheur: qualité de fabrication de la boîte, la tablette occupant toute la surface à l’ouverture, le câble mini USB (un peu court) et le chargeur disposés en dessous.
Une fois dans les mains et le film protecteur retiré, la première chose qui saute aux yeux est la finesse de la Nexus 7, la découpe en biseau accentuant encore plus cette impression. Par contre son poids (290 g) n’est pas négligeable, sans toutefois sortir des normes des autres tablettes du marché. Son format (14.4 * 20 cm) est pour moi idéal car on peut la tenir verticalement dans une seule main et se servir de l’autre pour naviguer.
Seul bémol, quand on prend la tablette, les boutons d’allumage et de réglage du volume, positionnés sur le coté en haut à droite ne tombent pas sous la main et il faut souvent les regarder pour ne par augmenter le son au lieu de le baisser.
L’écran est très lumineux et toujours lisible, même si on utilise la tablette en extérieur. Il est de plus très résistant aux traces de doigt. J’ai en mon fils, le meilleur bêta testeur pour ce dernier test…
Je passe rapidement sur la qualité du capteur photo. C’est pour moi un gadget sur ce genre de format de tablette. Qui, mis à part certains touristes, utilise des tablettes 7 ou 10 pouces pour prendre des photos ? Coté vidéo, il est possible d’enregistrer des séquences en HD 720p même si là encore, la Nexus ne pourra pas remplacer une « vraie » caméra.
Le système
La Nexus 7 opus 2013 est livré avec le système Android 4.3 (alias Jelly Bean). Vu la puissance du processeur de la tablette, la navigation dans les différentes fenêtres d’Android est parfaitement fluide. J’aime beaucoup le nouveau système de switch entre utilisateurs qui permet de partager la tablette entre plusieurs personnes d’une même famille et ainsi d’avoir au choix: un environnement complètement indépendant par personne (pour les parents) ou bien des comptes limités ou l’on choisit les applications/fonctions disponibles (pour les enfants).
Mis à part cela, on retrouve un système Android classique (sans surcouche), auquel j’ai immédiatement ajouté quelques applications « système » comme le très bon SSH Server et l’indispensable MX Player qui permet de lire tous vos fichiers vidéos (ce qui n’est pas le cas de l’application fournie en standard par Google).
Habitué à IOS sur mon smartphone, j’ai été très agréablement surpris par la gestion multitache, le switch entre applications et la fermeture rapide de ces dernières (voir screenshot ci-dessous). C’est vraiment un point ou Android a gagné des points.
Les applications
La grande majorité des jeux ne sont pas optimisées pour l’affichage sur l’écran HD de la Nexus 7 (écran full HD de 1900*1200 pixel) et sauf exceptions souvent signalées dans le store Google Play, on se retrouve avec une interpolation qui va doubler les pixels et produire donc un affichage relativement grossier. C’est par exemple le cas sur des applications aussi connues que Candy Cruch ou Rayman Jungle Run. Pour les jeux HD, on tire alors profit de la puissance de la machine et je ne constate aucun ralentissement sur les jeux gourmands comme Asphalt 8.
Avec les applications d’informations et orientées média sociaux, on profite d’un affichage HD de toute beauté. C’est ainsi, le cas pour Facebook, Pinterest ou Appy Geek pour ne citer qu’elles.
Conclusion
Je suis satisfait de mon achat. La tablette a déjà été adopté par mes enfants et de mon coté je trouve l’expérience utilisateur très agréable. Je reparlerai prochainement de mon nouveau jouet.
Si vous voulez un test technique exhaustif, je vous conseille la lecture des reviews de PC World (en Fr) ou de Paste Mag (en En).tio
Après une rapide présentation de la Raspberry Camera 5M (voir ce précédant billet), entrons dans le vif du sujet avec une utilisation pratique: le streaming « live » du flux vidéo vers une autre machine de votre réseau. Les applications peuvent aller d’un « baby video phone » à un « interphone vidéo » pour votre maison en passant par toutes les autres choses qui vous passent par la tête !
Actuellement, la camera dispose d’un logiciel spécifique Raspivid (dont les sources sont disponibles sur Github), pour capturer et encoder en H.264 la vidéo dans un fichier ou bien sur le flux standard de sortie (stdout). C’est cette dernière particularité que nous allons exploiter afin de rediriger le flux vidéo vers une pipeline GStreamer qui va s’occuper du streaming vers notre machine cible (celle ou l’on souhaite voir la vidéo).
Installation des composants GStreamer
On commence par installer GStreamer sur notre Raspberry PI. Pour cela on saisi la commande suivante:
Détaillons un peu cette ligne de commande. La première partie est dédiée à Raspvid et s’occupe de l’encodage H.264. Les paramètres sont très importants pour avoir une qualité vidéo conforme à vos besoins. Ainsi, dans mon exemple, je n’y suis pas allé avec le dos de la cuillère car j’ai opté pour une résolution HD 720p (-w 1280 -h 720) à 25 images par seconde (-fps 25) pendant un temps infini (-t -1).
Pour le streaming, le paramètre de débit (bitrate, -b 2500000) est primordial car il va fixer le débit sortant de la vidéo (à 2.5 Mbps dans mon exemple).
Ce débit est à adapté selon votre résolution. Après quelques tests, voici une table indicative des débits à utiliser:
SD Low: -w 480 -h 260 -fps 25 -b 800000
SD Medium: -w 640 -h 360 -fps 25 -b 1200000
SD High: -w 960 -h 540 -fps 25 -b 1800000
HD Ready: -w 1280 -h 720 -fps 25 -b 2500000
Full HD: -w 1920 -h 1080 -fps 25 -b 5000000
Note: attention au dimensionnement de votre réseau si vous utilisez des débits élevés, en effet même avec des bornes Wifi ressentes, il est difficile de garder un débit constant de 5 Mbps (Full HD).
Note 2: sur le Raspberry, je conseille d’utiliser l’interface Ethernet et pas un dongle Wifi, surtout avec des résolutions importantes.
La commande passe ensuite la main à GStreamer qui va encapsuler le flux H.264 dans un conteneur RTP puis créer le serveur TCP en écoute des clients (il faudra penser à remplacer l’adresse IP par celle de votre Raspberry Pi).
Lecture de la vidéo depuis une autre machine
J’ai fait le test depuis mon portable Ubuntu 13.04 en saisissant la ligne de commande suivante pour récupérer et afficher la vidéo:
La qualité de la vidéo est très bonne, fluide. On note quelques retard quand on sollicite le réseau en parallèle mais cela semble normal vu les débits utilisés.
Ce qui est très impressionnant au niveau du Raspberry, c’est la faible consommation CPU. En effet, Raspivid ne dépasse pas les 2% (merci le GPU) et GStreamer les 25%. On peut sans aucun problème laisser tourner le tout sans risque de surchauffe.
Conclusion
J’espère que cette rapide introduction sur le streaming vidéo depuis le Raspberry vous a donné des idées que vous aller vous empresser de nous faire partager dans les commentaires ci-dessous !
Retrouvez mes articles sur l’écosystème Raspberry Pi en cliquant ici.
Raspberry propose depuis peu et pour moins de 25€ une caméra dédiée à sa gamme Pi. Cette caméra de quelques grammes se connecte à une Raspberry Pi (model A ou B) à travers une interface CSi v2 (MIPI camera interface) dédiée. Grâce à Kubii (fournisseur Farnell en France) j’ai pu obtenir rapidement un de ces caméra que nous allons tester dans ce billet.
Découverte de la (petite) bête
Avec un capteur d’une résolution native de 5 mégapixels (5M) et au niveau optique d’une lentille de focalisation fixe, la caméra peut servir d’appareil photo (résolution maximale de 2592 par 1944 pixels) ou de caméra vidéo (format HD juqu’à 1080p). Son poids est impressionnant car elle ne pèse pas plus de 4 grammes pour une dimension de L25 l20 H9 (en millimètre).
Installation de la caméra
On commence par brancher la caméra sur l’interface CSi. Il faut y aller doucement, sans forcer comme un bourrin. Je vous conseille de visualiser la vidéo suivante:
Il faut disposer d’une distribution Raspbian à jour avant de pouvoir activer la caméra:
sudo apt-get update && sudo apt-get upgrade
Puis on lance ensuite l’utilitaire raspi-config ou un nouveau menu devrait vous permettre d’activer la caméra (choix numéro 5 – Activate the camera):
sudo raspi-config
Un reboot plus tard vous pouvez commencer à jouer avec la caméra
Utilisation de la caméra pour prendre des photos
Première surprise un peu désagréable: la caméra n’est pas reconnue comme un device vidéo standard (accessible via /dev/videoX). En l’état actuel des choses on ne peut donc pas l’utiliser avec une bibliothèque comme GStreamer.
Capturons notre première vidéo en full HD (1080p) pendant 10 secondes (-t 10000):
raspivid -t 10000 -o video001.h264
La vidéo est stocké au format H.264 dans le fichier video001.h264. Pour lire cette vidéo sur votre Raspberry, vous pouvez utiliser la commande omxplayer qui va utiliser le GPU interne et afficher la vidéo d’une manière fluide sans consommation CPU.
omxplayer video001.h264
On peut voir que la qualité du capteur est au rendez-vous, la vidéo est lumineuse et fluide, comparable à ce que l’on peut obtenir avec un bon smartphone.
Pour activer la prévisualisation de la vidéo dans un coin de l’écran (position 0x0 et taille de 640×480) on peut utiliser l’option -p:
raspistill
==========
--width, -w Set image width <size>
--height, -h Set image height <size>
--quality, -q Set jpeg quality <0 to 100>
Quality 100 is almost completely uncompressed. 75 is a good all round value
--raw, -r Add raw bayer data to jpeg metadata
This option inserts the raw Bayer data from the camera in to the JPEG metadata
--output -o Output filename <filename>.
Specify the output filename. If not specified, no file is saved. If the filename is '-', then all output is sent to stdout.
--verbose, -v Output verbose information during run
Outputs debugging/information messages during the program run.
--timeout, -t Time before takes picture and shuts down.
The program will run for this length of time, then take the capture (if output is specified). If not specified, this is set to 5 seconds
--timelapse,-tl Timelapse mode.
The specific value is the time between shots in milliseconds. Note you should specify %d at the point in the filename where you want a frame count number to appear. e.g.
-t 30000 -tl 2000 -o image%d.jpg
will produce a capture every 2 seconds, over a total period of 30s, named image1.jpg, image2.jpg..image15.jpg.
--thumb, -th Set thumbnail parameters (x:y:quality)
Allows specification of the thumbnail image inserted in to the JPEG file. If not specified, defaults are a size of 64x48 at quality 35.
--demo, d Run a demo mode <milliseconds>
This options cycles through range of camera options, no capture is done, the demo will end at the end of the timeout period, irrespective of whether all the options have been cycled. The time between cycles should be specified as a millisecond value.
--encoding, -e Encoding to use for output file
Valid options are jpg, bmp, gif and png. Note that unaccelerated image types (gif, png, bmp) will take much longer to save than JPG which is hardware accelerated. Also note that the filename suffix is completely ignored when encoding a file.
--exif, -x EXIF tag to apply to captures (format as 'key=value')
Allows the insertion of specific exif tags in to the JPEG image. You can have up to 32 exif tge entries. This is useful for things like adding GPS metadata. For example, to set the Longitude
--exif GPS.GPSLongitude=5/1,10/1,15/100
would set the Longitude to 5degs, 10 minutes, 15 seconds. See exif documentation for more details on the range of tags available; the supported tags are as follows.
Raspivid
raspivid
========
--width, -w Set image width <size>
Width of resulting video. This should be between 64 and 1920.
--height, -h Set image height <size>
Height of resulting video. This should be between 64 and 1080.
--bitrate, -b Set bitrate.
Use bits per second, so 10MBits/s would be -b 10000000. For H264, 1080p a high quality bitrate would be 15Mbits/s or more.
--output -o Output filename <filename>.
Specify the output filename. If not specified, no file is saved. If the filename is '-', then all output is sent to stdout.
--verbose, -v Output verbose information during run
Outputs debugging/information messages during the program run.
--timeout, -t Time before takes picture and shuts down.
The program will run for this length of time, then take the capture (if output is specified). If not specified, this is set to 5seconds
--demo, d Run a demo mode <milliseconds>
This options cycles through range of camera options, no capture is done, the demo will end at the end of the timeout period, irrespective of whether all the options have been cycled. The time between cycles should be specified as a millisecond value.
--framerate, -fps Specify the frames per second to record
At present, the minimum frame rate allowed is 2fps, the maximum is 30fps. This is likely to change in the future.
--penc, -e Display preview image *after* encoding
Switch on an option to display the preview after compression. This will show any compression artefacts in the preview window. In normal operation, the preview will show the camera output prior to being compressed. This option is not guaranteed to work in future releases.
Conclusion
Pour moins de 60€, il est donc possible d’avoir un Raspberry Pi model B + Camera qui vous ouvre la porte à pas mal de possibilité. J’espère rapidement voir apparaître une API (en Python par exemple) permettant de programmer directement la caméra.
De mon coté je vais faire un peu mumuse avec ce nouveau jouet puis revenir prochainement vers vous pour de nouveaux billets sur le sujet !
Certains buzz démarrent avec pas grand chose, d’autre sont issus de vraies bonnes idées. Le Raspberry Pi B 512 est de cette catégorie là. Proposer une carte mère pour moins de 30€ avec un CPU ARM à 700 Mhz, un GPU bi-core pour un affichage « full HD » et 512 Mo de RAM. J’ai donc décidé d’acheter le modèle Raspberry PI B 512 avec un jolie boitier transparent. Ce kit est en vente chez Kubii au prix de 50€ (au passage je tiens à signaler le très bon service client de Kubii. Service rapide et personnalisé. C’est suffisamment rare pour le signaler).
Passons au vis du sujet avec le déballage et l’installation de la bête.
Pour quoi faire ?
L’avantage d’un prix aussi bas est de pouvoir se lancer dans son achat sans avoir vraiment d’idée précise d’utilisation en tête. Après quelques jours, voici une liste de choses que l’on peut ou ne peut pas faire avec un Raspberry.
Le Raspberry Pi B 512 est parfaitement adapté pour:
Lire des fichiers audio et vidéo en haute définition (en utilisant OMXplayer le player spécifique du Raspberry Pi)
auto-héberger son site personnel (avec les limites d’usages au niveau du débit de la liaison montante de votre ligne Internet) avec une configuration basée sur LightHTTPd ou sur Nginx
héberger son serveur VPN pour accèder à son réseau personnel depuis l’exterieur
superviser votre réseau (jusqu’à une centaine de machines avec 10 services/machine sans aucun problème) avec une installation de Shinken et de Munin
développer des applications de domotique (quelques exemples ici, là et encore là)
… pleins d’autres idées qui peuvent vous passer par la tête (en voir 50 chez l’ami Korben)
Il peut être utilisé occasionnellement pour:
surfer sur Internet (mais il est vrai que l’on est habitué à un affichage rapide des pages, ce que l’on obtient pas avec le Raspberry Pi)
lire ces mails et faire un peu de bureautique simpliste
Passez votre chemin si vous voulez:
remplacer votre PC fixe ou mobile par un Raspberry Pi B 512…
Déballage
Commençons par la fin en montrant le résultat: mon Raspberry PI B 512 en action avec un écran, un clavier et une souris.
Regardons de plus prêt le coeur du système:
Installation
Choisir son système d’exploitation
Le Raspberry Pi est compatible avec les systèmes d’exploitations GNU/Linux. Certaines distributions se sont spécialisées pour ce matériel spécifique. La liste des systèmes d’exploitations compatibles se trouve sur cette page du site officiel. Mon choix c’est porté vers la Raspbian « Wheezy » qui est une distribution dérivée de Debian que je manipule tous les jours. Il existe également une autre distribution basée sur Arch Linux qui offre des performances équivalentes (voir l’article de P3ter sur le sujet).
Le système d’exploitation doit être stocké sur une carte SD à insérer dans le lecteur du Raspberry PI. Pour mettre le système Raspbian sur la carte SD j’ai utilisé mon PC portable sous Ubuntu 12.10 qui dispose d’un lecteur intégré de carte SD. La procédure suivante est donc à adapter selon votre matériel.
On commence donc par télécharger l’image de la dernière version de Raspbian puis de vérifier avec le logiciel sha1sum que l’archive est complète.
La valeur barbare donnée par la commande sha1sum est à comparer avec celle de référence disponible sur la page de téléchargement. Si elles différent alors il ne vous reste plus qu’à recommencer le téléchargement.
On peut ensuite décompresser le fichier pour obtenir l’image disque (2013-02-09-wheezy-raspbian.img dans mon cas):
Graver son système sur la carte SD (source: eLinux)
On commence par insérer la carte dans son lecteur (celui de mon PC portable dans mon cas), puis on utilise la commande df -h pour obtenir le point de montage (/dev/sdb1 dans mon cas) correspondant à la carte SD. Attention de bien utiliser le point de montage pour éviter de formater votre disque système !!!:
Une fois le point de montage identifié, il faut saisir les commande suivante (en remplaçant /dev/sdb1 par votre point de montage):
Quelques explications sur cette dernière commande:
elle doit être lancée avec les droits root (d’ou l’utilisation de sudo)
if donne l’emplacement de l’image de Raspbian « Wheezy »
of donne le point de montage racine (égal à votre point de montage sans le nombre finale soir /dev/sdb dans mon cas)
l’exécution va prendre un peu de temps…
Très bien, votre carte contenant l’OS Raspbian « Wheezy » est prête à être utilisée !
Insérer votre carte dans le lecteur SD du Raspberry PI, brancher un clavier et l’alimentation micro USB et c’est parti !
Configuration initiale du système
Au premier démarrage, vous allez avoir droit au lancement automatique de l’utilitaire de configuration « raspi-config » qu’il est possible de rappeler par la suite en saisissant la commande suivante dans un terminal:
sudo raspi-config
Raspi-config se présente sous la forme suivante:
Les différentes fonctions permettent de:
expand_rootfs: étendre la partition principale à la taille maximale de la carte SD (par exemple si vous avez une carte SD de 16 Go et que vous n’utilisez pas cette fonction, alors vous resterez avec une partition principale de 2 Go)
overscan: force l’affichage de marge pour s’adapter à des écrans 16/9 ou supérieur.
configurer: le clavier (configure_keyboard), le mot de passe par défaut (raspberry) de l’utilisateur par défaut (pi) (change_pass) , votre lieu géographique (change_locale) et le temps (change_timezone)
overclocking: comme Raspberry est une société intelligente, elle autorise l’overclocking de son matériel sans perte de la garantie (mais avec une durée de votre matériel qui risque de diminuer). Fonction à activer si vous voulez utilisez le Raspberry en mode graphique (comme client léger) ou tout autre besoin consommateur de CPU. On a le choix d’overcloking suivant:
memory-split: pour définir la quantité de mémoire vive dédiée au GPU (64 Mo par défaut).
ssh: permet de définir si le serveur SSH doit être lancé par défaut.
boot_behavor: choisir si on veut démarrer le boitier en mode texte (utilisation serveur) ou graphique (client léger avec l’environnement OpenBox + LXDE).
update: qui est en fait un raccourci vers la commande « apt-get update && apt-get upgrade » et ainsi mettre à jour votre système (qui doit être connecté à Internet).
Premières impressions
Comme lors de mon test du Linutop 4, la première impression quand on utilise le Raspberry Pi avec son interface graphique LXDE, est un retour en arrière de quelques années ou il fallait attendre quelques secondes avant l’affichage des fenêtres. La lecture vidéo HD est par contre bleufante (voir le paragraphe en de billet), on voit que le GPU est parfaitement exploité.
Une fois dans un terminal, la machine réagi bien. Dans un très appréciable silence total, on utilise un système GNU/Linux minimaliste mais réactif.
Quelques tests
CPU, GPU et RAM
Sur ces aspects là, rien de notable, on est dans la norme avec ce type de matériel. Si vous voulez des chiffres pour comparer avec d’autres machines, je vous conseille la lecture de cette page Wiki chez eLinux.
Interface réseau
L’interface Ethernet est à la norme FastEthernet (soit un débit théorique maximum de 100 Mbps). Comme le Raspberry Pi n’a pas une capacité de stockage importante, cette vitesse pourra être pénalisante lors de l’accès à vos données stockées sur un NAS ou une autre machine.
Un rapide test avec Iperf montre un débit maximum en TCP de 90 Mbps en entrée et 65 Mbps en sortie. On a donc de bonnes performances pour une interface FastEthernet, en espérant une évolution en Giga pour la prochaine version de Raspberry Pi.
Multimédia
Là ou le Raspberry Pi est bluffant c’est sur les lectures audio et vidéo. En effet, avec les efforts pour adapter XBMC sur ce matériel on dispose de logiciel permettant sans aucun problème de lire des vidéos H.264 full HD.
Si vous ne souhaitez pas passer par XBMC, vous pouvez utiliser OMXPlayer de la manière suivante:
omxplayer -o hdmi <nondufichiervideo>
Il est même possible, pour certains besoins spécifiques d’acheter, pour des sommes assez modiques, des licences pour des codecs MPEG-2 ou VC-1.
Il lui manque quoi ?
Personnellement, je serais assez intéressé par une version luxe (à 60€ max faut pas déconner non plus) intégrant les choses suivantes:
une interface Gigabit Ethernet, pour avoir un connectivité haut débit vers mon NAS
une sortie audio numérique pour connecter le Raspberry Pi à mon DAC (iPhone + Airplay + Shairport + Raspberry Pi + DAC + Ampli = Bonheur)
une troisième interface USB, car les deux premières sont occupées par mon clavier et ma souris et je ne sais pas ou mettre ma clés USB 🙂
Conclusion
Nous voici arrivé au bout de ce premier article sur le Raspberry Pi, d’autres viendront vites, plus spécialisés. Je dois avoué avoir été agréablement surpris pas les capacités et le potentiel de cette petite machine. Le futur est là, devant nos yeux.
Et vous ? Avez vous craqués ? Si oui pour quelle utilisation ?
Retrouvez mes articles sur l’écosystème Raspberry Pi en cliquant ici.
J’écris cet article depuis le Linutop 4 que j’ai eu gracieusement en test pendant quelques semaines (au passage merci à l’équipe Linutop). Pour rappel, le Linutop 4 est un mini PC Fanless et totalement silencieux (pas de disque dur mais une mémoire Flash) utilisant un OS maison nommé Linutop OS 5. Il a comme cible les entreprises souhaitant disposer d’un client bureautique léger et les utilisations de type bornes Internet ou affichages dynamique d’informations.
Les caractéristiques
On commence par un bref aperçu des caractéristiques du boîtier:
Note: le système Linutop OS 5, pré-installé par défaut, occupe environ 450 Mo des 2 Go de la mémoire flash interne.
Premier contact
C’est la première fois que j’utilise une machine totalement silencieuse et je dois avouer que lors du premier démarrage, j’ai vérifié que je n’avais pas oublié de brancher l’alimentation avant de voir apparaître la bannière de configuration sur mon écran. Même par rapport à l’utilisation d’un PC portable, le silence est vraiment total.
L’avantage d’utiliser l’OS maison (Linutop OS 5) est qu’il n’y a aucune configuration à faire sur la machine. Une simple fenêtre de configuration est affichée au première démarrage de la machine et permet de fixer les paramètres comme le langage, le clavier… Pour la majorité des utilisations, il n’y a rien à faire mis à part cliquer sur le bouton OK.
Une fois cette étape passée, on se retrouve sur une distribution GNU/Linux basée sur Ubuntu (et donc bénéficiant des paquets de cette distribution) avec XFCE comme gestionnaire graphique.
Les premières minutes d’utilisation ont été un peu difficile pour moi. En effet, étant habitué à travailler sur des machines puissantes (voir sur-dimensionnées), la relative lenteur du temps de réaction pour les opérations de bases (ouvrir et déplacer des fenêtres, charger des pages Web légères…) m’a sauté au yeux. Après quelques heures d’utilisation, je m’y suis habitué et si on ne demande pas des choses trop lourdes à ce boitier il s’acquitte parfaitement de ses tâches.
Une machine pour quoi faire ?
Les caractéristiques hardware de la machine limite l’utilisation à certain domaine. J’ai essayé, dans ce chapitre de résumer les choses que j’ai pu tester.
Machine parfaitement adapté pour:
naviguer sur Internet (sauf si vous essayez de lire des vidéos en 720p sur YouTube)
de la bureautique classique (document, tableur, présentation)
écouter de la musique (bien qu’il manque à mon goût une sortie numérique)
faire du déport d’affichage (VNC, RDP/TSE) ou de l’administration via SSH
Machine utilisable pour:
regarder des vidéos DivX, MP4, OGG au format SD 480p (le format HD Ready 720p peut passer mais risque de faire chauffer votre machine tandis qu’il faut oublier la lecture de fichier en Full HD 1080p)
développer (si vous utilisez des IDE légères Troll> et pas des usines à gaz comme Eclipse <Troll)
Machine inutilisable pour:
gérer votre bibliothèque de photos / retouche (j’ai essayé et cela n’est pas exploitable)
faire du post traitement vidéo
faire plusieurs choses en même temps… (la RAM du boitier que j’avais en test était de 1 Go mais il est possible en option de passer à 2 Go)
Résumé des + et des –
Le hardware: Linutop 4
Les +
Le silence total !
Qualité de fabrication du boitier. Cela paraît solide
Le boîtier chauffe mais pas de manière excessive
Les –
1 Go de RAM en standard c’est vraiment trop peu
Impossible d’acheter un boîtier « vierge » sans l’OS Linutop (qui est vendu 79€ séparément). J’aurai donc aimé pouvoir acheter le Linutop OS 4 à 400-79 = 321 €…
Pas de port USB en version 3
Le prix (environ 400€), ce qui est cher pour la configuration hardware proposée
Le systéme: Linutop OS 5
Les +
Pack bureautique complet
VLC de base et qui fonctionne très bien sur les fichiers SD
Les + et –
Le choix de XFCE s’explique bien évidemment par la relativement faible consommation de ressource de ce gestionnaire. De mon point de vu, quitte à avoir un gestionnaire épuré et faiblement consommateur de CPU et de mémoire, autant partir sur une solution de type Openbox ou Fluxbox. J’ai donc essayé la distribution CrunchBang Linux (32 bits BTO) qui fonctionne parfaitement en version « live USBkey ». Et l’impression de lenteur est beaucoup moins importante qu’avec Linutop OS 5 pour une utilisation classique de surf Internet.
CrunchBang Linux, une alternative intéressante à Linutop OS 5
Les –
Si vous souhaitez utiliser Linutop OS sur une autre machine, il vous faudra débourser 79 €. Je trouve cela un peu fort de café, surtout que des solutions libres et gratuites existent et fonctionnent parfaitement sur les boîtiers (par exemple CrunchBang Linux dont je parle ci-dessus)
Firefox qui est un peu trop lourd pour la RAM disponible. J’ai installé Chromium qui fonctionne sans problème.
Outil graphique: franchement c’est quoi ce mtPaint graphic editor ? C’est pour concurrencer Paint sous Windows ?
On arrive donc à la conclusion de cet article et à la question fatidique: est que, dans le rôle d’un décideur informatique (ce que je suis dans le cadre de mon boulot), j’achèterai cette solution…
Le hardware (Linutop 4) est vraiment de très bonne qualité, le silence total et il ne semble pas trop chauffer même après quelques jours d’utilisation sans extinction. Mais à plus de 400 € (avec livraison), je trouve quand même l’addition un peu salée. Donc à moins de négocier les prix à la baisse (321 € par exemple…) ou bien d’obtenir pour ce prix une configuration plus musclée (au minimum 2 Go de RAM et mémoire Flash plus importante), je regarderai attentivement du coté de la concurrence avant de lancer mes achats.
Donc j’achète le boîtier vierge (sans OS) au prix maximum de 320€.
Concernant l’OS Linutop 5, je suis beaucoup plus sévère. Bien que je comprenne la volonté de fournir aux utilisateurs un système clés en main, je ne trouve pas celui-ci adapté au hardware (XFCE, Firefox, pack logiciel graphique…). De plus, faire payer cet OS (qu’ils soit inclus dans le prix des boîtiers Linutop ou bien 79€) n’est pas constructif: cela limite la participation de la communauté et peut mettre à dos le clan des barbus qui peuvent y voir une vente liée de système GNU/Linux (un comble)…
Je n’achète pas l’OS Linutop 5, et j’utilise sur les boîtiers Linutop des OS GNU/Linux gratuits, léger et alternatifs.
Superviser l’espace disque des serveurs est une bonne chose… encore faut il que les données soient stockées sur des disques en bonne santé. Le but de ce billet est de mettre en place via Nagios/Shinken une supervision de l’état SMART renvoyé par l’outil Smartmontool.
Sur le serveur à superviser
Les pré-requis
La commande smartctl sera exécutée avec sudo, il faut donc l’installer si ce n’est pas déjà fait sur votre système:
[cce lang=bash »]
apt-get update
apt-get install sudo
[/cce]
Il fait aussi installer l’outil de vérification SMART : SmartMonTools.
[cce lang=bash »]
apt-get install smartmontools
[/cce]
Superviser quels disques ?
Pour savoir quels disques superviser, on peut utiliser la commande suivante (en root):
[cce lang=bash »]
fdisk -l
[/cce]
Exemple : sur un RAID1, on trouvera souvent /dev/sda et /dev/sdb. On prendra ce cas pour illustrer le reste de notre procédure.
Pour prendre en compte Smart, il faut modifier la configuration de votre serveur SNMP (suivre cette procédure pour installer le serveur SNMPd sur votre machine) en éditant le fichier snmpd.conf et en y ajoutant les lignes suivantes :
• -H Hostaddress : IP ou nom DNS de la machine à superviser
• -C public : Communauté SNMP (on peut la mettre en variable si on veut)
• -o $ARG1$ : OID SNMP à intérroger
• -r $ARG2$ : Comparaison avec une chaine de caratère, ici « PASSED » (attention de respecter la casse). Si dans le retour du check, on ne trouve pas la chaine de caractère « PASSED », le service va passer en « Critical ».