point_left regresar

Creando un Sistema de Transmisión en Vivo Pt.1

 

por oschvr | 0 thumbsup | 0 speech_balloon | dev | posted 10 months ago (Jan 25, 2017 @ 22:01)

Cover

Parte 1 ### Un tutorial sobre como configurar un servicio de Streaming por HTTP en Vivo, usando Amazon AWS CloudFormation (EC2, CloudFront, S3) y Wowza Streaming Engine 4 - Última Actualización: 24/01/2017 - Autor: Oscar Chavez - Contribuidores: - --- ### Indice 1. Introducción 2. Pt1. Preparativos Amazon 3. Pt1. Preparativos Wowza 3. Pt2. Configuración 4. Pt2. Pruebas 5. Pt3. Más configuración 6. Pt3. Más pruebas --- ### Introduction En esta serie de tutoriales, voy a intentar explicar lo más detallado posible, como preparar, instalar, configurar, probar y correr el sistema que creemos desde 0. En resumen técnico, vamos a aceptar una señal RTMP y vamos a transcodear la señal al protocolo adaptivo HLS, del cual haremos multiples copias y distribuiremos a multiples dispositivos. #### Objetivo El propósito de este tutorial es la creación de una guia abierta y editable que sirva como linea de aprendizaje y a la vez como wiki. Debido a mi corta experiencia en webservers, protocolos, dockers, y sistemas operativos basados en linux, me voy a basar fuertemente en la documentación oficial, otros tutoriales y obviamente en la interminable sabiduría almacenada en StackOverflow. #### Metas La meta principal es transmitir en vivo una señal de audio/video, ingestarla al servidor a través de RTMP y distribuir una señal constante en FHD (1920x1080) ~ 3.5 Mbps a por lo menos 1,000 "espectadores". La meta secundaria es crear un balanceador de cargas que pueda soportar hasta 3,000 "espectadores" e implementar un reproductor nativo de HTML5 en un portal web. La meta de Oscar es tomar esa señal HLS y proyectarla en un ambiente/aplicación de VR/360º en Unity3D o Nativo de Android #### Herramientas basadas en subscripción: - Amazon AWS EC2 (Cloud Computing) - Amazon AWS CloudFront (CDN) - Amazon AWS CloudFormation (Stack Templates) - Amazon AWS S3(Storage) - Wowza Streaming Engine 4.2 #### Herramientas: - OBS (Open Broadcasting Software) - FreeBSD (Sistema Operativo, Linux) - Apache Benchmark (HTTP Server Benchmark) - Vagrant (Dev Environments) - Docker (Software Containerization) - NGINX (High-performance HTTP Server) - Unity3D (Game Engine) - Android Studio (Official Android IDE) - Sublime-Text (Text-Editor) - iTerm2 (Terminal Replacement) #### Protocolos a utilizar: - RTMP (Real Time Messaging Protocol) - HLS (HTTP Live Streaming) --- ###Preparativos Amazon Amazon AWS cuenta con una modalidad de Free Tier, que significa que al momento de subscribirnos a sus servicios en aws.amazon.com, tenemos un año de uso "gratis" (restringido) para un par de sus servicios principales. > OJO: Desgraciadamente debemos contar con tarjeta de crédito para poder proceder. Esto es un mero paso para autenticar; Si nosotros seleccionamos los servicios del Free Tier, no incurriremos en ningun costo. ##### Crear cuenta en Amazon AWS Debemos seguir las instrucciones en linea. En el apartado de Informacion de Pago, te especifican que es solo para poder verificarte. En la parte de Identificación de Verificación, no olviden de anteponer un #1 si es celular. Escogeremos Basic Support Plan y procederemos a la Consola. dashboard ##### Crear Key Pair de Amazon EC2 Amazon EC2 es el servicio de AWS de Computo en la Nube. Es decir, aquí vamos a montar nuestro Sistema Operativo y encima de este, nuestro engine. 1. Inciar sesión en la consola de Amazon EC2 en console.aws.amazon.com/ec2 2. Selecciona us-west-2 en la región. region 3. Es buena idea seleccionar una región cercana a nuestra ubicación. Yo estoy en la Ciudad de México, así que voy a seleccionar us-west-2, pero podría usar us-west-1 también. 3. En la izquierda, selecciona key pairs. 4. Selecciona Create Key Pair 5. En el cuadro de dialog, ponle un nombre representativo y toma nota. Más tarde usaremos este nombre en AWS CloudFormation. 6. Guarda el archivo .pem en algun lugar seguro. No podrás volver a bajarlo awsec2console ###Preparativos Wowza Wowza Streamin Engine, es un servidor de media que provee streaming en vivo y en demanda, ya sea local o en la nube. Lo bueno: Una de la soluciones más completas y robustas en el mercado. Lo malo: Se paga alrededor de 95$ USD por mes por instancia, pero tenemos un periodo de prueba de 30 días Debemos seguir los pasos que nos indiquen para conseguir una licencia. wowzatrial Cuando tengamos nuestra licenca, debe tener un formato similar a este: ET1E4 - ***** - ****** - ***** - ***** - ************* - *********** #### Subscribete a Wowza Streaming Engine 4 a través de AWS Marketplace 1. Inicia sesión en AWS 2. Ve al Market place de Wowza 3. Debemos hacer click en Continuar y luego seleccionar la pestaña de Manual Launch 4. Selecionamos la versión de Wowza (A partir de 4.2) y la región US West (Oregon) 5. Hacemos click en Accept Software Terms wowzainstall Una vez teniendo la cuenta en Amazon AWS, y la licencia (de prueba) de Wowza y hemos subscrito Wowza a AWS a través de BYOL (Bring Your Own License), podemos continuar con la configuración. wowzasuccess


comentarios

no hay comentarios. Sé el primero ! star

comenta aqui point_down