Есть ли способ проверить CMTime, равный другому CMTime. В моем случае мне нужно проверить, что CMTime равно KCMTimeZero. Я пробовал метод CMTimeCompare, но он будет True для всех CMTimes, который равен KCMTimeZero или больше, чем KCMTimeZero.Проверить CMTime Equals
1
A
ответ
7
Я нашел следующий способ проверить, преобразовав его в секундах
if(CMTimeGetSeconds(myTime) == CMTimeGetSeconds(kCMTimeZero))
{
// do something...
}
5
CMTimeCompare
делает этот трюк,
из Xcode
«s документация CMTimeReference
:
int32_t CMTimeCompare (CMTime time1, CMTime time2);
Возвращаемое значение
Численное соотношение два CMTimes.
- -1 возвращается, если time1 меньше времени2.
- 1 возвращается, если time1 больше, чем time2.
- 0 возвращается, если time1 и time2 равны.
2
Я предпочитаю использовать CMTIME_COMPARE_INLINE
макрос, определенный в CMTime.h
, чтобы код был более читаемым. Вот код для Вашего случая (сравнение с kCMTimeZero):
if (CMTIME_COMPARE_INLINE(myTime, ==, kCMTimeZero))
{
// Your code here
}
VishnuKumar: Спасибо. –
@VineeshTP: Добро пожаловать :) –