Uso gframecatcher para generar galerías de videos en miniatura, es decir, algo como esto:
Sin embargo, esta es una herramienta GUI y quiero crear recursivamente una galería para cada video en una estructura de directorio, por lo que estoy buscando una herramienta de línea de comandos rápida para hacerlo.
command-line
video
estudiante
fuente
fuente
-r
). Esto hace que sea más fácil y más preciso especificar tiempos. 5 min = 300 segundosffmpeg -i MOVIE.mp4 -r 1/300 -vf scale=-1:120 -vcodec png capture-%02d.png
.avconv
funciona de la misma manera, en caso de que no tengaffmpeg
disponible (algunas versiones de Ubuntu).Me gusta usar un script bash de línea de comandos de Unix fácil de usar llamado VCS - Video Contact Sheet. Su página oficial: http://p.outlyer.net/vcs/
Es mucho más fácil de usar, incluso más fácil que una GUI
'' Es un script bash destinado a crear hojas de contacto de video (vistas previas), también conocidas como miniaturas o vistas previas de videos. Este script puede usar cualquier video compatible con mplayer y ffmpeg. '' Necesitará tener uno
ffmpeg
omplayer
instalarlo en su sistema.Uso:
Como funciona el comando
¡Edite input-filname al nombre de su archivo de video!
-U0
(sin nombre en el pie de página, o si no muestra el nombre del host, tenga en cuenta que esto es cero, no la letraO
)-i 1m
(establece el intervalo de tiempo de captura en minutos, en este caso es cada minuto, también puede usarlo,-n
que establece el número de capturas, por ejemplo-n 21
, creará 21 imágenes, pero no use ambas)-c
establece el número de columnas (aquí son 3 columnas)-H 200 -a 300/200
(establece el tamaño y el aspecto para que el archivo no sea demasiado grande, parece que tiene que hacer ambas cosas)-o filename.jpg
(úselo.jpg
como predeterminado, ya que.png
es demasiado grande, ¡y cambie el nombre del archivo a uno de su elección!)fuente
Este parece encajar perfectamente , es gratuito y de código abierto e incluso funciona en Windows :)
Incluso tiene cosas avanzadas, como en lugar de elegir ciegamente cualquier fotograma en el intervalo particular, puede elegir las que estén lo suficientemente cerca pero no se vean demasiado borrosas, así que en lugar de hacer esto:
Puede pasarle un parámetro (
-D6
) para que haga esto:Además, realmente no me gustan los bordes, por lo que las imágenes pueden ser ligeramente más grandes.
fuente
Hay una solución del foro ffmpeg.
Para hacer múltiples capturas de pantalla y colocarlas en un solo archivo de imagen (creando mosaicos), puede usar el filtro de video en mosaico de FFmpeg, de esta manera:
Eso buscará 10 segundos en la película, seleccionará cada fotograma número 1000, escalará a 320x240 píxeles y creará mosaicos de 2x3 en la imagen de salida out.png.
Publicación original aquí: http://ffmpeg.gusari.org/viewtopic.php?f=25&t=597
fuente
Así es como proceso una hoja de contacto simple usando AWS EC2, desde mi mac.
Paso 1: Cree una instancia EC2 en Amazon Web Services
Solía:
Paso 2: configurar la instancia
Todo esto se ejecuta desde mi mac por conveniencia, pero también puede ejecutar solo los comandos "sudu su ..." desde la línea de comandos EC2.
Reemplazar 11.22.33.44 con su IP EC2.
Paso # 3: Procesar un video
Envía el video:
Proceselo en una hoja de contacto:
Cambie / Users / mdouma a su raíz local Cambie ", 1" a otro número, por ejemplo, ", 7", si solo desea cada 7º cuadro. Cambia 111 al tamaño que quieras
Copie de nuevo a mi mac:
fuente
sudo su
tiene sentido.Esta herramienta me ayudó (2019-02), y se mantiene. Muchas opciones: cuadrícula, calidad, fuentes, colores, borde, intervalo, ...
https://github.com/amietn/vcsi
Solo necesitas ffmpeg y python.
fuente
El paquete 'imagemagick' tiene utilidades para cosas como esta.
http://www.imagemagick.org/Usage/thumbnails/
También hay bibliotecas API que utilizan imagemajick para varios idiomas .
fuente
convert
Es probablemente el más general. Mire la sección titulada Creación general de miniaturas en la primera página a la que me vinculé.Totem, el reproductor de video predeterminado para 14.04 y algunas versiones anteriores de Ubuntu, tiene una opción de menú con opciones simples (en el menú Editar, "Crear galería de capturas de pantalla ..."). También hay un equivalente de línea de comando (ish) llamado "totem-video-thumbnailer" que tiene una página de manual que le dice cómo usarlo; Escribí un script de bash simple que utilizaba la salida del comando find (teniendo cuidado de no separar archivos con espacios en los nombres) para generar automáticamente una galería de capturas de pantalla en miniatura (o una hoja de contacto como también se mencionó anteriormente) para cualquier archivo por encima de cierto tamaño en un directorio que aún no tenía uno.
Podría subirlo a mi github en ~ jgbreezer si a alguien le gusta buscarlo. Aunque las soluciones que usan ffmpeg y otras cosas pueden ser más flexibles y confiables; Parece que obtengo salidas de error del comando totem sobre no encontrar ciertos marcos, pero parece funcionar de todos modos la mayor parte del tiempo.
fuente
Quería lo mismo y googleé terminó usando ffmpeg e imagemagick. NO 'rápido' en mi humilde opinión. Luego encontré un script bash llamado SlickSlice (última actualización 2008 pero funcionó perfectamente a partir de ayer). Lo instalé y lo personalicé a mi gusto usando el archivo de configuración y el script en sí. El script usa ImageMagick y MPlayer por cierto.
Hice un procedimiento detallado y personalización después de usarlo con éxito. Una vez instalado con éxito, puede generar una miniatura de la línea de tiempo del video con un comando tan simple:
slickslice -x "InputFile.mp4"
(predeterminado 4 columnas x 15 filas) oslickslice -x "InputFile.mp4" -S 6x10
(para 6 columnas x 10 filas).Sale como
SLICKSLICED_InputFile.mp4.jpeg
y lo personalicé para producirInputFile.mp4-screen.jpeg
editando el script bash en sí.fuente