Automator Start La acción de captura no detecta la detención en Quicktime en OS X 10.8.2

3

Estoy intentando crear una aplicación Automator que ejecutará Quicktime, creará una nueva captura de audio, iniciará esa captura y luego la guardará con un nombre de archivo específico después de hacer clic en el botón de parada en la ventana de captura. Aunque pude hacer esto en Lion sin ninguna dificultad, sigo teniendo problemas con la acción Iniciar captura en Mountain Lion. Aunque la casilla de verificación "Esperar a que se complete la captura" está marcada, la acción no parece detectarse cuando se hace clic en el botón Detener en Quicktime. ¡Cualquier solución, truco o solución alternativa que funcione correctamente podría ser muy apreciada!

    
pregunta glorifiedHacker 23.11.2012 - 06:37

2 respuestas

1

Hay muchas cosas que no funcionan con respecto a la automatización de QuickTime en Mountain Lion. Esto es feo, pero parece ser una solución que tiene la virtud clave de trabajar realmente.

En su flujo de automatizador, use la acción "Ejecutar AppleScript". Usa esto como el guión:

tell application "QuickTime Player"
    activate
    set x to new audio recording
    tell x to start
    delay 1
    set lastLength to duration of x
    delay 1
    set newLength to duration of x
    try
        repeat while lastLength is not equal to newLength
            delay 1
            set lastLength to newLength
            set newLength to duration of x
        end repeat
    end try
    --  display alert name of document 1
    set v to file of front document
    set thePath to POSIX path of (path to desktop)
    tell x to activate
    delay 1
    tell application "System Events"
        keystroke "S" using {command down, shift down}
        delay 1
        keystroke thePath
        delay 1
        keystroke return
        delay 1
        keystroke "specific file name"
        keystroke return
    end tell
end tell

Esto no es bonito, pero es una solución.

Casi todas las formas basadas en código para escribir el comando de guardar en QuickTime a través de AppleScript parecen estar rotos en Mountain Lion. No puedo acceder a la ruta del primer documento. No puedo exportar. No puedo cerrar el ahorro. Todo falla silenciosamente o con un mensaje de error. Lo que parece funcionar es enviar las pulsaciones apropiadas para simular una exportación manual de archivos. Así que eso es lo que he hecho aquí.

Sospecho que desea que su archivo se guarde con un nombre diferente al "nombre de archivo específico" y quizás en otro lugar que no sea su escritorio. Haga las sustituciones adecuadas en el script para que eso pueda suceder. El archivo estará allí en el disco; Las acciones posteriores en su flujo de trabajo pueden aprovecharlo.

Tenga en cuenta que si su archivo ya existe, obtendrá un cuadro de diálogo de confirmación en el comando de guardar de QT, y el script no lo manejará automáticamente.

    
respondido por el Daniel 30.11.2012 - 04:12
0

En lugar de usar las acciones de inicio de captura incorporadas, use una acción AppleScript como disparador para iniciar la grabación (y espere a que se detenga), luego pase el archivo resultante a Automator para que haga lo que sea necesario con él.

He modificado secuencia de comandos de Daniel Lawson :

tell application "QuickTime Player"
    activate
    new audio recording
    tell front document to start
    delay 1
    set lastLength to duration of front document
    delay 1
    set newLength to duration of front document
    try
        repeat while lastLength is not equal to newLength
            delay 1
            set lastLength to newLength
            set newLength to duration of x
        end repeat
    end try
    set theFile to file of front document
    return POSIX path of theFile
end tell

Eliminé las líneas de exportación 1 y cambié las referencias de una variable a simplemente front document (lo que evita algunos errores si la grabación es corta, lo que encontré durante mi prueba). Finalmente, agregué una declaración de retorno con la ruta POSIX del archivo resultante, que Automator puede tomar como entrada para acciones posteriores.

Coloca eso en una acción de AppleScript, y el archivo resultante se pasará correctamente a cualquier otra acción que tengas (como moverlo, renombrarlo o recodificarlo).

Notas

1 Las funciones de AppleScript de save y export QuickTime Player se rompen hasta el punto de ser inútiles. Mi teoría es que esto sucedió cuando 10.7 introdujo el guardado automático, ya que todas las grabaciones se guardan automáticamente en su directorio ~/Movies , y la configuración de la calidad debe ajustarse manualmente de antemano (no están expuestas a AppleScript).

    
respondido por el robmathers 30.11.2012 - 04:57

Lea otras preguntas en las etiquetas