Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

La gestione dell'audio con Java ME

Articolo scritto da Antonio Coschignano
Pagina 1 di 4

L'argomento della multimedialità in Java ME è molto vasto, in quanto ciò è una caratteristica essenziale dei dispositivi stessi per la quale questa piattaforma è stata progettata. In questo articolo cercherò di introdurre la gestione dell'audio, in particolare dei formati più elementari, da cui poi, acquisite le conoscenze e le tecniche basilari è possibile imbattersi in argomenti più complessi. Per il momento qundi 'rompiamo' il muro del suono, facciamo suonare il nostro cellulare.

A partire dal MIDP 2.0 è stata introdotta in Java ME un 'implementazione standard per la gestione dell'audio. In precedenza l'audio veniva gestito dal framework MMAPI (Mobile Media API) separatamente, cioè non compreso nella piattaforma standard. Con le MIDP 2.0 la Sun ha messo ha disposizione una serie di librerie che rientrano nativamente all'interno del profilo MIDP, permettendo così anche a dispositivi che non supportano le MMAPI, un minimo di multimedialità.
Le librerie in questione sono le Audio Building Block (un subset delle MMAPI) che supportano la gestione dei toni e il formato WAV. Il supporto agli altri file audio dipendono dal dispositivo. Comunque molte delle cose che vedremo in questa guida valgono anche per gli altri tipi di file mutlimediali.

La classe Manager

(L'articolo continua più sotto...)

La classe javax.microedition.media.Manager rappresenta il punto di accesso a tutte le funzioni inerenti alla riproduzione di file multimediali. Essa fornisce una serie di metodi statici, che si occupano di creare il Player per la riproduzione di file audio o sequenze di toni, e i Control che riguardano alcuni particolari funzioni di controllo di elaborazione dei media. Nel nostro caso i controlli che ci vengono resi disponobili sono ToneControl e VolumeControl, che fra poco capiremo di cosa si tratta.

L'interfaccia Player

Il Player è un'interfaccia che dipone di alcuni metodi che controllonao il ciclo di vita (start(), stop() etc..) di riproduzione di un file multimediale. Questo componente viene costruito dal Manager in base al file che vogliamo riprodurre.

La gestione dei toni

Per generare un tono da tastira, basta invocare il metodo statico playTone() della classe Manager:

Manager.playTone(int note, int duration, int volume);
Vediamo nei dettagli i parametri passati nel metodo:

1) int note
Questo valore rappresenta semplicemnte la frequenza del suono che vogliamo riprodurre. Il valore va da 0 a 127, calcolato in base alla formula:

SEMITONE_CONST = 17.31234049066755 = 1/(ln(2^(1/12)))
note = ln(freq/8.176)*SEMITONE_CONST
Da qui si ricava la frequenza in Hertz. Se vogliamo riprodurre la nota La, in questo caso è 69 che tramite questa formula equivale a 440 Hz.

2) int duration
Indica la durata del tono in millisecondi

3) int volume
Semplicemnte il volume del suono che va da 0 a 100

Ecco un semplice pezzo di codice che genera un tono:

try {
  Manager.playTone(100, 100, 10);
} catch(MediaException ex) {
  ex.printStackTrace();
}

Corsi
Corso AJAXCorso AJAX
Applicazioni Web 2.0 basate su AJAX con ASP, ASP.NET e PHP. A partire da 39 €.
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso PhotoshopCorso Photoshop
Grafica Web e fotoritocco col famoso Adobe Photoshop. A partire da 39 €.
Vedi anche...
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122