Moderno, ligero y sin dependencias. Construido sobre el elemento <video> nativo con soporte para HLS, múltiples calidades, subtítulos y modo ambiente.
Carga un único archivo JS desde la CDN o descarga el archivo dynamo-player.min.js
<script src="https://alexmejf.github.io/dynamo_player/dist/dynamo-player.min.js"></script>
El reproductor se activa automáticamente sobre cualquier <video id="dynamoPlayer"> en el DOM.
<video id="dynamoPlayer" // Requerido data-src="mi-video.mp4" // HLS, M3U8, MP4, WebM... poster="poster.jpg" // url del poster controlsOverscreen="true" // controles sobre el video ambientMode="true" // modo ambiental autoThumbnails="true" // miniaturas en seek inPicture="true" // picture-in-picture ></video>
Si insertas el elemento de video dinámicamente (ej. con JS o un framework), llama a init() manualmente.
// Inicializa todos los <video id="dynamoPlayer"> nuevos DynamoPlayer.init();
Todos los atributos se declaran directamente en el elemento <video>.
El atributo data-src acepta tres formatos distintos.
<video id="dynamoPlayer" data-src="video.mp4"> </video>
<video id="dynamoPlayer" data-src="stream.m3u8"> </video> // hls.js se carga automáticamente
data-src='[ { "label": "1080p", "src": "video-1080.mp4" }, { "label": "720p", "src": "video-720.mp4" }, { "label": "480p", "src": "video-480.mp4" } ]'
data-src='{ "sources": [ { "label": "1080p", "src": "video.mp4" } ], "subtitles": [ { "label": "Español", "srclang": "es", "src": "subs-es.vtt", "default": true } ] }'
El reproductor captura eventos de teclado cuando tiene el foco. Haz clic sobre él para enfocarlo.