Cómo reproducir archivos m3u8 en tu página web

top feature image

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

Cómo reproducir archivos m3u8 en tu página web

Valora este artículo:
1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (4 votos, promedio: 3,75 de 5)
Cargando…

El post que voy a dejar hoy viene por que hace unos días un usuario de la web me ha preguntado como podría reproducir archivos m3u8 en su página web. La verdad es que hasta que me lo planteó no había pensado en ello, ya que Kodi da muy buenos resultados. Pero pensándolo un poco, la verdad es que está bien la idea.

En su día dejé ya colgado un artículo en esta web sobre las URL m3u, m3u8 y .ts. El que quiera consultar aquel artículo puede hacerlo desde el siguiente artículo. Supongo que habrá gente que o no quiere o no puede reproducir este tipo de URL desde el media center que Kodi nos pone a disposición. Por lo que lo que en su día me preguntó el usuario por el que he buscado esta forma de reproducir formatos m3u8 en una web, cobra todavía más sentido.

Como todo el que ya haya leído el artículo sobre este tipo de URL ya sabrá, estas no son más que archivos de texto, que necesitarán de un interprete para recibir la emisión que por ella  llegará al usuario. Para esto utilizar JWPlayer es a mi modo de ver una opción más que factible y funcional. Para que la reproducción funcione habrá que hacerse con una Key que tendremos que añadir al código que voy a mostrar a continuación.  Se puede consultar la información de la web de JWPlayer acerca de esta Key en el siguiente enlace.

Reproducir archivos m3u8 en tu página web

Como se puede ver el código no tiene mucha ciencia. Solo hay que tener en cuenta que partes deben ir dentro del body y cuales pueden salir de el. Si alguien quiere ver el código funcionando puede utilizar este enlace.

 







Resumen
Cómo reproducir archivos m3u8 en tu página web
Nombre
Cómo reproducir archivos m3u8 en tu página web
Descripción
Reproduce direcciones m3u8 de manera sencilla con JWPLAYER en tu página web.
Autor
Nombre del editor
entreunosyceros
Logo del editor

41 Comentarios

Gracias por responder, copiando solo el body no me funcionó, había que cambiar el nombre del reproductor , re nombrándolo por otro, ejemplo: primer stream: jwplayer(‘reproductor’), segundo stream: jwplayer(‘reproductor2’) y así sucesivamente, y respectivamente reemplacé también el nombre del reproductor en el id=”reproductor” name=”reproductor”, de está forma me funcionó perfecto.

Gracias por tu aporte sapoclay.

Saludos sapoclay, Y si quiero colocar 2 reproductores dentro del mismo php, con tu php solo se puede ver un solo reproductor, como seria para colocar 2 o tres en la misma ventana?

Gracias de antemano.

Hola. Hace ya unos cuantos años de este artículo, pero me parece que para poder colocar diferentes reproductores era suficiente con duplicar el contenido del body y cambiar la URL a reproducir.

Pero vamos, como te digo hace tres años y pico que escribí este artículo, por lo que si lo pruebas y no funciona como te digo, deja un comentario o mandame un correo y lo miro más con calma para darte una mejor respuesta.

Salu2 y gracias por comentar.

Hola primero que todo felicidades tu codigo corre perfecto, pero me gustaria saber si no cuentas con un codigo para poder leer las listas m3u completas.

si pongo la url directamente en el codigo funciona perfectamente. el tema esta en lo siguiente:

Objeto 1: web que obtiene la url m3u desde una base de datos a una variable “&link_m3u”.
Objeto 2 : web con el codigo del reproductor.

En el objeto 1 hago un llamado al Objeto 2 enviándole la variable “&link_m3u”, el Objeto 2 la recibe tal cual la envia el Objeto 1.

– En el codigo del reproductor en “file”, no me funciona si pongo la variable tal cual (“&link_m3u”).

Lo único que se me ocurre es lo que te he dicho en el anterior comentario. Prueba a limpiar la URL que envía el objeto 1 al objeto2 e insértala en el reproductor utilizando una variable mediante php.
Espero que consigas solucionarlo, y si lo consigues te agradecería que me comentases cómo lo hiciste. Salu2.

no puedo pasarla por formulario ya que al momento de reproducirla no la conozco, ella esta almacenada en un atributo en la base de datos del sistema, lo que hago es cargarla en una variable del mimo tipo de dominio y enviarla al form web que tiene el codigo del reproductor. el problema es que esta variable su sintaxis es “&link_m3u” y tendria que convertirla al codigo js para introducirla al codigo del reproductor. y es justamente lo que no encuentro como hacer!!!!

No sé muy bien a qué te refieres con lo de convertirla al código js. ¿Has probado a limpiar la URL con expresiones regulares para conseguir la sintaxis correcta de una url (http://loquesea.m3u) para el reproductor? Una vez que consigas la sintaxis correcta, solo tienes que pasarla al reproductor como indico en el post (o de alguna otra forma).
Salu2.

Hola. Prueba a utilizar un formulario para pasar la URL m3u. Comprueba que la URL que se le pasa es .m3u (o la extensión/es que te interese) y si pasa la validación, la pasas al reproductor para reproducir.
Ahora me pillas justo de tiempo, pero un día de estos que tenga tiempo haré un artículo sobre cómo hacer esto mismo.
Salu2 y gracias por el comentario.

Hola, en primer lugar felicitarte por el código va genial. Tengo una pregunta lo de la key, puedo utilizar la que hay o debo de conseguir yo una? de ser asi como la consigo es que creo que el enlace para conseguir la key esta caido, echalé un vistazo porfa.

Hola. La verdad es que no sé si la key que aparece en el ejemplo sigue funcionando. Prueba a registrarte como desarrollador de JWPlayer y a solicitar una Key.

Cuando tenga tiempo actualizaré el post o haré otro más actual. Si te da problemas este método, puedes probar con VídeoJS.

Salu2 y gracias por el aviso del enlace caído.

ola sapoclay , gostaria de saber como resolver o erro nos smartphone , nao consegui rodar nos celulares e nem em tvs smart voce sabe como fazer isso aguardo resposta .

Hola, ese logo al que te refieres, se llama mosca. Generalmente esta imagen se pone en el emisor, pero quizás puedas colocarlo mediante CSS. Si necesitas más ayuda, házmelo saber. Salu2.

Hola. Debería de empezar ya de manera automática. Esto se consigue con autostart: true, que debería estar dentro del código que se mira en el post. Si no se te reproduce automáticamente, es posible que tu navegador tenga alguna incompatibilidad con jwplayer.
Salu2.

tengo una pregunta use el codigo que muestras todo bien pero cuando la subo ami pagina privada alojada aun hosting gratuito reproduce por unos segundos y luego sale el error

” This video file cannot be played.
(Error Code: 230000)”

pero cuando lo pruebo por blogspot corre normal no me sale el error en el blog porque pasara esto?

Hola. Ese error puede ser debido a las limitaciones que suelen tener los hostings gratuitos. Suelen evitar este tipo de reproducciones por el ancho de banda que consumen, y siendo gratuitos, buscan un equilibrio para que el hosting siga funcionando para todo el mundo. Blogspot, es un sistema más solido que los típicos hostings gratuitos. Supongo que por esto te funcionará en blogspot. Por curiosidad, ¿en qué hosting alojas esa página?.

Salu2.

Hola.Efectivamente ambos métodos tienen sus ventajas, pero ambos son detectados por Android sin problema. Es más, JWPlayer, puedes verlo funcionando con la URL que proporcionas tú en el siguiente enlace. Por lo que imagino que el problema viene de que o bien utilizas un android muy viejo, aun que en iphone también funciona correctamente, o tu navegador no soporta la reproducción de vídeos o bien estás utilizando algún otro sistema operativo para teléfonos móviles. También es posible que no estés utilizando correctamente los códigos que publiqué en su día en esta web.

Si puedo hacer algo más por ti, no dudes en escribir aquí. Salu2 y gracias por la visita.

Hola. Perdona la tardanza. Es posible que te esté bloqueando el protocolo http por que debes conseguir tu propia api Key para un correcto funcionamiento. También deberías asegurarte de que no sea tu navegador quien no esté bloqueando el vídeo. Prueba el enlace de ejemplo que tengo en el artículo (al final) a ver si este te funciona. Espero que te sea de ayuda. De no ser así, dejame otro comentario. Salu2.

Hola. En primer lugar, el código que puedes encontrar en el artículo puedes utilizarlo donde tú quieras. Si lo copias tal y como está (añadiéndole las etiquetas de apertura y cierre html podrás utilizarlo como página para recibir las emisiones del archivo m3u8 que indiques. Si quieres añadirlo a una página tuya, solo tendrías que adaptar el código que yo te paso a tus necesidades particulares.
En cuanto a tu segunda pregunta te digo que si, que puedes cambiar el archivo m3u8 nada más. Si quieres añadir más reproducciones en la misma página me parece recordar que habría que añadir algunas cosas más, pero la idea principal es la que puedes ver en el post.

Espero haber respondido a tus preguntas. De no ser así, házmelo saber. Salu2 y gracias por el comentario.

Hola. En cuanto a tus preguntas te diré que el archivo este del que hablas, yo lo dejaría donde está, pero sino siempre puedes abrirlo, seleccionarlo todo y guardarlo en tu disco duro. Pero después tendrías que cambiar como mínimo la ruta al archivo.

En cuanto a lo de que sirva también para un smartphone te digo que así como está yo puedo verlo en mi smartphone. Si el código te da algún error, publícalo en un comentario.

Salu2.

El código no funciona en Chrome, he probado en varios ordenadores y solo me funciona en Firefox y Microsoft Edge… hay alguna manera de repararlo?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.