Android, come tutti i sistemi operativi permette ovviamente di gestire i vari dispositivi hardware ad esso associati, con un’altissimo grado di astrazione, ed è proprio questa la semplicità nel programmare questo sistema operativo, il fatto che grazie alla macchina virtuale per far funzionare le app, fornisce il massimo grado di sicurezza possibile, ma anche un livello di astrazione e dei servizi, che un normale sistema operativo con codice compilato e non interpretato non riesce a dare.

Come gestire l’audio  in entrata con Android, in particolare quello del microfono?

La risposta è semplicissima, ovviamente con le API (Interfaccia di Programmazione di un’Applicazione) messe a disposizione da Google, il quale offre una raccolta di librerie per ogni esigenza e fatte in modo da ridurre il lavoro del programmatore al minimo indispensabile.

Le API che prenderemo in considerazione ora sono quelle che appunto riguardano il microfono, o se si vuole, l’audio in ingresso e in alcuni casi l’audio in uscita, la classe in questione si chiama “AudioRecord” del pacchetto android.media.AudioRecord la cui documentazione ufficiale è consultabile qui.

Come funziona?

Il funzionamento è molto semplice, questa classe, permette di registrare nella nostra app ciò che il microfono sente, la documentazione fornisce tutti i metodi necessari al programmatore con relativa spiegazione dettagliata e molto sintetica, come si può vedere, questa classe gestisce solo la registrazione audio, ma fornisce anche le basi per la gestione degli “stream audio” ossia i flussi di audio in tempo reale, e come si può anche notare dal pacchetto di cui fa parte, esistono altre classi, che permettono sia di riprodurre flussi di audio, sia di registrarli ma anche di gestirli, cambiando i canali, pulendoli, togliendo livelli o aggiungendoli, come tutte le API fornite da Google sono complete e semplicissime da usare, e di solito basta solo implementarle.
Purtroppo per questa classe in giro per il web esistono ben poche guide, in quanto trova applicazioni solo nello specifico, e non nel caso generale come molte altre classi che implementano altre funzioni,  ma basta consultare la documentazione fornita da Google per scoprire che in realtà usarla è banalissimo.

Condividi
Pubblicato da
Redazione