Script avanzado de Python diseñado para comprimir múltiples videos utilizando HandBrakeCLI en macOS. Versión 1.1 incluye optimizaciones específicas para Apple Silicon (M1, M2, M3, M4) con doble modo de compresión para máximo rendimiento y flexibilidad.
- 🖥️ Modo CPU: Compresión con x264 (CRF 26) - Probado y confiable
- ⚡ Modo GPU: VideoToolbox H.265 optimizado para Apple Silicon
- Hardware decoders habilitados para pipeline GPU completo
- 15-30% más rápido en chips Apple Silicon
- Calidad superior con CRF 19
- Optimización de latencia (max-frame-delay=1)
- Alta tasa de compresión: Reducción del 60-80% del tamaño original
- Calidad preservada: Configuraciones probadas para óptima calidad visual
- Estadísticas completas: Tiempo, espacio ahorrado y métricas detalladas
- Sonido de finalización: Notificación auditiva al completar el proceso
- 🍎 macOS (optimizado para Apple Silicon M1/M2/M3/M4)
- 🐍 Python 3.x
- 🎬 HandBrakeCLI (instalado via Homebrew)
# Instalar HandBrakeCLI
brew install handbrake
# Clonar repositorio
git clone https://github.com/CodeGeekR/compress_mp4.git
cd compress-mp4python3 compress.pyEl script te presentará un menú interactivo:
🎬 Bienvenido al Compresor de Videos v1.1
Selecciona el modo de compresión:
1. 🖥️ CPU Mode (x264) - Estable y confiable
2. ⚡ GPU Mode (VideoToolbox) - Optimizado para Apple Silicon
Ingresa tu opción (1 o 2):
- Selecciona la carpeta con tus videos (.mp4, .mov, .avi, .mkv)
- Define la carpeta de salida para videos comprimidos
- Elige el modo de compresión (CPU o GPU)
- Confirma la configuración y ¡deja que el script haga su magia! ✨
Codec: H.264 (x264)
CRF: 26
Preset: very fast
Tune: film
Resolución: Preservada (máx. 1080p)
Codec: H.265 (VideoToolbox)
CRF: 19
Preset: speed
Hardware Decoders: Habilitados
Max Frame Delay: 1 (ultra-baja latencia)
Look-ahead: 40 frames
Reference frames: 5
QP Range: 10-30
Resolución: Preservada (máx. 1080p)
| Característica | Modo CPU | Modo GPU (Apple Silicon) |
|---|---|---|
| Velocidad | Baseline | +15-30% más rápido |
| Calidad | Excelente (CRF 26) | Superior (CRF 19) |
| Compresión | 60-70% | 70-80% |
| Uso de Hardware | Solo CPU | CPU + GPU optimizado |
| Codec | H.264 | H.265 (HEVC) |
| Compatibilidad | Universal | Apple Silicon nativo |
- Archivos originales enviados automáticamente a la papelera
- Nombres de archivo optimizados con sufijo "_compressed"
- Preservación de metadatos importantes
- Detección automática de tipo de archivo
- Manejo robusto de errores
- Estadísticas en tiempo real
- Opción de apagado automático del Mac al finalizar
¡Contribuciones son bienvenidas! 🚀
- Fork este repositorio
- Crea una rama:
git checkout -b feature/nueva-funcionalidad - Commit tus cambios:
git commit -m "Añade nueva funcionalidad" - Push a la rama:
git push origin feature/nueva-funcionalidad - Abre un Pull Request
- 🐛 Bugs: Reporta errores con detalles específicos
- 💡 Ideas: Sugiere nuevas funcionalidades
- 📖 Documentación: Mejoras en la documentación
Este proyecto está bajo la Licencia MIT. Ver LICENSE para más detalles.
- HandBrake Team por su excelente CLI
- Apple por las optimizaciones de VideoToolbox
- Comunidad Open Source por el feedback continuo
