Club robotique de Sophia-Antipolis

Accueil > POBOTpedia > Ordinateurs embarqués (SBC) > La carte Raspberry PI > Projets complets avec la Raspberry Pi > Son et image avec la Sony PS3 Eye

Son et image avec la Sony PS3 Eye

mardi 4 décembre 2012, par Julien H.

On sait déjà connecter une webcam standard sur la Raspberry Pi (voir cet article). Mais il existe une petite caméra très intéressante pour cette carte, c’est l’accessoire de la console Sony Playstation, la Sony PS3 Eye.

Pourquoi intéressante ? Parce qu’elle est pourvue d’un microphone avec 4 sources en ligne ce qui permet de bénéficier de la suppression de l’écho et d’une bonne qualité mais qu’il serait très pratique d’utiliser pour un asservissement sur une source sonore si on pouvait y accéder. Tout cela sur un seul USB.

Ce n’est pas la première fois que nous nous intéressons à un accessoire de jeu vidéo. Nous avions pu constater avec la Nintendo Wii et surtout son Nunchuck et son Wii Motion Plus que l’effet de masse de l’industrie du jeu nous donnait accès à des technologies de pointe pour très peu cher (la puce accéléromètre est 4 fois plus performante pour 10 fois moins cher). Et bien rebelote avec cette caméra qui ne m’a coûté que 7,99 € d’occasion à mon magasin Micromania préféré (big up à la team Mandolocienne, je vous kiffe les mecs).

La vidéo

Rien de bien compliqué, on applique les commandes apprises dans l’article sus-cité.


pi@raspberrypi $ lsusb
Bus 001 Device 001 : ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002 : ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 003 : ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004 : ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 007 : ID 1415:4000 Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc.
Bus 001 Device 008 : ID 1415:2000 Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc. Sony Playstation Eye
pi@raspberrypi $ v4l2-ctl —list-devices
USB Camera-B3.04.06.1 (usb-bcm2708_usb-1.2.4.1) :
/dev/video0

pi@raspberrypi $ v4l-info /dev/video0

### v4l2 device info [/dev/video0] ###
general info
VIDIOC_QUERYCAP
driver : "ov534"
card : "USB Camera-B3.04.06.1"
bus_info : "usb-bcm2708_usb-1.2.4.1"
version : 3.2.27
capabilities : 0x5000001 [VIDEO_CAPTURE,READWRITE,STREAMING]

standards

inputs
VIDIOC_ENUMINPUT(0)
index : 0
name : "ov534"
type : CAMERA
audioset : 0
tuner : 0
std : 0x0 []
status : 0x0 []

video capture
VIDIOC_ENUM_FMT(0,VIDEO_CAPTURE)
index : 0
type : VIDEO_CAPTURE
flags : 0
description : "YUYV"
pixelformat : 0x56595559 [YUYV]
VIDIOC_G_FMT(VIDEO_CAPTURE)
type : VIDEO_CAPTURE
fmt.pix.width : 640
fmt.pix.height : 480
fmt.pix.pixelformat : 0x56595559 [YUYV]
fmt.pix.field : NONE
fmt.pix.bytesperline : 1280
fmt.pix.sizeimage : 614400
fmt.pix.colorspace : SRGB
fmt.pix.priv : 0

Donc pour 8 euros on a déjà réussi à émettre à 20 fps du 320x240 avec une bonne qualité d’image pour embarquer sur un robot mobile.

Le son

On a déjà traité le son dans cet article. On apprenait comment charger le module de la puce Broadcom BCM2835 dédiée au son.

Cette fois-ci, avec une distribution récemment mise à jour (les tests sont faits sur Occidentalis, voir nos autres articles pour une description), rien de plus à installer : on peut s’assurer que les modules du son par USB (snd_usb_audio) sont bien là.


pi@raspberrypi $ lsmod
Module Size Used by
8192cu 485042 0
i2c_dev 5587 0
snd_bcm2835 12808 0
snd_usb_audio 93242 0
snd_pcm 74834 2 snd_usb_audio,snd_bcm2835
snd_page_alloc 4951 1 snd_pcm
snd_hwdep 5730 1 snd_usb_audio
snd_usbmidi_lib 17812 1 snd_usb_audio

On doit identifier maintenant sur quelle numéro de carte son la Playstation Eye a été reconnue :


pi@raspberrypi $ arecord —list-devices
**** Liste des Périphériques Matériels CAPTURE ****
carte 1 : CameraB304061 [USB Camera-B3.04.06.1], périphérique 0 : USB Audio [USB Audio]
Sous-périphériques : 1/1
Sous-périphérique #0 : subdevice #0

Pour vérifier, on enregistre sur la carte 1 et le périphérique 0 pendant une durée de 10 secondes :


pi@raspberrypi $ arecord -d 10 -D plughw:1,0 test.wav

Ensuite on réécoute. Ne pas oublier de préciser la sortie souhaitée, ici le jack analogique (1 après numid=3) car c’est Nono qui sert de haut-parleur :)


pi@raspberrypi $ amixer cset numid=3 1

Et on joue le fichier enregistré :


pi@raspberrypi $ aplay test.wav

Au passage, une petite commande pour récupérer des fichiers de votre Raspberry Pi depuis une console de votre PC Linux :


atelier@ubuntu : $ scp pi@192.168.10.246 : /test.wav .
pi@192.168.10.246’s password :
test.wav 100% 78KB 78.2KB/s 00:00

Et le fichier preuve !

Capture du son

Les 4 microphones

Il reste désormais à pouvoir utiliser les capacités de la rangée de 4 microphones dont est composée la PS3 eye. Ce sera l’objet d’un atelier au club Pobot.

A lire pour se préparer : http://www.rrfx.net/2009/11/ps3-eye...


Cet article a été écrit en 15 minutes montre en main en remontant dans les historiques de mes deux terminaux, après 30 minutes passées à tester les différentes commandes (tout avait déjà été fait dans des articles précédemment mis en ligne). Mais j’ai bon espoir d’être utile à des dizaines de personnes, en commençant par moi-même la prochaine fois que j’aurai besoin d’utiliser la PS3 eye. Qu’on se le dise, il faut penser à partager ses connaissances, même simples. Ne serait-ce que pour faire savoir que c’est possible.

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.