Código de Python - Generador de gifs a partir de video (nueva version)

<<>>
Imágen de perfil
Val: 712
Bronce
Ha aumentado 1 puesto en Python (en relación al último mes)
Gráfica de Python

Generador de gifs a partir de video (nueva version)gráfica de visualizaciones


Python

Actualizado el 10 de Julio del 2026 por Antonio (77 códigos) (Publicado el 29 de Enero del 2024)
26.576 visualizaciones desde el 29 de Enero del 2024
Programa para generar gifs animados a partir de vídeos, que se ejecuta en la línea de comandos.
ARGUMENTOS:
-src/--source: Nombre del vídeo original (obligatorio).
-dest/--destination: Nombre del archivo a generar (opcional).
-sz/--size: Tamaño en porcentaje del gif respecto al vídeo original (opcional).
-shw/--show: Muestra resultado en ventana emergente al finalizar el proceso de generado (opcional).
-st/--start: Segundo inicial para gif (opcional).
-e/--end: Segundo final (opcional).
-spd/--speed: Velocidad relativa de la animación (opcional)

PARA CUALQUIER DUDA U OBSERVACIÓN, USEN LA SECCIÓN DE COMENTARIOS.

imagge

Requerimientos

Lenguaje: Python 3.12.1
Librerias: Pillow 10.2.0, Pyfiglet 1.0.2, ffmpeg-python 0.2.0, pyglet 2.0.10, colorama 0.4.6, moviepy 1.0.3

2.2.1

Actualizado el 20 de Febrero del 2024 (Publicado el 29 de Enero del 2024)gráfica de visualizaciones de la versión: 2.2.1
2.023 visualizaciones desde el 29 de Enero del 2024

3.0

Actualizado el 5 de Mayo del 2024 (Publicado el 6 de Abril del 2024)gráfica de visualizaciones de la versión: 3.0
2.585 visualizaciones desde el 6 de Abril del 2024

3.1

Actualizado el 20 de Diciembre del 2025 (Publicado el 10 de Agosto del 2024)gráfica de visualizaciones de la versión: 3.1
3.039 visualizaciones desde el 10 de Agosto del 2024

3.2
estrellaestrellaestrellaestrellaestrella(1)

Actualizado el 1 de Mayo del 2026 (Publicado el 19 de Diciembre del 2024)gráfica de visualizaciones de la versión: 3.2
18.035 visualizaciones desde el 19 de Diciembre del 2024

3.3

Actualizado el 6 de Junio del 2026 (Publicado el 4 de Mayo del 2026)gráfica de visualizaciones de la versión: 3.3
857 visualizaciones desde el 4 de Mayo del 2026

3.3.1

Publicado el 10 de Julio del 2026gráfica de visualizaciones de la versión: 3.3.1
38 visualizaciones desde el 10 de Julio del 2026
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

image1
image2
image3

# MKGIF
Create gifs from videos in command line.

------------------------------
## MKGIF - Video & WebP to GIF Converter
Una herramienta de línea de comandos (CLI) potente, eficiente y personalizable escrita en Python para convertir videos y archivos WebP animados en GIFs optimizados. Cuenta con barras de progreso interactivas, personalización de tamaño/velocidad y la capacidad de cancelar el proceso en tiempo real.
## Características

* Compatibilidad amplia: Soporta formatos .mp4, .avi, .mov, .wmv, .rm, .gif y .webp.
* Control de rendimiento: Procesamiento eficiente de fotogramas mediante generadores para moderar el uso de memoria RAM.
* Cancelación en vivo: Presiona la Barra Espaciadora en cualquier momento para abortar la conversión de manera segura.
* Personalización total: Ajusta la velocidad (speed), escala de resolución (size) y rango de fotogramas (from_frame / to_frame).
* Interfaz colorida: Salida estilizada en la terminal usando arte ASCII y colores dinámicos.
------------------------------
## Requisitos Previos
El script utiliza las siguientes librerías de Python. Asegúrate de tenerlas instaladas antes de ejecutarlo:

pip install opencv-python pillow numpy tqdm colorama pynput pyfiglet pyglet

------------------------------
## Instalación

### Opción 1: comando global (recomendado)

```bash
git clone https://github.com/antonioam82/MKGIF.git
cd MKGIF
pip install -e .
```

Esto instala las dependencias **y** registra el comando `mkgif`, disponible desde cualquier carpeta:

```bash
mkgif -src video.mp4 -shw
```

### Opción 2: ejecutar el script directamente

Si no quieres instalar el comando global, solo necesitas las dependencias:

```bash
pip install -r requirements.txt
python mkgif.py -src video.mp4 -shw
```

| | ¿Obligatorio? | Para qué sirve |
|---|---|---|
| `pip install -r requirements.txt` | ✅ Sí | Instala las librerías que el script necesita para funcionar |
| `pip install -e .` | ❌ No, es comodidad | Instala las dependencias y además crea el comando global `mkgif`, para no usar `python` ni rutas |

------------------------------
## Modo de uso

```
mkgif -src <archivo_origen> [opciones]
```

| Opción | Descripción | Por defecto |
|---|---|---|
| `-src`, `--source` | Video o WebP animado de origen (obligatorio). Formatos: `.mp4`, `.avi`, `.mov`, `.wmv`, `.rm`, `.gif`, `.webp` | — |
| `-dest`, `--destination` | Nombre del `.gif` de salida | nombre autogenerado (hash SHA-1) |
| `-sz`, `--size` | Escala relativa de tamaño, en % (ej. `50` = mitad de tamaño) | 100 |
| `-spd`, `--speed` | Velocidad relativa, en % (ej. `200` = doble de velocidad) | 100 |
| `-fps`, `--frames_per_second` | Fotogramas por segundo del GIF resultante | el del vídeo original |
| `-from`, `--from_frame` | Fotograma inicial desde el que capturar | 0 |
| `-to`, `--to_frame` | Fotograma final donde detener la captura | último fotograma |
| `-opt`, `--optimize` | Optimiza paleta/compresión al guardar (más lento) | desactivado |
| `-shw`, `--show` | Muestra el GIF resultante en una ventana al terminar | desactivado |
| `-delsrc`, `--delete_source` | Elimina el archivo de origen tras generar el GIF | desactivado |

### Ejemplo

```bash
mkgif -src video.mp4 -dest resultado.gif -sz 50 -spd 200 -opt -shw
```

Durante el proceso, puedes pulsar la **Barra Espaciadora** en cualquier momento para cancelar la conversión de forma segura.

------------------------------
## Estructura del Código
El script está diseñado modularmente bajo las siguientes funciones clave:

* AppState: Dataclass que gestiona el estado global de la aplicación y la detención por teclado.
* read_video(): Extrae los fotogramas del archivo multimedia de origen de forma eficiente.
* frame_generator(): Generador intermedio que entrega fotogramas uno a uno para evitar saturar la memoria.
* create_gif(): Redimensiona, procesa la barra de progreso y exporta el archivo GIF final.
* on_press(): Escucha en segundo plano la tecla espacio mediante pynput para detener los bucles de manera asíncrona.

------------------------------
## Licencia
Este proyecto está bajo la licencia MIT. Siéntete libre de clonarlo, modificarlo y mejorar el código.
------------------------------

Si alguno de los archivos de descarga no funciona, comentanos aquí el error.




Comentarios sobre la versión: 3.3.1 (0)


No hay comentarios
 

Comentar la versión: 3.3.1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s7491