Как работает CMTimeCompare? - PullRequest
       12

Как работает CMTimeCompare?

7 голосов
/ 09 марта 2012

Как работает CMTimeCompare? Apple, похоже, не указала возвращаемые значения в своей документации.

https://developer.apple.com/library/mac/#documentation/CoreMedia/Reference/CMTime/Reference/reference.html

Я предполагаю, что если времена равны, он возвращает ноль и возвращает положительное или отрицательное значение 1, на основании чего больше?

Ответы [ 2 ]

18 голосов
/ 09 марта 2012

С CMTime.h :

Возвращает числовое соотношение (-1 = меньше, 1 = больше, 0 = равно) двух CMTimes.

-1 возвращается, если время1 меньше времени2.0 возвращается, если они равны.1 возвращается, если время1 больше времени2.

РЕДАКТИРОВАТЬ:

Обратите внимание, что:

Неправильные значения CMTimes считаютсябыть равным другим недействительным CMTimes и больше, чем любой другой CMTime.Считается, что положительная бесконечность меньше любого недопустимого CMTime, равна себе и больше любого другого CMTime.Неопределенный CMTime считается меньше любого недопустимого CMTime, меньше положительной бесконечности, равен самому себе и больше любого другого CMTime.Отрицательная бесконечность считается равной себе и меньше, чем любой другой CMTime.

3 голосов
/ 10 февраля 2015

Для альтернативы, которую намного легче читать, чем CMTimeCompare(), рассмотрите возможность использования макроса CMTIME_COMPARE_INLINE Например

CMTIME_COMPARE_INLINE(time1, <=, time2)

вернет истину, если время1 <= время2 </p>

...