4 votes

ffmpeg fonctionne à partir de la ligne de commande dans le Terminal mais pas dans un shell Automator script !

Je viens de compiler ma propre copie de ffmpeg sur mon système et elle se trouve dans le chemin suivant :

/opt/local/bin/ffmpeg

Lorsque j'exécute la commande suivante dans Terminal.app, elle fonctionne sans problème :

ffmpeg -i /Users/Amit/Documents/input.avi -c:v copy -c:a aac -b:a 384k -strict -2 /Users/Amit/Documents/output.m4v

Cependant, une commande similaire exécutée en tant que shell-script dans un service Automator échoue :

for f in "$@"
do
    ffmpeg -i "$f" -c:v copy -c:a aac -b:a 384k -strict -2 "${f%.*}.m4v"
done

Jusqu'à présent, j'avais une version précompilée de ffmpeg sur mon système à l'adresse suivante :

/Applications/Scriptlets/

Et mon shell Automator-script avait le chemin complet (/Applications/Scriptlets/ffmpeg) au lieu de juste ffmpeg ; et cela a bien fonctionné. Cependant, aujourd'hui, j'ai décidé de compiler une nouvelle copie de ffmpeg en utilisant MacPorts et j'ai supprimé la version précédente de mon dossier Applications/Scriptlets. Maintenant, ce ffmpeg fonctionne bien dans le Terminal mais donne une erreur lorsque j'essaie de l'exécuter à partir d'un shell-script à l'intérieur d'un flux de travail Automator. Est-ce que je fais quelque chose de mal ici ? Aidez-moi, s'il vous plaît !

6voto

Graham Miln Points 39606

Le script d'Automator ne partage pas automatiquement votre profil Terminal.app. Les chemins d'accès à des outils supplémentaires peuvent ne pas être trouvés parce que le script d'Automator ne peut pas les trouver.

Essayez d'étendre votre script afin d'inclure le chemin absolu ou complet de l'application ffmpeg que vous voulez utiliser :

for f in "$@"
do
    /opt/local/bin/ffmpeg -i "$f" -c:v copy -c:a aac -b:a 384k -strict -2 "${f%.*}.m4v"
done

Vous pouvez également introduire votre profil Terminal.app en utilisant l'approche de cette question, Mon flux de travail Automator échoue parce qu'il ne trouve pas la commande git dans la commande 'Run Shell script' ? Besoin d'aide .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X