Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Sviluppo di una piattaforma per lo streaming multimediale - MobiLab ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Sviluppo</strong> <strong>di</strong> <strong>una</strong> <strong>piattaforma</strong> <strong>per</strong> <strong>lo</strong> <strong>streaming</strong> multime<strong>di</strong>ale in ambiente Android<br />
Si è ricorso, a questo proposito, alle strutture ViewGroup, che svolgono la stessa<br />
funzione <strong>di</strong> contenitore “ad albero” dei Component, in modo da lasciare libere tutte<br />
le possibili implementazioni future.<br />
Inoltre, nel tentativo <strong>di</strong> rendere il porting <strong>di</strong> JMF più valido possibile <strong>per</strong> le<br />
applicazioni Android, si è cercato <strong>di</strong> tradurre il maggior numero <strong>di</strong> codec resi<br />
<strong>di</strong>sponibili nelle librerie sun e ibm.<br />
In particolare <strong>per</strong> effettuate il co<strong>di</strong>ng/deco<strong>di</strong>ng della risorsa nei formati compatibili<br />
(JPEG e H.263) si è preferito riscrivere anziché importare la classe Dimension <strong>per</strong><br />
poterla dotare <strong>di</strong> un costruttore più adatto alle necessità <strong>di</strong> visualizzazione del<br />
<strong>di</strong>spositivo, il cui argomento <strong>di</strong> input è un'istanza della classe SurfaceHolder, che<br />
successivamente troveremo impiegata nella visualizzazione del filmato.<br />
package it.saviano.tesi;<br />
import android.graphics.Rect;<br />
import android.view.SurfaceHolder;<br />
public class Dimension {<br />
protected Rect size = null;<br />
protected int width = 0;<br />
protected int height = 0;<br />
public Dimension (SurfaceHolder SH) {<br />
Rect size = SH.getSurfaceFrame();<br />
this.width = size.width();<br />
this.height = size.height();<br />
}<br />
[…]omissis[…]<br />
Per quanto riguarda la fase <strong>di</strong> rendering invece, nonostante sia possibile<br />
l'integrazione <strong>di</strong> alcune delle necessarie classi AWT – Co<strong>lo</strong>r, Rectangle, Canvas – si<br />
è preferito non assegnare queste responsabiltà a JMF ma farne carico, data la<br />
comunque forte necessità <strong>di</strong> riprogettazione, al Player.<br />
66