A simple script to check any movie file (mp4 mkv avi) to determine if require conversion to Direct Play.
Find a file
2026-02-27 19:22:12 -03:00
check-movies add .converted. in output name if input is the same name 2026-02-27 19:22:12 -03:00
LICENSE add LICENSE doc 2026-02-26 21:27:11 -03:00
README.md impr README 2026-02-26 21:30:09 -03:00

Direct Play movies

Script simple para re-codificar archivos de video antiguos a MP4 (H.264 + AAC) optimizado para reproducción directa en servidores como Jellyfin.

El script no afecta ni modifica ningún archivo, solamente analiza y sugiere el comando de optimización. Si aplica el comando ffmpeg realizará el proceso, dejando el archivo modificado. Pensado para media-servers autohosteados, para bibliotecas de videos heredadas.

Objetivo y motivación

Analizar archivos de video (AVI + mpeg4, MP3 audio y otros formatos legacy) para determinar la necesidad de transformarlo a un formato moderno y compatible para direct play por streaming:

  • Contenedor: mp4
  • Video: H.264 (libx264)
  • Audio: AAC
  • Pixel format: yuv420p

El script muestra el comando base para ejecutar y reducir la necesidad de transcodificación en tiempo real.

Comando base

ffmpeg -i input.avi \
  -c:v libx264 \
  -preset slow \
  -crf 18 \
  -profile:v high \
  -level 4.1 \
  -pix_fmt yuv420p \
  -c:a aac \
  -b:a 192k \
  -movflags +faststart \
  output.mp4

Criterios para el video de salida

  • CRF 18 → Alta calidad visual
  • preset slow → Mejor compresión
  • yuv420p → Compatibilidad universal
  • +faststart → Optimizado para streaming

Uso

./check-movies /ruta/a/videos

License

Licensed under the WTFPL v2.

http://www.wtfpl.net/

WTFPL badge