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指的就是時間(不是秒),
而時間要換算成秒就要看第二個參數(shù)timeScale了.
timeScale指的是1秒需要由幾個frame構(gòu)成(可以視為fps),
因此真正要表達的時間就會是 time / timeScale 才是秒.
簡單舉個例子
CMTimeMake(60, 30);
CMTimeMake(30, 15);
在這兩個例子中影片的時間都是2秒鐘,
但是影片播放速率則不同, 相差了有兩倍.