Fórmula para calcular la suma de los códigos de tiempo - AppleScript

1

Después de una extensa investigación en Internet, no pude encontrar una fórmula decente para calcular (agregar) códigos de tiempo, por lo que estoy creando mi propio script desde cero.

Hasta ahora puedo obtener un resultado bastante decente, sin embargo, estoy teniendo problemas para explicar los plazos de Drop-Frame. Según lo que aprendí, saltan del cuadro 29 al 02, a menos que sea el décimo (o múltiplos) minutos, en cuyo caso estarán allí los cuadros 00 y 01.

¿Algún consejo sobre cómo implementar esta función?

También cualquier mejora en el script será bienvenida.


global tcSTART
global tcDURATION
global tcFINAL
global frameRATE

on run
    set frameRATE to "23.98" -- test frame rate
    set tcSTART to "04:03:02:01" -- test Value 1
    set tcDURATION to "01:02:03:04" -- teste Value 2

    my calcFinalTC()
    display dialog tcFINAL
end run

on calcFinalTC()
    set FF to (word 4 of tcSTART) + (word 4 of tcDURATION)
    set SS to (word 3 of tcSTART) + (word 3 of tcDURATION)
    set MM to (word 2 of tcSTART) + (word 2 of tcDURATION)
    set HH to (word 1 of tcSTART) + (word 1 of tcDURATION)
    if FF ≥ frameRATE then
        set FF to (FF - (round (frameRATE)))
        set SS to (SS + 1)
    end if
    if SS ≥ 60 then
        set SS to (SS - 60)
        set MM to (MM + 1)
    end if
    if MM ≥ 60 then
        set MM to (MM - 60)
        set HH to (HH + 1)
    end if
    if HH > 23 then
        display dialog "The timeline can't be larger than 24 hours" buttons {"OK"}
        error -128
    end if
    if the length of ((FF div 1) as string) = 1 then
        set FF to "0" & FF
    end if
    if the length of ((SS div 1) as string) = 1 then
        set SS to "0" & SS
    end if
    if the length of ((MM div 1) as string) = 1 then
        set MM to "0" & MM
    end if
    if the length of ((HH div 1) as string) = 1 then
        set HH to "0" & HH
    end if
    set tcFINAL to HH & ":" & MM & ":" & SS & ":" & FF
end calcFinalTC

    
pregunta Mateus Ribeiro 10.09.2018 - 01:12

0 respuestas

Lea otras preguntas en las etiquetas