| # Obtener lista de archivos ordenados | |
| files=( $(ls *.mp4 | sort) ) | |
| count=${#files[@]} | |
| # Crear carpeta de salida y limpiar archivos previos | |
| mkdir -p trimmed | |
| rm -f trimmed/* list.txt | |
| # Recodificar cada archivo para asegurarse de que todos tengan las mismas características | |
| for ((i=0; i<$count; i++)); do | |
| f="${files[$i]}" | |
| out="trimmed/$f" | |
| # Recodificar todos los videos con características consistentes (libx264 para video, aac para audio) | |
| echo "Recodificando: $f" | |
| ffmpeg -y -i "$f" -c:v libx264 -c:a aac -ar 44100 -ac 2 -preset fast -tune film -y "$out" | |
| # Agregar el archivo recodificado al archivo list.txt | |
| echo "file '$out'" >> list.txt | |
| done | |
| # Concatenar los videos | |
| echo "Concatenando videos..." | |
| ffmpeg -y -f concat -safe 0 -i list.txt -c:v libx264 -c:a aac -preset fast output.mp4 | |
| echo "✔ Listo: output.mp4" | |