Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Системная ссылка платформы ссылка CVTime

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка CVTime

Базовое видео использует CVTime и CVTimeStamp структуры для хранения Базовых Видео временных стоимостей. Вы используете их для взаимодействия с Базовой ссылкой Видеодисплея.

Функции

  • Возвращает текущее системное время.

    Объявление

    Swift

    func CVGetCurrentHostTime() -> UInt64

    Objective C

    uint64_t CVGetCurrentHostTime ( void );

    Возвращаемое значение

    Текущее время узла.

    Обсуждение

    В OS X основы времени узла для Базового Видео и CoreAudio идентичны — оба основываются mach_absolute_time функция — так значения, возвращенные из любого API, может использоваться взаимозаменяемо.

    Оператор импорта

    Objective C

    @import CoreVideo;

    Swift

    import CoreVideo

    Доступность

    Доступный в OS X v10.4 и позже.

  • Возвращает частоту обновлений к системному времени.

    Объявление

    Swift

    func CVGetHostClockFrequency() -> Double

    Objective C

    double CVGetHostClockFrequency ( void );

    Возвращаемое значение

    Текущая частота узла.

    Обсуждение

    В OS X основы времени узла для Базового Видео и CoreAudio идентичны — оба основываются mach_absolute_time функция — так значения, возвращенные из любого API, может использоваться взаимозаменяемо.

    Оператор импорта

    Objective C

    @import CoreVideo;

    Swift

    import CoreVideo

    Доступность

    Доступный в OS X v10.4 и позже.

  • Возвращает самый маленький инкремент в системное время.

    Объявление

    Swift

    func CVGetHostClockMinimumTimeDelta() -> UInt32

    Objective C

    uint32_t CVGetHostClockMinimumTimeDelta ( void );

    Возвращаемое значение

    Самый маленький допустимый инкремент в системное время.

    Оператор импорта

    Objective C

    @import CoreVideo;

    Swift

    import CoreVideo

    Доступность

    Доступный в OS X v10.4 и позже.

Типы данных

  • Структура для создания отчетов о Базовых Видео временных стоимостях.

    Объявление

    Swift

    struct CVTime { var timeValue: Int64 var timeScale: Int32 var flags: Int32 }

    Objective C

    typedef struct { int64_t timeValue; int64_t timeScale; int32_t flags; } CVTime;

    Поля

    timeValue

    Временная стоимость.

    timeScale

    Масштаб времени для этого значения.

    flags

    Флаги связались с CVTime значение. См. Константы CVTime для возможных значений. Если kCVTimeIsIndefinite установлен, Вы не должны использовать ни одно из других полей в этой структуре.

    Обсуждение

    Эта структура эквивалентна QuickTime QTTime структура.

    Доступность

    Доступный в OS X v10.3 и позже.

  • Структура для определения метки времени дисплея.

    Объявление

    Swift

    struct CVTimeStamp { var version: UInt32 var videoTimeScale: Int32 var videoTime: Int64 var hostTime: UInt64 var rateScalar: Double var videoRefreshPeriod: Int64 var smpteTime: CVSMPTETime var flags: UInt64 var reserved: UInt64 }

    Objective C

    typedef struct { uint32_t version; int32_t videoTimeScale; int64_t videoTime; uint64_t hostTime; double rateScalar; int64_t videoRefreshPeriod; CVSMPTETime smpteTime; uint64_t flags; uint64_t reserved; } CVTimeStamp;

    Поля

    version

    Ток CVTimeStamp структура является версией 0. Некоторые функции требуют, чтобы Вы указали версию при передаче в структуре метки времени, чтобы быть заполненными.

    videoTimeScale

    Масштаб (в модулях в секунду) videoTimeScale и videoRefreshPeriod поля.

    videoTime

    Запуск кадра (или поле для чересстрочного видео).

    hostTime

    Системное время, измеренное меткой времени.

    rateScalar

    Действующий курс устройства, как измерено метками времени, разделенными на номинальный уровень.

    videoPeriod

    Номинальный период обновления устройства текущей производительности.

    smpteTime

    Представление времени SMPTE метки времени.

    flags

    Немного поля, содержащего дополнительную информацию о метке времени. Посмотрите Флаги CVTimeStamp для списка возможных значений..

    reserved

    Зарезервированный. Не использовать.

    Обсуждение

    Эта структура разработана, чтобы быть очень подобной аудио метке времени, определенной в платформе Core Audio за исключением того, что в CVTimeStamp значения с плавающей точкой не используются для представления видео эквивалента демонстрационных времен.

    Доступность

    Доступный в OS X v10.3 и позже.

  • Структура для содержания времени SMPTE.

    Объявление

    Swift

    struct CVSMPTETime { var subframes: Int16 var subframeDivisor: Int16 var counter: UInt32 var type: UInt32 var flags: UInt32 var hours: Int16 var minutes: Int16 var seconds: Int16 var frames: Int16 }

    Objective C

    struct CVSMPTETime { SInt16 subframes; SInt16 subframeDivisor; UInt32 counter; UInt32 type; UInt32 flags; SInt16 hours; SInt16 minutes; SInt16 seconds; SInt16 frames; ;} typedef struct CVSMPTETime CVSMPTETime;

    Поля

    subframes

    Число подкадров в полном сообщении.

    subframeDivisor

    Число подкадров на кадр (обычно, 80).

    counter

    Общее количество сообщений получено.

    type

    Вид типа времени SMPTE. См. Типы Времени SMPTE для списка возможных значений.

    flags

    Ряд отмечает, которые указывают состояние SMPTE. См. Флаги состояния SMPTE для возможных значений.

    hours

    Число часов в полном сообщении.

    minutes

    Число минут в полном сообщении.

    seconds

    Число секунд в полном сообщении.

    frames

    Число кадров в полном сообщении.

    Доступность

    Доступный в OS X v10.3 и позже.

Константы

  • Флаги для CVTime структура.

    Объявление

    Swift

    var kCVTimeIsIndefinite: Int { get }

    Objective C

    enum { kCVTimeIsIndefinite = 1 << 0 };

    Константы

    • kCVTimeIsIndefinite

      kCVTimeIsIndefinite

      Временная стоимость неизвестна.

      Доступный в OS X v10.3 и позже.

  • Ключи, представляющие Базовые Видео временные стоимости.

    Объявление

    Swift

    let kCVZeroTime: CVTime let kCVIndefiniteTime: CVTime

    Objective C

    const CVTime kCVZeroTime; const CVTime kCVIndefiniteTime;

    Константы

    • kCVZeroTime

      kCVZeroTime

      Нулевое время или продолжительность. Например, CVDisplayLinkGetOutputVideoLatency возвраты kCVZeroTime для нулевой видео задержки.

      Доступный в OS X v10.3 и позже.

    • kCVIndefiniteTime

      kCVIndefiniteTime

      Неизвестное или неопределенное время. Например, CVDisplayLinkGetNominalOutputVideoRefreshPeriod возвраты kCVIndefiniteTime если указанная ссылка дисплея не допустима.

      Доступный в OS X v10.3 и позже.

  • Флаги для CVTimeStamp структура.

    Объявление

    Swift

    var kCVTimeStampVideoTimeValid: Int { get } var kCVTimeStampHostTimeValid: Int { get } var kCVTimeStampSMPTETimeValid: Int { get } var kCVTimeStampVideoRefreshPeriodValid: Int { get } var kCVTimeStampRateScalarValid: Int { get } var kCVTimeStampTopField: Int { get } var kCVTimeStampBottomField: Int { get } var kCVTimeStampVideoHostTimeValid: Int { get } var kCVTimeStampIsInterlaced: Int { get }

    Objective C

    enum { kCVTimeStampVideoTimeValid = (1L << 0), kCVTimeStampHostTimeValid = (1L << 1), kCVTimeStampSMPTETimeValid = (1L << 2), kCVTimeStampVideoRefreshPeriodValid = (1L << 3), kCVTimeStampRateScalarValid = (1L << 4), kCVTimeStampTopField = (1L << 16), kCVTimeStampBottomField = (1L << 17) }; enum { kCVTimeStampVideoHostTimeValid = (kCVTimeStampVideoTimeValid | kCVTimeStampHostTimeValid ), kCVTimeStampIsInterlaced = (kCVTimeStampTopField | kCVTimeStampBottomField ) };

    Константы

    • kCVTimeStampVideoTimeValid

      kCVTimeStampVideoTimeValid

      Значение в видео поле времени допустимо.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampHostTimeValid

      kCVTimeStampHostTimeValid

      Значение в поле времени узла допустимо.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampSMPTETimeValid

      kCVTimeStampSMPTETimeValid

      Значение в поле времени SMPTE допустимо.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampVideoRefreshPeriodValid

      kCVTimeStampVideoRefreshPeriodValid

      Значение в видео поле периода обновления допустимо.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampRateScalarValid

      kCVTimeStampRateScalarValid

      Значение в скалярном поле уровня допустимо.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampTopField

      kCVTimeStampTopField

      Метка времени представляет верхние строки чересстрочного изображения.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampBottomField

      kCVTimeStampBottomField

      Метка времени представляет нижние строки чересстрочного изображения.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampVideoHostTimeValid

      kCVTimeStampVideoHostTimeValid

      Постоянное указание удобства, что оба видео время и поля времени узла допустимы.

      Доступный в OS X v10.3 и позже.

    • kCVTimeStampIsInterlaced

      kCVTimeStampIsInterlaced

      Постоянное указание удобства, что метка времени для чересстрочного изображения.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Эти флаги указывают который поля в CVTimeStamp структура содержит допустимую информацию.

  • Флаги, описывающие состояние времени SMPTE.

    Объявление

    Swift

    var kCVSMPTETimeValid: Int { get } var kCVSMPTETimeRunning: Int { get }

    Objective C

    enum{ kCVSMPTETimeValid = (1L << 0), kCVSMPTETimeRunning = (1L << 1) };

    Константы

    • kCVSMPTETimeValid

      kCVSMPTETimeValid

      Полный рабочий день допустим.

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeRunning

      kCVSMPTETimeRunning

      Время работает.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Вы используете эти значения в CVSMPTETime структура.

  • Константы, описывающие тип времени SMPTE.

    Объявление

    Swift

    var kCVSMPTETimeType24: Int { get } var kCVSMPTETimeType25: Int { get } var kCVSMPTETimeType30Drop: Int { get } var kCVSMPTETimeType30: Int { get } var kCVSMPTETimeType2997: Int { get } var kCVSMPTETimeType2997Drop: Int { get } var kCVSMPTETimeType60: Int { get } var kCVSMPTETimeType5994: Int { get }

    Objective C

    enum{ kCVSMPTETimeType24 = 0, kCVSMPTETimeType25 = 1, kCVSMPTETimeType30Drop = 2, kCVSMPTETimeType30 = 3, kCVSMPTETimeType2997 = 4, kCVSMPTETimeType2997Drop = 5, kCVSMPTETimeType60 = 6, kCVSMPTETimeType5994 = 7 };

    Константы

    • kCVSMPTETimeType24

      kCVSMPTETimeType24

      24 кадра в секунду (стандартный фильм).

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType25

      kCVSMPTETimeType25

      25 кадров в секунду (стандартный PAL).

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType30Drop

      kCVSMPTETimeType30Drop

      30 кадров отбрасывания.

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType30

      kCVSMPTETimeType30

      30 кадров в секунду.

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType2997

      kCVSMPTETimeType2997

      29,97 кадров в секунду (стандартный NTSC).

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType2997Drop

      kCVSMPTETimeType2997Drop

      29,97 кадров отбрасывания.

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType60

      kCVSMPTETimeType60

      60 кадров в секунду.

      Доступный в OS X v10.3 и позже.

    • kCVSMPTETimeType5994

      kCVSMPTETimeType5994

      59,94 кадров в секунду.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Вы используете эти значения в CVSMPTETime структура.