miércoles, 24 de febrero de 2016

Servidor Video/Audio en Windows y Linux

En esta práctica, vamos a configurar un servidor de audio/video y que permita streaming.

Utilizaremos Windows Media Service para el configurar el servidor en Windows 2008 R2, y lo visualizaremos a través de la web.
Y en Linux configuraré Icecast2, un servidor que es capaz de servir tanto audio como vídeo a los clientes, es estable y potente.

WINDOWS

Windows 2008 R2

Lo primero de todo, es instalar dos parches desde la página de microsoft. Ya que sin ellos, no podremos instalar el rol de Windows Media Service.
Las referencias son KB963697 y KB970985:


Lo siguiente es poner servidor y cliente en contacto

Servidor - Cliente


Probamos la conexión entre las dos máquinas


Una vez hecho esto, procedemos a la instalación de roles y características necesarias.
Lo primero que he instalado ha sido la característica Experiencia de escritorio, ya que esta incluye el reproductor de Windows Media, que es el que vamos a utilizar para reproducir nuestros vídeos


Nos pedirá reiniciar, lo hacemos, y vamos al siguiente paso

Ahora vamos a instalar dos roles, el de Servicios de multimedia de transmisión por secuencias y el Servidor web (IIS) (más sobre IIS aquí)



Y marcamos las siguientes configuraciones



Marcamos el protocolo de transmisión en tiempo real (RTSP) 


Y listo, ya está todo instalado, procedemos a configurarlo


Tengo una carpeta con dos vídeos. Voy a poner el vídeo de cristianoronaldo en streaming, es decir, que el usuario podrá visualizarlo solo cuando yo lo ponga, no podrá reproducirlo, pararlo, adelantarlo... etc. Y el vídeo de morat puestos a petición, ese si que se podrá manipular.

Acordaros de los formatos que son soportados por Windows Service Media (por ejemplo mp4 no está permitido). Lo más sencillo es poner wmv, ya que lo admite sin problemas.


Ahora inicio el Servicio de Windows Media, en el cual voy a configurar los vídeos de la manera que he explicado antes

La primera configuración va a ser la del vídeo en streaming

Hacemos click derecho en puntos de publicación y seguimos las capturas




Indicamos el nombre que le damos al vídeo



Seleccionamos un archivo, ya que vamos a seleccionar el vídeo de una de nuestras carpetas



Elegimos Punto de publicación de difusión, que es lo que hará que sea un vídeo en streaming, el usuario no podrá manipular la reproducción, sólo podrá ver lo que el administrador quiera, él puede iniciarlo, pararlo, avanzarlo...etc.





Seleccionamos la carpeta en la que están almacenados los vídeos que queremos incluir







Ahora, con el vídeo elegido y configurado, vamos a crear el punto de publicación



Insertamos la URL que nos llevará al contenido (luego la utilizaremos, así que guardadla en un documento para no perderla)



Y elegimos la ruta que tiene el IIS predeterminada, que es C:\inetpub\wwwroot y la ponemos en los dos campos, añadiendo el vídeo que queremos






Ahora para probar que el enlace anterior funcionaba, abrimos el reproductor de windows media, pulsamos alt y le damos a Abrir archivo desde dirección URL
e insertamos la URL que os he pedido antes que guardéis




Y funciona correctamente


Ahora vamos a configurar el segundo vídeo, el de petición

Seguimos los mismos pasos que en el anterior, cambiando unas pequeñas modificaciones que os resaltaré



Le ponemos el nombre que queramos




Esta vez marcaremos Punto publicado a petición, que es lo que nos permitirá que el usuario manipule el vídeo a su gusto, reproduciéndolo, parándolo, avanzándolo... etc








Esta URL igual que antes... la guardamos para probarlo después



Colocamos el directorio del servidor web IIS acompañado del nombre que le hemos dado al vídeo




Vamos a probarlo en la web, a ver si se ha configurado todo correctamente

Ingresamos en el navegador nuestro nombre del equipo, dirección IP.. lo que lo identifique, yo he puesto localhost


Y... oh oh. Sale la página por defecto de IIS, por lo tanto, algo está mal. Así que vamos al Administrador de Internet Information Services (IIS)


Vamos a nuestros sitios, y a Default, que es el único que tenemos.
Vamos a administrar dos cosas, Documento predeterminado y Examen de directorios (que lo hemos añadido en las características si os acordáis)




Cogemos el iistart.htm y le damos a Quitar en el menú lateral derecho, que es lo que nos está bloqueando que se visualicen nuestros directorios en el navegador




Vamos a la siguiente configuración



Y aquí vamos otra vez al menú lateral derecho, y le damos a Habilitar









Volvemos a probar en el navegador.. y vemos que ya podemos acceder a nuestros vídeos


Probamos a reproducir ambos vídeos (los .htm) y...

El de petición bien, podemos manipularlo a nuestro gusto


Y el de streaming también está configurado correctamente, ya que está siendo reproducido en directo, y solo puedes ver lo que el servidor esté sirviendo



Windows 7

Hacemos la prueba desde el cliente también.
Insertamos la dirección IP de nuestra máquina Windows 2008.

Nos salen bien los directorios, intentamos reproducir... y también funciona bien :)






Y esto es todo con Windows... pasamos a Linux ;)


LINUX

Ubuntu 14.04

Vamos a empezar instalando el programa Icecast2 que se utiliza para servir video o audio en streaming 

Para instalarla utilizaremos los siguientes comandos



Nos saldrá un mensaje de configuración le damos a que no, ya que vamos a configurarlo después en los ficheros.

Seguimos instalando los códecs necesarios para su utilización





Con todo instalado, procedemos a poner una dirección IP de rango A, le pondremos a la máquina que hace de servidor la 10.0.0.100



Procedemos a modificar los ficheros de configuración



En este primero, nos vamos a fijar en la parte de authentication, en la que le pondremos la contraseña que necesitaremos después para entrar al panel de administración gráfico, y en la parte del hostname y listen-socket, en la que pondremos localhost y el puerto lo dejaremos por defecto.





Seguimos modificando... esta vez modificamos el archivo que nos deshabilita el icecast.xml (fichero modificado anteriormente)



Y le ponemos TRUE en la última línea




Con todo ya configurado, reiniciamos el servicio




Y vamos al navegador, en el que tendremos que poner la dirección que teníamos en el hostname, precedido del puerto que hemos dejado por defecto. Cuando estemos dentro, hacemos click en Administration





Y nos saldrá un formulario de registro, en el que el usuario es admin y la contraseña es la que hemos puesto en el fichero icecast.xml en el apartado de authentication


Vemos que podemos entrar correctamente


Ahora probamos a subir un vídeo en streaming, con el comando ffmpeg2theora


Nos metemos con el cliente, también un Ubuntu, y ponemos en la URL del navegador la IP del servidor principal precedido del puerto, y nos sale la opción de reproducir un vídeo, solo el audio, o el vídeo también





Le damos a la segunda opción, que nos abre el reproductor de vídeo, y vemos que es un streaming en tiempo real, y que no podemos pausarlo ni reproducirlo, es decir, no se puede manipular.




VLC

Una pequeña prueba más, para enseñar que hay servidores muy complejos y con difícil configuración, pero también los hay muy sencillos de hacer, como por ejemplo, el streaming que nos ofrece la aplicación VLC

Lo primero, instalar VLC, es muy sencillo, tan solo hay que ir a su página web.
Una vez instalado, la abrimos, vamos al menú Medio y seleccionamos Emitir...




En la primera ventana que nos sale, le damos al botón Añadir... y seleccionamos el vídeo que deseamos emitir en streaming



Le damos a Emitir... cuando tengamos el vídeo seleccionado


Y nos saldrán las siguientes configuraciones, le damos a Siguiente



Seleccionamos HTTP y le damos al botón Añadir


Metemos el puerto por el que vamos a retransmitir, en mi caso el 8080, y el nombre que le he puesto al streaming (lo utilizaremos después para acceder a él)


La siguiente opción es la transcodificación, yo he elegido H.265 (de vídeo) y mp3 (de audio), pero vosotros podéis elegir la que más se asemeje a vuestros requisitos


Con toda la configuración ya hecha, le damos a Emitir


Nos saldrá en el VLC que ya está emitiendo...


Vamos al CLIENTE

Abrimos otro VLC, la característica de este programa es que puede hacer de servidor y de cliente la misma aplicación

Una vez abierto, vamos a Medio y seleccionamos Abrir ubicación de red... (recordamos que hemos puesto emisión por HTTP por el puerto 8080)



Introducimos la URL de nuestra emisión, la cual es http://direcciónIPdelservidor:puerto/nombrestreaming, y le damos a Reproducir


Y... se reproduce sin problemas



Y hasta aquí la práctica de Servidor Video/Audio. ;)


1 comentario:

  1. hoola, no me funciona en wan lo del vlc, alguna sugerencia? luismari66@gmail.com

    ResponderEliminar