B
blankito1998
Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
como hago para que obtenga la imagen automaticamente sin necesidad de dar click en obtener?Para obtener una imagen de vista previa (thumbnail) de un video en HTML, puedes usar la etiqueta<video>junto con un<canvas>para extraer un frame del video. Aquí hay un ejemplo básico de cómo hacerlo:
### HTML y JavaScript
HTML:<!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title>Preview de Video</title> </head> <body> <video id="video" width="640" height="360" controls> <source src="tu_video.mp4" type="video/mp4"> Tu navegador no soporta la etiqueta de video. </video> <br> <button id="previewButton">Obtener Vista Previa</button> <canvas id="canvas" width="640" height="360" style="display:none;"></canvas> <img id="thumbnail" alt="Vista Previa" /> <script> const video = document.getElementById('video'); const canvas = document.getElementById('canvas'); const ctx = canvas.getContext('2d'); const thumbnail = document.getElementById('thumbnail'); document.getElementById('previewButton').onclick = function() { // Configura el tiempo (en segundos) donde deseas tomar la vista previa video.currentTime = 1; // Por ejemplo, al segundo 1 // Espera a que el video esté listo para tomar la imagen video.addEventListener('seeked', function() { ctx.drawImage(video, 0, 0, canvas.width, canvas.height); thumbnail.src = canvas.toDataURL(); // Establece la imagen como fuente del <img> }, { once: true }); }; </script> </body> </html>
### Explicación:
1. HTML: Incluye un elemento<video>, un botón para obtener la vista previa, un<canvas>oculto para dibujar la imagen y un<img>para mostrar la vista previa.
2. JavaScript: Al hacer clic en el botón, se establece el tiempo del video donde deseas obtener la vista previa. Luego, se espera que el video esté preparado en ese tiempo (seeked), se dibuja el frame en el<canvas>, y finalmente, se convierte ese canvas a una imagen base64 para mostrarla en el elemento<img>.
Con esto, podrás mostrar una vista previa de un video de manera efectiva. Si necesitas más ayuda, ¡pregunta sin dudar!