Peter tiene razón. El siguiente código aclara el concepto:
1)
Float64 seconds = 5;
int32_t preferredTimeScale = 600;
CMTime inTime = CMTimeMakeWithSeconds(seconds, preferredTimeScale);
CMTimeShow(inTime);
El código anterior da: {3000/600 = 5.000}
Lo que significa una duración total de 5 segundos, con 3000 cuadros con una escala de tiempo de 600 cuadros por segundo.
2)
int64_t value = 10000;
int32_t preferredTimeScale = 600;
CMTime inTime = CMTimeMake(value, preferredTimeScale);
CMTimeShow(inTime);
Este da {10000/600 = 16.667}
Lo que significa una duración total de 16.667 segundos, con 10.000 fotogramas con una escala de tiempo de 600 fotogramas por segundo.
Observe la diferencia entre CMTimeMake (valor int64_t, int32_t escala de tiempo) y CMTimeMakeWithSeconds (Float64 segundos, int32_t preferredTimeScale)
Espero que esta explicación ayude. Para más aclaraciones, no dude en publicar más preguntas en esta publicación.
CMTimeMake(1, 48)
ejecutar un bloque de código cada 1/48 de un segundo bloque es decir, 1 por cuadro