Usando Automator y Clips de freno de mano para convertir videos automáticamente

1

Estoy tratando de automatizar el proceso de conversión de video usando la versión de Automator y Handbrake CLI. Estoy tratando de implementar la funcionalidad de que cada vez que se descarga un video en mi carpeta de Dropbox en mi PC, se convierte y se coloca en otra carpeta. Actualmente lo estoy probando con una carpeta de prueba (no en Dropbox, así que solo estoy copiando archivos para probar). Cuando se pone un solo archivo o varios archivos en la carpeta, simultáneamente funciona. Pero cuando pongo un archivo (o muchos) y el script se ejecuta, es decir, convierte los videos y pongo otro archivo en la carpeta, entonces ese script de archivo nuevo nunca se llama para que el nuevo video no se convierta.

Entonces, ¿cómo puedo lograr esta funcionalidad que, cuando se ejecuta el script y se agrega un nuevo archivo, se inicia otra instancia del script para el nuevo archivo?

Y también el nuevo archivo se guarda con solo la primera palabra en el nombre si el nombre tiene muchas palabras (es decir, rompiendo el espacio)

Aquí está la captura de pantalla de mi configuración de automator:

Graciasdeantemanoportuayuda.

Aquíestámiscriptdesdeejecutarshellscriptcomopediste@:TonyWilliams

forfin"$@"
do
    Applications/HandBrakeCLI -i "$f" -t 1 --angle 1 -c 1 -o "/Users/abc/Desktop/TestVidDest/$(basename $f)"  -f mp4  -4  -O  --decomb="fast" -w 1280 -l 720 --modulus 16 -e x264 -b 3800 -2  -T  --cfr -a 1 -E faac -6 dpl2 -R 48 -B 128 -D 0 --gain 0 --audio-fallback ffac3 --x264-preset=slow  --x264-profile=high  --x264-tune="film"  --h264-level="4.0"  --verbose=1
done
    
pregunta Muhammad Tahir 21.01.2014 - 12:25

3 respuestas

3

Proceso en segundo plano

Idealmente, tu script debe completarse lo más rápido posible. La forma más fácil es convertir el procesamiento de las películas en procesos en segundo plano. Puede hacerlo agregando un espacio y un símbolo & al final de su línea HandBrakeCLI .

Mover antes de procesar

Sin embargo, esto no resuelve el problema de ignorar los nuevos archivos. De hecho, sus archivos ahora podrían procesarse dos veces si el procesamiento no se completa antes de que aparezca el siguiente archivo nuevo.

Su secuencia de comandos debe mover cada archivo nuevo a otra carpeta no controlada antes de que comience el procesamiento. Considere agregar un comando mv antes de su línea HandBrakeCLI . Alternativamente, puedes hacer que Automator realice el movimiento.

Lo ideal es que la carpeta de destino esté en la misma unidad, para que se complete rápidamente y no demore la secuencia de comandos.

    
respondido por el Graham Miln 21.01.2014 - 14:11
0

Recomiendo encarecidamente el script transcode-video de Don Melton (antiguo jefe de Apple Safari) para convertir archivos de video. El tema y la secuencia de comandos se tratan en profundidad en el podcast Vector de iMore, episodio 22 .

Para automatizar, la secuencia de comandos podría incluirse en una Acción de carpeta o ver el comentario de Don's Gist (24 de junio) sobre cómo realiza las transcodificaciones por lotes.

    
respondido por el Seb Nash 22.08.2014 - 07:20
0

También ten en cuenta que hubo / hay HandBreakeBatch que, como su nombre indica, está destinado a hacer un procesamiento por lotes de HandBreak.

Pero como dice el desarrollador en su sitio web enlace

Habdbreak ahora debería admitir el procesamiento por lotes por sí mismos.

    
respondido por el konqui 22.08.2014 - 07:47

Lea otras preguntas en las etiquetas