AVCaptureConnection
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 4.0 и позже.
AVCaptureConnection
объект представляет соединение между вводом получения и выходными объектами получения, связанными с сеансом получения.
Вводы получения (экземпляры AVCaptureInput
) имейте один или несколько входных портов (экземпляры AVCaptureInputPort
). Выводы получения (экземпляры AVCaptureOutput
) может принять данные из одного или более источников (например, AVCaptureMovieFileOutput
объект принимает и видеоданные и аудиоданные).
Можно только добавить AVCaptureConnection
экземпляр к использованию сеанса addConnection:
если canAddConnection:
возвраты YES
true
. При использовании addInput:
или addOutput:
, соединения формируются автоматически между всеми совместимыми вводами и выводами. Только необходимо добавить соединения вручную при добавлении ввода или вывода без соединений. Можно также использовать соединения, чтобы включить или отключить поток данных от данного ввода или к данному выводу.
-
Возвращает соединение получения, описывающее соединение между указанными входными портами и указанным выводом.
Объявление
Objective C
+ (AVCaptureConnection *)connectionWithInputPorts:(NSArray *)
ports
output:(AVCaptureOutput *)output
Параметры
ports
Массив
AVCaptureInputPort
объекты связались сAVCaptureInput
объекты.output
AVCaptureOutput
объект.Возвращаемое значение
Соединение получения, описывающее соединение между
inputPorts
иoutput
.Обсуждение
Можно добавить соединение, возвращенное этим методом к
AVCaptureSession
использование экземпляраaddConnection:
.При использовании
addInput:
: илиaddOutput:
, соединения автоматически формируются между всеми совместимыми вводами и выводами. Вы не должны вручную создать и добавить соединения с сеансом, если Вы не используете примитивaddInputWithNoConnections:
илиaddOutputWithNoConnections:
методы.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 8.0 и позже.
-
Инициализирует соединение получения для описания соединения между указанными входными портами и указанным выводом.
Объявление
Swift
init!(inputPorts
ports
: [AnyObject]!, outputoutput
: AVCaptureOutput!)Objective C
- (id)initWithInputPorts:(NSArray *)
ports
output:(AVCaptureOutput *)output
Параметры
ports
Массив
AVCaptureInputPort
объекты связались сAVCaptureInput
объекты.output
AVCaptureOutput
объект.Возвращаемое значение
Соединение получения, инициализированное для описания соединения между
inputPorts
иoutput
.Обсуждение
Можно добавить соединение, возвращенное этим методом к
AVCaptureSession
использование экземпляраaddConnection:
.При использовании
addInput:
: илиaddOutput:
, соединения автоматически формируются между всеми совместимыми вводами и выводами. Вы не должны вручную создать и добавить соединения с сеансом, если Вы не используете примитивaddInputWithNoConnections:
илиaddOutputWithNoConnections:
методы.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 8.0 и позже.
-
Возвращает соединение получения, описывающее соединение между указанным входным портом и указанным уровнем предварительного просмотра видео.
Объявление
Objective C
+ (AVCaptureConnection *)connectionWithInputPort:(AVCaptureInputPort *)
port
videoPreviewLayer:(AVCaptureVideoPreviewLayer *)layer
Параметры
port
AVCaptureInputPort
объект связался сAVCaptureInput
объект.layer
AVCaptureVideoPreviewLayer
объект.Возвращаемое значение
Соединение получения, описывающее соединение между
port
иlayer
.Обсуждение
Можно добавить соединение, возвращенное этим методом к
AVCaptureSession
использование экземпляраaddConnection:
.При использовании
addInput:
: илиaddOutput:
, соединения автоматически формируются между всеми совместимыми вводами и выводами. Вы не должны вручную создать и добавить соединения с сеансом, если Вы не используете примитивaddInputWithNoConnections:
илиaddOutputWithNoConnections:
методы.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 8.0 и позже.
-
Инициализирует соединение получения для описания соединения между указанным входным портом и указанным уровнем предварительного просмотра видео.
Объявление
Swift
init!(inputPort
port
: AVCaptureInputPort!, videoPreviewLayerlayer
: AVCaptureVideoPreviewLayer!)Objective C
- (id)initWithInputPort:(AVCaptureInputPort *)
port
videoPreviewLayer:(AVCaptureVideoPreviewLayer *)layer
Параметры
port
AVCaptureInputPort
объект связался сAVCaptureInput
объект.layer
AVCaptureVideoPreviewLayer
объект.Возвращаемое значение
Соединение получения, описывающее соединение между
port
иlayer
.Обсуждение
Можно добавить соединение, возвращенное этим методом к
AVCaptureSession
использование экземпляраaddConnection:
.При использовании
addInput:
: илиaddOutput:
, соединения автоматически формируются между всеми совместимыми вводами и выводами. Вы не должны вручную создать и добавить соединения с сеансом, если Вы не используете примитивaddInputWithNoConnections:
илиaddOutputWithNoConnections:
методы.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 8.0 и позже.
-
enabled
СвойствоУказывает, включено ли соединение.
Объявление
Swift
var enabled: Bool
Objective C
@property(nonatomic, getter=isEnabled) BOOL enabled
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
active
СвойствоУказывает, активно ли соединение. (только для чтения)
Объявление
Swift
var active: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isActive) BOOL active
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
inputPorts
СвойствоВходные порты соединения. (только для чтения)
Объявление
Swift
var inputPorts: [AnyObject]! { get }
Objective C
@property(nonatomic, readonly) NSArray *inputPorts
Обсуждение
Входные порты являются экземплярами
AVCaptureInputPort
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
output
СвойствоВыходной порт соединения. (только для чтения)
Объявление
Swift
var output: AVCaptureOutput! { get }
Objective C
@property(nonatomic, readonly) AVCaptureOutput *output
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
videoPreviewLayer
СвойствоУровень предварительного просмотра видео связался с соединением. (только для чтения)
Объявление
Swift
var videoPreviewLayer: AVCaptureVideoPreviewLayer! { get }
Objective C
@property(nonatomic, readonly) AVCaptureVideoPreviewLayer *videoPreviewLayer
Обсуждение
Это свойство является набором при инициализации использования соединения
initWithInputPort:videoPreviewLayer:
илиconnectionWithInputPort:videoPreviewLayer:
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
audioChannels
СвойствоМассив
AVCaptureAudioChannel
объекты. (только для чтения)Объявление
Swift
var audioChannels: [AnyObject]! { get }
Objective C
@property(nonatomic, readonly) NSArray *audioChannels
Обсуждение
Это свойство только применимо к соединениям, включающим аудио.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
videoOrientation
СвойствоОриентация видео.
Объявление
Swift
var videoOrientation: AVCaptureVideoOrientation
Objective C
@property(nonatomic) AVCaptureVideoOrientation videoOrientation
Обсуждение
Это свойство только применимо к соединениям, включающим видео.
Если значение
supportsVideoOrientation
YES
true
, можно установитьvideoOrientation
поворачивать видео буферы, используемые выводом соединения. УстановкаvideoOrientation
не обязательно приводит к физическому вращению видео буферов. Например, видеосоединение сAVCaptureMovieFileOutput
возразите ориентации дескрипторов с помощью матрицы дорожки Quicktime; использованиеAVCaptureStillImageOutput
объект, ориентация обрабатывается с помощью тегов Exif.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
supportsVideoOrientation
СвойствоБулево значение, указывающее ли поддержки соединения, изменяющие ориентацию видео. (только для чтения)
Объявление
Swift
var supportsVideoOrientation: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isVideoOrientationSupported) BOOL supportsVideoOrientation
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Минимальный временной интервал, между которым получатель должен вывести последовательные видеокадры.
Объявление
Objective C
@property(nonatomic) CMTime videoMinFrameDuration
Обсуждение
Значение этого свойства указывает минимальную продолжительность каждого видеокадра, выведенного соединением, помещая нижнюю границу в количество времени, которое должно разделить последовательные кадры. Значение эквивалентно обратной величине максимальной частоты кадров.
Значение
kCMTimeZero
илиkCMTimeInvalid
указывает неограниченную максимальную частоту кадров.Значение по умолчанию
kCMTimeInvalid
.Можно только установить это значение если
supportsVideoMinFrameDuration
YES
true
.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 7.0.
-
Булево значение, указывающее ли поддержки соединения, устанавливающие
videoMinFrameDuration
свойство. (только для чтения)Объявление
Objective C
@property(nonatomic, readonly, getter=isVideoMinFrameDurationSupported) BOOL supportsVideoMinFrameDuration
Обсуждение
Это свойство только применимо к соединениям, включающим видео.
Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 7.0.
-
Максимальный временной интервал, между которым получатель должен вывести последовательные видеокадры.
Объявление
Objective C
@property(nonatomic) CMTime videoMaxFrameDuration
Обсуждение
Значение этого свойства указывает максимальную продолжительность каждого видеокадра, выведенного соединением, помещая верхнюю границу в количество времени, которое должно разделить последовательные кадры. Значение эквивалентно обратной величине минимальной частоты кадров.
Значение
kCMTimeZero
илиkCMTimeInvalid
указывает неограниченную минимальную частоту кадров.Значение по умолчанию
kCMTimeInvalid
.Можно только установить это значение если
supportsVideoMaxFrameDuration
YES
true
.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 7.0.
-
Булево значение, указывающее ли поддержки соединения, устанавливающие
videoMaxFrameDuration
свойство. (только для чтения)Объявление
Objective C
@property(nonatomic, readonly, getter=isVideoMaxFrameDurationSupported) BOOL supportsVideoMaxFrameDuration
Обсуждение
Это свойство только применимо к соединениям, включающим видео.
Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 7.0.
-
videoScaleAndCropFactor
СвойствоТекущий видео масштаб и фактор обрезки в использовании получателем.
Объявление
Swift
var videoScaleAndCropFactor: CGFloat
Objective C
@property(nonatomic) CGFloat videoScaleAndCropFactor
Обсуждение
Это свойство только применимо к соединениям, включающим видео.
Можно установить это свойство в значение в диапазоне 1,0 к значению
videoMaxScaleAndCropFactor
. В факторе 1,0, изображение является своим первоначальным размером. В факторе, больше, чем 1,0, изображение масштабируется фактором и обрезается центром к его исходным размерностям.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
videoMaxScaleAndCropFactor
СвойствоМаксимальный видео масштаб и фактор обрезки соединением. (только для чтения)
Объявление
Swift
var videoMaxScaleAndCropFactor: CGFloat { get }
Objective C
@property(nonatomic, readonly) CGFloat videoMaxScaleAndCropFactor
Обсуждение
Значение указывает максимальное значение, которое можно использовать при установке
videoScaleAndCropFactor
свойство.Это свойство только применимо к соединениям, включающим видео.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 5.0 и позже.
См. также
-
automaticallyAdjustsVideoMirroring
СвойствоБулево значение, указывающее ли значение
videoMirrored
может измениться на основе конфигурации сеанса.Объявление
Swift
var automaticallyAdjustsVideoMirroring: Bool
Objective C
@property(nonatomic) BOOL automaticallyAdjustsVideoMirroring
Обсуждение
Для некоторых конфигураций сеанса видеоданные, текущие через соединение, будут зеркально отражены по умолчанию. Когда значение этого свойства
YES
true
, значениеvideoMirrored
может измениться в зависимости от конфигурации сеанса, например после переключения на различный ввод устройства захвата изображения.Значение по умолчанию
YES
true
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
См. также
-
supportsVideoMirroring
СвойствоБулево значение, указывающее, поддерживает ли соединение видео зеркальное отражение. (только для чтения)
Объявление
Swift
var supportsVideoMirroring: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isVideoMirroringSupported) BOOL supportsVideoMirroring
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
videoMirrored
СвойствоБулево значение, указывающее, должно ли видео, текущее через соединение, быть зеркально отражено о его вертикальной оси..
Объявление
Swift
var videoMirrored: Bool
Objective C
@property(nonatomic, getter=isVideoMirrored) BOOL videoMirrored
Обсуждение
Это свойство только применимо к соединениям, включающим видео.
если значение
supportsVideoMirroring
YES
true
, можно установитьvideoMirrored
кYES
true
зеркально отразить видео о его вертикальной оси и произвести эффект зеркального отображения.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Булево значение, указывающее, должна ли система разрешить видео стабилизацию, когда это доступно.
Объявление
Swift
var enablesVideoStabilizationWhenAvailable: Bool
Objective C
@property(nonatomic) BOOL enablesVideoStabilizationWhenAvailable
Обсуждение
Значение по умолчанию этого свойства
NO
false
. ЕслиsupportsVideoStabilization
свойство содержит значениеYES
true
, можно изменить значение этого свойства кYES
true
включить видео стабилизацию для соединения.Можно только включить видео стабилизацию для соединений, воздействующих на видео. Несмотря на это, не все исходные форматы и разрешения видео поддерживаются. Включение видео стабилизации может также ввести дополнительную задержку в конвейер видеосъемки. Для обнаружения, когда видео стабилизация будет использоваться используйте
videoStabilizationEnabled
свойство.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
Осуждаемый в iOS 8.0.
-
supportsVideoStabilization
СвойствоБулево значение, указывающее, поддерживает ли это соединение видео стабилизацию. (только для чтения)
Объявление
Swift
var supportsVideoStabilization: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isVideoStabilizationSupported) BOOL supportsVideoStabilization
Обсуждение
Видео стабилизация поддерживается только для типов видеосоединения. И даже для видеосоединений, это не могло бы быть доступно во всех разрешениях.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Булево значение, указывающее, активна ли видео стабилизация для соединения. (только для чтения)
Объявление
Swift
var videoStabilizationEnabled: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isVideoStabilizationEnabled) BOOL videoStabilizationEnabled
Обсуждение
Если видео стабилизация поддерживается для текущего типа соединения, и Вы включаете его с помощью
enablesVideoStabilizationWhenAvailable
когда стабилизация активно используется для соединения, свойство, сообщает это свойство.Можно контролировать это свойство с помощью значения ключа, наблюдающего, хотите ли Вы обнаружить, когда видео стабилизация применяется к видеоданным.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
Осуждаемый в iOS 8.0.
-
Константы, указывающие видео ориентацию.
Объявление
Swift
enum AVCaptureVideoOrientation : Int { case Portrait case PortraitUpsideDown case LandscapeRight case LandscapeLeft }
Objective C
enum { AVCaptureVideoOrientationPortrait = 1, AVCaptureVideoOrientationPortraitUpsideDown = 2, AVCaptureVideoOrientationLandscapeRight = 3, AVCaptureVideoOrientationLandscapeLeft = 4, }; typedef NSInteger AVCaptureVideoOrientation;
Константы
-
Portrait
AVCaptureVideoOrientationPortrait
Указывает, что видео должно быть ориентировано вертикально, вершина наверху.
Доступный в iOS 4.0 и позже.
-
PortraitUpsideDown
AVCaptureVideoOrientationPortraitUpsideDown
Указывает, что видео должно быть ориентировано вертикально, вершина в нижней части.
Доступный в iOS 4.0 и позже.
-
LandscapeRight
AVCaptureVideoOrientationLandscapeRight
Указывает, что видео должно быть ориентировано горизонтально, вершина слева.
Доступный в iOS 4.0 и позже.
-
LandscapeLeft
AVCaptureVideoOrientationLandscapeLeft
Указывает, что видео должно быть ориентировано горизонтально, вершина справа.
Доступный в iOS 4.0 и позже.
Обсуждение
Вы используете эти константы в сочетании с
AVCaptureVideoPreviewLayer
объект; посмотритеvideoOrientation
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
-
Константы, указывающие видео полевой режим, для использования с
videoFieldMode
свойство.Объявление
Objective C
enum { AVVideoFieldModeBoth = 0, AVVideoFieldModeTopOnly = 1, AVVideoFieldModeBottomOnly = 2, AVVideoFieldModeDeinterlace = 3, }; typedef NSInteger AVVideoFieldMode;
Константы
-
AVVideoFieldModeBoth
Указывает, что нужно пройти через оба верхних и нижних видео поля в чересстрочном содержании.
Доступный в iOS 6.0 через iOS 6.1.
-
AVVideoFieldModeTopOnly
Указывает, что только нужно пройти через главное видео поле в чересстрочном содержании.
Доступный в iOS 6.0 через iOS 6.1.
-
AVVideoFieldModeBottomOnly
Указывает, что нужно пройти через нижнее поле видео только в чересстрочном содержании.
Доступный в iOS 6.0 через iOS 6.1.
-
AVVideoFieldModeDeinterlace
Указывает, что верхние и нижние видео поля в чересстрочном содержании должны быть deinterlaced.
Доступный в iOS 6.0 через iOS 6.1.
Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 6.0 и позже.
-