CMTimeMake(a,b) a当前第几帧, b每秒钟多少帧.当前播放时间a/b
CMTimeMakeWithSeconds(a,b) a当前时间,b每秒钟多少帧.
CMTimeMake
CMTime CMTimeMake (
int64_t value,
int32_t timescale
);
CMTimeMake顾名思义就是用来建立CMTime用的,
但是它并不是用来表示一般时间用的,
CMTime是专门用来表示影片時间用的类别,
他的用法为: CMTimeMake(time, timeScale)
time指的就是时间(不是秒),
而时间要换算成秒就要看第二個参数timeScale了.
timeScale指的是1秒需要由几个frame构成(可以视为fps),
因此真正要表达的时间就会是 time / timeScale 才是秒.
简单举个例子
CMTimeMake(60, 30);
CMTimeMake(30, 15);
在这两个例子中影片的时间都是2秒钟,
但是影片播放速率则不同, 相差了有两倍.