QTCaptureVideoPreviewOutput
Этот класс представляет выходное место назначения для a QTCaptureSession
это может использоваться для предварительного просмотра получаемого видео. Экземпляры QTCaptureVideoPreviewOutput
произведите распакованные видеокадры, подходящие для предварительного просмотра. Поскольку выходное видео предназначается для предварительного просмотра только, экземпляры могут отбросить кадры или сократить выходное качество для улучшения общей производительности сеанса получения. Приложения, которые должны обработать кадры полного качества, не отбрасывая их, должны использовать QTCaptureDecompressedVideoOutput
вместо этого.
Приложения могут получить доступ к распакованным кадрам от QuickTime визуальный контекст для каждого выходного соединения, или через captureOutput:didOutputVideoFrame:withSampleBuffer:fromConnection:
метод делегата. Кроме того, клиенты могут создать подклассы QTCaptureVideoPreviewOutput
добавить пользовательское поведение получения. Клиенты Набора приложения, желающие предварительно просматривать видео, не должны обычно использовать QTCaptureVideoPreviewOutput
экземпляры непосредственно, так как они создаются и управляются экземплярами QTCaptureView
. Клиенты должны использовать QTCaptureVideoPreviewOutput
непосредственно только, когда они требуют функциональности предварительного просмотра, не предоставленной QTCaptureView
или когда они должны обработать распакованные кадры непосредственно.
Обратите внимание на то, что клиенты не должны пытаться получить доступ или сконфигурировать вывод предварительного просмотра QTCaptureView.
Наследование
-
NSObject
-
QTCaptureOutput
-
QTCaptureVideoPreviewOutput
-
NSObject
-
QTCaptureOutput
-
QTCaptureVideoPreviewOutput
Оператор импорта
Swift
import QTKit
Objective C
@import QTKit;
Доступность
Доступный в QuickTime 7.2.1 и позже.
-
Возвращает делегата получателя.
Объявление
Objective C
- (id)delegate
Оператор импорта
Objective C
@import QTKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
pixelBufferAttributes - pixelBufferAttributes
(OS X v10.9)Возвращает Базовые Видео пиксельные буферные атрибуты, ранее установленные
setPixelBufferAttributes:
это определяет, какие пиксельные буферы выводятся получателем.Объявление
Objective C
- (NSDictionary *)pixelBufferAttributes
Возвращаемое значение
Словарь, содержащий пиксель, буферизует атрибуты для буферов, выведенных получателем. Ключи в словаре описаны в
CoreVideo/CVPixelBuffer.h
. Если возвращаемое значениеNIL
, тогда выходные буферы получателя с помощью самого быстрого пикселя буферизуют атрибуты.Обсуждение
Этот метод возвращает пиксельные буферные атрибуты, установленные
setPixelBufferAttributes:
то, что клиенты могут использовать для настройки размера и формата пикселя видеокадров, выведенных получателем. Когда словарь будет ненолем, получатель попытается к буферам выходного пикселя с помощью атрибутов, указанных в словаре. Ненулевой словарь также гарантирует что выводCVImageBuffer
aCVPixelBuffer
. Когда значение дляkCVPixelBufferPixelFormatTypeKey
установлен в NSNumber, все буферы изображения, выведенные получателем, будут в том формате. Когда значение будет NSArray, буферы изображения, выведенные получателем, будут в самом оптимальном формате, указанном в том массиве. Если полученные изображения не будут в том из указанных форматов пикселя, то преобразование формата будет выполняться. Если словарьNIL
или нет никакого значения дляkCVPixelBufferPixelFormatTypeKey
, тогда получатель выведет изображения в самом эффективном формате, данном ввод. Например, если источник будет iSight создание компонента Y'CbCr, 8-разрядного 4:2:2 видео тогда, то Y'CbCr, 8-разрядный 4:2:2, будет использоваться в качестве выходного формата во избежание любых преобразований. Значение по умолчанию для возвращенного словаряNIL
.Оператор импорта
Objective C
@import QTKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
setPixelBufferAttributes: - setPixelBufferAttributes:
(OS X v10.9)Устанавливает пиксельные буферные атрибуты CoreVideo, определяющие, какие пиксельные буферы выводятся получателем.
Объявление
Objective C
- (void)setPixelBufferAttributes:(NSDictionary *)
pixelBufferAttributes
Параметры
pixelBufferAttributes
Словарь, содержащий пиксель, буферизует атрибуты для буферов, которые будут выведены получателем. Ключи в словаре описаны в
CoreVideo/CVPixelBuffer.h
. Если словарьNIL
, тогда выходные буферы получателя с помощью самого быстрого пикселя буферизуют атрибуты.Обсуждение
Эти наборы метода пиксельный буфер приписывает это клиенты, могут использовать для настройки размера и формата пикселя видеокадров, выведенных получателем. Когда словарь будет ненолем, получатель попытается к буферам выходного пикселя с помощью атрибутов, указанных в словаре. Ненулевой словарь также гарантирует что вывод
CVImageBuffer
aCVPixelBuffer
. Когда значение дляkCVPixelBufferPixelFormatTypeKey
установлен в NSNumber, все буферы изображения, выведенные получателем, будут в том формате. Когда значение будет NSArray, буферы изображения, выведенные получателем, будут в самом оптимальном формате, указанном в том массиве. Если полученные изображения не будут в том из указанных форматов пикселя, то преобразование формата будет выполняться. Если словарьNIL
или нет никакого значения дляkCVPixelBufferPixelFormatTypeKey
, тогда получатель выведет изображения в самом эффективном формате, данном ввод. Например, если источник будет iSight создание компонента Y'CbCr, 8-разрядного 4:2:2 видео тогда, то Y'CbCr, 8-разрядный 4:2:2, будет использоваться в качестве выходного формата во избежание любых преобразований.Оператор импорта
Objective C
@import QTKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
visualContextForConnection: - visualContextForConnection:
(OS X v10.9)Возвращает QuickTime, визуальный контекст раньше предварительно просматривал видео для данного соединения.
Объявление
Objective C
- (QTVisualContextRef)visualContextForConnection:(QTCaptureConnection *)
connection
Параметры
connection
Соединение предварительно просматривается возвращенным визуальным контекстом.
Возвращаемое значение
A
QTVisualContextRef
это обеспечивает доступ к предварительному просмотру видео для данного соединения.Обсуждение
Возвращенный визуальный контекст может использоваться для получения кадров, которые могут использоваться для отображения предварительного просмотра видео сеанса получения. По умолчанию этот метод возвраты
NULL
, пока визуальный контекст не установлен с помощьюsetVisualContext:forConnection:
.Оператор импорта
Objective C
@import QTKit;
Доступность
OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
Не доступный 64-разрядным приложениям.
-
outputVideoFrame:withSampleBuffer:fromConnection: - outputVideoFrame:withSampleBuffer:fromConnection:
(OS X v10.9)Вызванный каждый раз, когда получатель выводит новый видеокадр.
Объявление
Objective C
- (void)outputVideoFrame:(CVImageBufferRef)
videoFrame
withSampleBuffer:(QTSampleBuffer *)sampleBuffer
fromConnection:(QTCaptureConnection *)connection
Параметры
videoFrame
Буфер, содержащий распакованный кадр.
sampleBuffer
Демонстрационное буферное, содержащее дополнительную информацию о кадре, таком как его время представления.
connection
Соединение, из которого было получено видео.
Обсуждение
Этот метод не должен быть вызван непосредственно. Подклассы могут переопределить этот метод для обеспечения пользовательского поведения обработки для каждого кадра. Реализация по умолчанию вызывает делегата
captureOutput:didOutputVideoFrame:withSampleBuffer:fromConnection:
метод. Подклассы не должны предполагать, что этот метод вызовут на основном потоке. Кроме того, этот метод периодически вызывают, таким образом, должно быть эффективно предотвратить проблемы производительности получения.Оператор импорта
Objective C
@import QTKit;
Доступность
OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
setDelegate: - setDelegate:
(OS X v10.9)Устанавливает делегата получателя.
Объявление
Objective C
- (void)setDelegate:(id)
delegate
Оператор импорта
Objective C
@import QTKit;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Устанавливает QuickTime, визуальный контекст раньше предварительно просматривал видео для описанного соединения.
Объявление
Objective C
- (void)setVisualContext:(QTVisualContextRef)
visualContext
forConnection:(QTCaptureConnection *)connection
Параметры
visualContext
A
QTVisualContextRef
использоваться для предварительного просмотра данного соединения.connection
Соединение, которое будет предварительно просмотрено данным визуальным контекстом.
Обсуждение
Если приложение имеет существующий визуальный контекст, используемый для отображения видео, этот метод может использоваться для установки визуального контекста для предварительного просмотра.
Оператор импорта
Objective C
@import QTKit;
Доступность
OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
Не доступный 64-разрядным приложениям.
-
captureOutput:didOutputVideoFrame:withSampleBuffer:fromConnection: captureOutput:didOutputVideoFrame:withSampleBuffer:fromConnection:
(OS X v10.9)Вызванный каждый раз, когда предварительный просмотр видео вывел выводы новый видеокадр.
Объявление
Objective C
- (void)captureOutput:(QTCaptureOutput *)
captureOutput
didOutputVideoFrame:(CVImageBufferRef)videoFrame
withSampleBuffer:(QTSampleBuffer *)sampleBuffer
fromConnection:(QTCaptureConnection *)connection
Обсуждение
Делегаты получают этот метод каждый раз, когда выходные распаковки и выводят новый видеокадр. Делегаты могут использовать предоставленный видеокадр для пользовательского предварительного просмотра или для дальнейшей обработки изображений. Делегаты не должны предполагать, что этот метод вызовут на основном потоке. Кроме того, этот метод периодически вызывают, таким образом, должно быть эффективно предотвратить проблемы производительности получения.
Оператор импорта
Objective C
@import QTKit;
Доступность
OS X v10.5 и позже.
Осуждаемый в OS X v10.9.