#!/bin/bash

# Script para comprimir videos MP4 con FFmpeg ajustando la resolución y bitrate
# Autor: ChatGPT

# Crear carpeta 'output' si no existe
OUTPUT_DIR="./output"
mkdir -p "$OUTPUT_DIR"

# Recorrer todos los archivos MP4 en la carpeta actual
for file in *.mp4; do
    # Verificar que el archivo exista (manejo de errores si no hay archivos .mp4)
    if [[ -f "$file" ]]; then
        # Extraer el nombre base del archivo sin extensión
        filename=$(basename "$file" .mp4)
        
        # Ruta de salida
        output_file="${OUTPUT_DIR}/${filename}_compressed.mp4"
        
        echo "Comprimiendo '$file'..."
        
        # Comprimir con FFmpeg:
        # - Ajustar resolución a 1920x1080
        # - Establecer un bitrate para web (ej: 2000k)
        # - Preset ultrafast para más velocidad, pero optimización de tamaño de archivo
        ffmpeg -i "$file" -vf "scale=1920:1080" -b:v 5000k -c:v libx264 -preset fast -c:a aac -b:a 128k "$output_file"
        
        echo "Archivo comprimido guardado en: $output_file"
    else
        echo "No se encontraron archivos .mp4 en esta carpeta."
        exit 1
    fi
done

echo "¡Todos los archivos han sido comprimidos y guardados en '$OUTPUT_DIR'!"