Necesito codificar miles de archivos MP4 H264 (en su mayoría) en una jerarquía de carpetas a H265. Desafortunadamente, Handbrake que normalmente usaría tiene un soporte pésimo para el procesamiento por lotes de jerarquías.
El proyecto separado HB Batch Encoder no parece ser compatible con X265.
Preferiblemente me gustaría un método que pueda
¿Puede sugerir una herramienta y un método para esto que logre este conjunto de características?
FFMPEG por supuesto. Al ser una aplicación de línea de comandos, se puede integrar fácilmente en cualquier proceso por lotes sin importar cuán complicado sea, con el beneficio de que puede aprender sobre el poder de la línea de comandos mientras lo hace (funcionó para mí).
Todavía no he explorado mucho la codificación h.265, pero usando la configuración que robé de la wiki de ffmpeg , así es como codificarías una carpeta llena de .movs:
cd "/the/path to/your/folder/"
mkdir "for the trash"
for i in *.mov; do;
ffmpeg -i "$i" -c:v libx265 -preset slow -crf 25 -c:a copy "${i/\.mov/.mp4}"
mv $i "./for the trash/"
done
Tenga en cuenta que esto no eliminará los archivos, los moverá a una nueva carpeta llamada papelera . Esto se debe a que si elimina archivos con la línea de comando, desaparecerán instantáneamente, no tendrá una segunda oportunidad si cambia de opinión o comete un error tipográfico. Hay utilidades de línea de comando de basura , pero eso está más allá del alcance de esta respuesta.
aquí está la entrada de wiki en la que basé mi comando ffmpeg, hace un buen trabajo al explicar las opciones utilizadas (soy un poco cosita acerca de la compresión con pérdida, así que terminé un poco la configuración de calidad. También usé el preajuste lento que da un archivo más pequeño tamaños. Dependiendo de cuánto tiempo tenga, puede usar cualquier cosa desde ultrafast
hasta placebo
para lograr resultados que varían en tamaño de archivo pero con la misma calidad. placebo
Se llama así porque la pequeña diferencia que hace a expensas de un tiempo de procesamiento mucho mayor es principalmente en tu cabeza):
En este ejemplo, utilizaremos la siguiente configuración:
- CRF predeterminado de 28. El CRF de 28 debería corresponder visualmente al video libx264 en CRF 23, pero resulta en aproximadamente la mitad del tamaño del archivo.
- preajuste medio. El preajuste determina qué tan rápido será el proceso de codificación, a expensas de la eficiencia de compresión. Dicho de otra manera, si elige ultrarrápido, el proceso de codificación se ejecutará rápidamente, pero el tamaño del archivo será mayor en comparación con el medio. La calidad visual será la misma. Los preajustes válidos son ultrarrápido, superrápido, muy rápido, más rápido, rápido, medio, lento, más lento, muy lento y placebo.
- Audio AAC a 128 kBit/s. Esto usa el codificador interno ffmpeg, pero en AAC encontrará información sobre más opciones.
ffmpeg -i entrada -c:v libx265 -medio preestablecido -crf 28 -c:a aac -b:a 128k salida.mp4
Handbrake también funciona en la línea de comandos .
Y, por último, si eres alérgico al poder colosal que acecha en terminal.app, hay interfaces gráficas de usuario para ffmpeg, como esta o esta . No estoy seguro de qué tan bien manejan la codificación por lotes, y esta no es una recomendación, porque no uso ninguno de ellos. ¡Es hora de endurecerse y usar la línea de comando!
audionuma
MIB