9 votos

Automatización de ffmpeg con Automator Service

A menudo utilizo ffmpeg desde la línea de comandos para convertir archivos de vídeo en mp4 en mi Mac (con Mavericks). Tenga en cuenta, sin embargo, que NO estoy recodificando mis videos; sólo estoy cambiando el contenedor de un avi o un mkv a un mp4 . El comando exacto que ejecuto en Terminal es el siguiente:

/Users/Amit/Documents/scripts/ffmpeg -i /input.mkv -c:v copy -c:a copy /output.mp4

Como se puede ver, esto implica un montón de escribir (por ejemplo, toda la ruta para ffmpeg y los vídeos de origen y de destino) y ya que hago un montón de este tipo de conversiones, sería genial tener un poco de ayuda Automator aquí.

Entonces, ¿cómo se puede crear un servicio Finder que automatice esta actividad? Preferiría un servicio Finder en lugar de una aplicación independiente o un elemento de menú.

11voto

Steve Evans Puntos 155

Automator Service

Puede utilizar Automator para crear un nuevo servicio o droplet :

  1. Iniciar Automator.app
  2. Crear un nuevo servicio con el servicio recibe archivos o carpetas en cualquier aplicación
  3. Añadir un Ejecutar Shell script acción
  4. Establecer Pase de entrada: a como argumentos
  5. Dentro del script, sustituya echo con el script siguiente.
  6. Guarde su flujo de trabajo como un servicio.

Shell script

for f in "$@"
do
    /Users/Amit/Documents/Scripts/ffmpeg -i "$f" -c:v copy -c:a copy "${f%.*}.mp4"
done

Automator ffmpeg

Para obtener más información sobre el uso de Automator, consulte la página de Apple Aspectos básicos del Mac: Automator .

0 votos

Gracias por su ayuda. Hice exactamente lo que sugieres pero no hace nada. Tengo el servicio disponible en el Finder como se pretende, pero cuando selecciono un archivo mkv y ejecutar el servicio, no hace nada. :(

0 votos

No importa, lo resolví. Acabo de sustituir "$fbname" por "${f%.*}.mp4" como sugirió Lauri Ranta. Maldita sea, ¡ojalá pudiera aceptar ambas respuestas porque las dos me han servido de ayuda!

6voto

También puede añadir una función como esta a un archivo de configuración de shell como ~/.bash_profile :

mp4() {
  for f; do
    ffmpeg -i "$f" -c copy "${f%.*}.mp4"
  done
}

A continuación, sólo tiene que ejecutar mp4 input.mkv .

Puede sustituir /Users/Amit/Documents/Scripts/ffmpeg con sólo ffmpeg si te mueves ffmpeg en algún lugar como /usr/bin o si añade PATH=~/Documents/Scripts:$PATH a ~/.bash_profile .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X