Se preguntó "¿Es posible configurar los dos parámetros a través de una ventana emergente?" y la respuesta es que sí.
Aquí está un ejemplo de cómo se podría hacer:
Entre los Pida Buscador de Elementos de acción y Ejecutar el Shell de Comandos de acción de agregar un Ejecutar AppleScript de acción con los siguientes AppleScript código:
on run {input, parameters}
display dialog "Enter the start time and length:" default answer "-ss 00:00:00 -t 00:00:00" buttons {"Cancel", "OK"} ¬
with title "Set FFMPEG Start Time and Length: -ss 00:00:00 -t 00:00:00"
set beginning of input to text returned of result
return input
end run
A continuación, en Ejecutar el Shell Script de acción, cambiar la secuencia de comandos con el siguiente código:
start_time_and_length="$1"
shift
for f in "$@"
do
/usr/local/Cellar/ffmpeg/3.2.4/bin/ffmpeg -i "$f" $start_time_and_length -c:v copy -c:a copy -f mp4 "${f%.*}.mp4"
done
Cómo funciona esto:
El Pedir Buscador de los Elementos de la acción pasa a un list
de objetos del sistema de archivos para la próxima acción.
El Ejecutar AppleScript acción utiliza un display dialog
para agregar la hora de inicio y la longitud para el comienzo de la list
pasa desde la Pregunte de Buscador de Artículos de acción.
Al Ejecutar el Shell Script de acción recibe lo que fue devuelto desde el Ejecutar AppleScript acción, en este caso, el valor de return input
como list
en el que su primer item
es el text returned
de la result
de la display dialog
, siendo la hora de inicio y la duración. Esto se establece en la start_time_and_length
variable y, a continuación, shift
se utiliza para quitar de la list
que se pasa a for f in "$@"
de procesar el resto de items
en la list
.
Nota: Si usted tiene un problema con el AppleScript código, que se muestra arriba, a continuación, podría utilizar la siguiente solución:
on run {input, parameters}
set tempList to {}
display dialog "Enter the start time and length:" default answer "-ss 00:00:00 -t 00:00:00" buttons {"Cancel", "OK"} ¬
with title "Set FFMPEG Start Time and Length: -ss 00:00:00 -t 00:00:00"
set end of tempList to text returned of result
repeat with i from 1 to (count of input)
set end of tempList to item i of input
end repeat
copy tempList to input
return input
end run