Acabo de compilar mi propia copia de ffmpeg en mi sistema y se encuentra en la siguiente ruta:
/opt/local/bin/ffmpeg
Cuando ejecuto el siguiente comando en Terminal.app, se ejecuta sin problemas:
ffmpeg -i /Users/Amit/Documents/input.avi -c:v copy -c:a aac -b:a 384k -strict -2 /Users/Amit/Documents/output.m4v
Sin embargo, un comando similar ejecutado como shell-script en un servicio de Automator falla:
for f in "$@"
do
ffmpeg -i "$f" -c:v copy -c:a aac -b:a 384k -strict -2 "${f%.*}.m4v"
done
Hasta ahora, tenía una compilación precompilada de ffmpeg en mi sistema ubicada en:
/Applications/Scriptlets/
Y mi shell-script de Automator tenía la ruta completa (/ Applications / Scriptlets / ffmpeg) en lugar de solo ffmpeg; y funcionó bien. Sin embargo, hoy decidí compilar una copia nueva de ffmpeg usando MacPorts y eliminé la versión anterior de mi carpeta de Aplicaciones / Scriptlets. Ahora, este ffmpeg funciona bien en Terminal pero da un error cada vez que intento ejecutarlo desde un script de shell dentro de un flujo de trabajo de Automator. ¿Estoy haciendo algo mal aquí? ¡Por favor ayuda!