Passa ai contenuti principali

RaspberryPi: Abilitare l'audio analogico


Introduzione
Il mio raspi è collegato ad una vecchia TV CRT che ho convertito in una smartTV. RaspberryPi infatti è un ottimo prodotto per configurare un media center con connessione ad internet ed altre amenità. Se usate una vecchia TV come nel mio cavo potrebbe interessarvi come abilitare l'uscita analogica per l'audio, il jack da 3,5 mm per intenderci. Per fare ciò dobbiamo assicurarci di avere i moduli giusti del kernel caricati e configurare il raspi ad utilizzare la giusta uscita audio, infatti di default utilizza la porta HDMI.

Controllo della presenza del modulo snd_bcm2835
1 Per controllare che il modulo giusto sia presente da linea di comando eseguire

sudo lsmod | grep snd_bcm2835

2 Se non vedete alcun output vuol dire che il modulo non è ancora caricato altrimenti potete passare al prossimo paragrafo.
3 Proviamo a caricare  il modulo con il seguente comando da terminale

sudo modprobe snd_bcm2835

Se l'output del comando è una cosa del genere

FATAL: Module snd_bcm2835 not found.

allora vuol dire che bisogna aggiornare la vostra distribuzione con i seguenti comandi

sudo apt-get update
sudo apt-get upgrade

e riprovare il punto 3. Dovreste quindi avere un output come il seguente all'esecuzione del comando

sudo lsmod | grep snd_bcm2835


snd_bcm2835            16432  0 
snd_pcm                77728  1 snd_bcm2835
snd                    58744  3 snd_bcm2835,snd_timer,snd_pcm

4 Bene questo vuol dire che il modulo è installato ed è funzionante. Per rendere il caricamento del modulo automantico all'avvio bisogna modificare il file /etc/modules con il comando

sudo nano /etc/modules

nella seguente maniera

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be
# loaded at boot time, one per line. Lines beginning with "#" are
# ignored. Parameters can be specified after the module name.

loop
snd-bcm2835

Per salvare basta un Ctrl+X seguito da un Y

Installare ALSA (Advance Linux Sound Architecture)
Un ottimo server audio per Linux è ALSA. Tale server dovrebbe essere già installato nelle ultime immagini di Raspbian, in ogni caso per controllare la sua presenza e nell'eventualità installarlo basterà il seguente comando

sudo apt-get install alsa-utils

Forzare l'uscita audio analogica
Se il cavo HDMI è connesso allora l'uscita audio di default sarà l'HDMI, altrimenti il jack da 3,5 mm. Se necessario è possibile forzare l'uscita con il seguente comando:

sudo amixer cset numid=3 1

Per testare che tutto sia correttemente funzionante si possono eseguire i seguenti comandi.
sudo speaker-test -t sine -f 440 -c 2 -s 1
sudo speaker-test -t sine -f 440 -c 2 -s 2
sudo aplay /usr/share/sounds/alsa/Front_Center.wav

Post popolari in questo blog

Se excel non aggiorna le formule

Oggi in ufficio è capitata una richiesta particolare. In un documento excel dopo aver eseguito un copia-incolla di una formula non si aggiornavano i risultati nelle celle interessate. Dopo attimi di perplessità dal fondo dell'ufficio il capo ci illumina con una funzione ai più sconosciuta e che ha risolto il problema: il tasto F9. Scusate la mia ignoranza in excel ma questo blog è pensato proprio per appuntare esperienze di vita informatica. Tutto sta nel fatto che i "calcolatori d'un tempo" non disponevano di una adeguata potenza di calcolo e nelle operazioni di copia-incolla si verificavano lunghe attese per l'aggiornamento. La soluzione adottata da MS è stata quella di inserire un'opzione per impedire l'aggiornamento automatico e forzarlo con una combinazione di tasti... il tasto F9!
Combinazioni utili per il calcolo delle formule F9 = calcola le formule modificate dall'ultimo calcolo in tutte le cartelle e fogli di lavoro aperte. MAIUSC + F9 = c…

Riflessioni sull'ordinamento

Gli algoritmi di ordinamento sono da sempre i più gettonati e interessanti dal punto di vista didattico (si veda la complessità computazionale) e funzionale (quasi tutti i programmi hanno almeno una funzione di ricerca). Proprio di questi giorni sono alcuni articoli di Programmazione.it dedicati a questo tema (link).Coding Horror in questo articolo presenta una provocazione molto interessante al di là delle opinioni personali:

The default sort functions in almost every programming language are poorly
suited for human consumption.
L'articolo pone l'attenzione sulla differenza tra l'ordinamento alfanumerico e quello ASCII solitamente usato nei metodi nativi dei linguaggi. Il discorso si ampia se poi pensiamo banalmente alla differenza tra Windows e GNU/Linux che è case sensitive.
Spesso i sistemi operativi e i linguaggi di programmazione realizzano ordinamenti rispettando l'ordine della tabella di codifica ASCII e non l'ordinamento naturale della lingua. I commenti a se…

Timeline dei Linguaggi di programmazione

O'Reilly ha reso disponibile per tutti gli appassionati un interessante poster in formato pdf in cui vengono riassunti 50 anni di storia dei linguaggi di programmazione.Il poster mostra una timeline colorata nella quale sono evidenziate le principali derivazioni tra i vari linguaggi... da vedere
http://www.oreilly.com/news/graphics/prog_lang_poster.pdf



fonte programmazione.it