
Abbiamo appena ricevuto un mini microfono USB da SeeedStudio, e verificheremo le sue qualità di autoconfigurazione ed efficienza.
Piccolo è bello, si dice. Ma nel nostro caso piccolo è anche comodo e divertente. Il microfono USB che ci accingiamo a recensire è davvero minuscolo e funzionale. Presenta caratteristiche plug-and-play, il che significa che può essere utilizzato su qualsiasi computer e SBC.
Come usarlo
Un microfono miniaturizzato può avere molteplici utilizzi, dal dittafono al registratore digitale, dal rilevatore di presenze alla microspia. Se a questo si aggiunge la portabilità su molteplici piattaforme SBC, ci si rende conto che i progetti possibili sono innumerevoli, limitati solo dalla fantasia personale.
Nel nostro caso eseguiremo una serie di test su sistemi Linux: dopo un primo controllo funzionale su un PC Ubuntu Linux con Intel 9800X, che ha dato esito positivo, ci siamo impegnati a valutare quantitativamente le prestazioni del nuovo hardware su un RPI 3. Come software per il pilotaggio abbiamo utilizzato arecord, un programma per la gestione di input audio presente sotto Linux. Il programma arecord è un registratore audio command-line per il driver ALSA (Advanced Linux Sound Architecture) della scheda audio.
Abbiamo utilizzato la seguente riga di comando:
1 |
arecord --device=hw:1,0 --format S16_LE --rate 44100 -V mono -c1 voice.wav |
in cui il parametro device indica l’indirizzo di periferica del driver specifico, format indica il formato audio, Signed 16 bit Little Endian, rate indica la campionatura –V indica il tipo di VU-meter utilizzato (mono o stereo), –c1 indica canale singolo e infine abbiamo il nome ed il tipo del file registrato in output.
I primi tentativi hanno mostrato una sensibilità del microfono un po’ bassa. Ma per modificare i parametri di configurazione occorre capire su quale periferica intervenire. Vediamo in che modo.
Configurazione audio USB sul Raspberry PI
Raspbian e le nuove versioni Linux per il PI sono tutte più o meno plug-and-play.
Inseriamo il device USB e lanciamo il comando seguente per visualizzare (ls) lo stato del sottosistema USB:
1 2 3 4 5 |
lsusb Bus 001 Device 004: ID 8086:0808 Intel Corp. Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub |
Lanciamo di seguito il comando per la visualizzazione del driver audio:
1 2 3 4 |
dmesg | grep C-Media [ 2.333805] usb 1-1.5: Manufacturer: C-Media Electronics Inc. [ 2.340930] input: C-Media Electronics Inc. USB PnP Sound Device as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.2/0003:8086:0808.0001/input/input0 [ 2.392675] hid-generic 0003:8086:0808.0001: input,hidraw0: USB HID v1.00 Device [C-Media Electronics Inc. USB PnP Sound Device] on usb-3f980000.usb-1.5/input2 |
Quindi il comando
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
aplay -l **** List of PLAYBACK Hardware Devices **** card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA] Subdevices: 7/7 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: ALSA [bcm2835 ALSA], device 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1] Subdevices: 1/1 Subdevice #0: subdevice #0 |
Mostra le periferiche di output audio (playback).
Infine, con il comando
1 2 3 4 5 |
arecord -l **** List of CAPTURE Hardware Devices **** card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 |
ci mostra la lista delle periferiche di input disponibili sul nostro sistema. In particolare, la periferica USB PnP sound device è proprio la 1:0, come mostrato nel comando di lancio della registrazione.
Per settare i parametri di input e output abbiamo utilizzato alsamixer. In particolare, abbiamo utilizzato il comando F1 per avere la lista dei comandi disponibili, quindi F5 Show all controls per mostrare i comandi di input ed output, modificabili tramite i tasti cursore.
Il sistema attiva il microfono con un guadagno posto al 50%. Lo abbiamo portato al 92% e la sensibilità ne ha immediatamente guadagnato.
Il test di registrazione audio
A questo punto abbiamo selezionato un file audio digitale in formato .WAV, ne abbiamo estratto la risposta in frequenza ed eseguito l’analisi spettrale.
Quindi abbiamo eseguito il file sul nostro sistema monitor, registrando l’output con il microfono sul Raspberry PI.
Immediatamente evidente è ciò che abbiamo riconosciuto “a orecchio” durante il primo test: il livello audio appare molto compresso, poco definito. D’altra parte non ci troviamo di fronte ad un microfono Hi-Fi: le specifiche parlano chiaro.
Sensibilità | -67 dBV/pBar,-47 dBV/Pascal +/-4dB |
---|---|
Risposta in frequenza | 100-16KHz |
Dai grafici appare evidente la finestra a 100-10kHz, mentre i 16kHz vengono sì raggiunti, ma con una attenuazione di 30 dB e comunque dimezzata rispetto all’originale. Allo stesso modo il grafico relativo allo spettro mostra quella leggera carenza in sensibilità mostrata durante i test. Ricordiamo tuttavia che il microfono è nato per lavorare come pilota per sistemi vocali alla frequenza di 300-3400 Hz. Come detto, non si tratta di un microfono ad alta fedeltà, ed il lavoro nel range richiesto viene svolto in modo del tutto onesto.
Conclusioni
Parliamoci chiaro: ad un prezzo di 4 euro e mezzo ci troviamo di fronte ad un vero gioiello della tecnologia, in grado di stimolare la fantasia dei Makers e il desiderio dei progettisti. Un piccolo pezzo di hardware perfettamente gestito dai driver di Linux e dal Raspberry PI. È naturale che alcuni perfezionisti preferirebbero spendere una cifra doppia per avere una sensibilità migliore, ma a parte questo piccolo particolare, la prova è stata superata a pieni voti. Un sentito ringraziamento a SeeedStudio per avere offerto al pubblico questo oggettino. SeeedStudio offre la spedizione gratuita per acquisti superiori ai 119 dollari comprensivi di Raspberry PI 4 4GB: potrebbe valere la pena acquistare in bundle il nuovo PI 4 con microfono e accessori per usufruire dello sconto.