Streaming
Para esto fue necesario investigar como lo podíamos hacer
teniendo en cuenta las características que se debían cumplir en el proyecto por
ejemplo web service en SOAP, REST y, por otro lado, también las limitaciones,
como lo es el poco tiempo de desarrollo, presupuesto…
Bueno finalmente les comentare el resultado de la
investigación sobre el streaming, en que consiste su arquitectura entre otras
cosas.
Inicialmente se descargaban archivos y luego se reproducen lo
que se busca es entregan varios paquetes en tiempo real, que se descargan y al
mismo tiempo que se reproducen.
Como funciona, veámoslo de una manera práctica:
1.
Se conecta al servidor: Un cliente reproductor se conecta
al servidor remoto y el servidor envía el archivo.
2.
Almacena el Buffer: El cliente empieza a recibir el
archivo y construye un buffer, es decir, una memoria en cache que es donde
empieza a guardarlo.
3.
Empieza la reproducción: Cuando esta memoria en cache buffer
empieza a llenarse con una porción del archivo el reproductor empieza a
reproducir mientras en segundo plano continúa recibiendo y descargando el
archivo.
Ahora que conocemos el funcionamiento a nivel general, podríamos
entender porque cuando vemos un video en youtube y la velocidad de internet
baja o se cae la conexión porque el video sigue reproduciendo y luego se
detiene y esto ocurre porque se acaba la información que hay descargada en el
buffer.
Hay dos tipos de Streaming, descarga progresiva y transmisión
por secuencias.
La descarga progresiva se reproduce en servidores web que
disponen de apache, IIS, el archivo que se quiere reproducir solicitado por el
cliente es enviado al servidor como cualquier otro archivo utilizando el
protocolo HTTP. Si dicho archivo está diseñado para streaming al ser leído por
el reproductor cliente, se iniciará en streaming en cuanto se llene el bufer.
En la trasmisión por secuencias: Se reproduce en en
servidores web o servidores multimedia que disponen de un software diseñados
para esto, de esta forma hay una mejor gestión del streaming, como pueden ser Windows
media server, la utilización de este tipo de tecnologías frente a la de
descarga progresiva ofrece mejoras significativas como, por ejemplo mayor
rapidez en la visualización de la descarga lo que normalmente llamamos carga,
Posibilidad de transmisiones en directo algo como lo que permite Facebook últimamente,
mejor gestión del ancho de banda y registro de clientes: autenticación, filtrado
por ip.
Esto se utiliza en Spotity, youtube, Skype y es lo que
pretendemos hacer en nuestro proyecto para el curso de sistemas distribuidos.
¿Finalmente logramos
reproducir las canciones en nuestra web?, ¿cómo lo hicimos?
Utilizamos tecnología web service, uno para agregar canciones
a nuestro servidor y otro web service que entregaba la información de las
canciones por medio de un archivo JSON, ambos web service desarrollados en JAVA
(jsp) con el estilo de arquitectura REST.
Tenemos nuestro cliente en la web donde incluimos tecnología JavaScript,
apoyándonos en la librería JPlayer.
En donde en nuestro HTML, cargamos los Javascript, donde se
consume el web service que nos entrega todas las canciones, en formato JSON.
Este formato JSON lo interpretamos y ponemos a reproducir la canción.
Para que quede un poco más claro mostrare parte del código básico
para el funcionamiento.
Nuestro Index.html
-
Importar
JavaScript

-
Estructura
HTML, CSS donde cargara la lista de canciones.
-
El
JavaScript donde consume el Web Service.

Y listo este es el resultado.
Les dejo el link de JPlayer para que vean su documentación y puedan hacer
esto.
Nos vemos.
Jhonny.
Jhonny.
No hay comentarios:
Publicar un comentario