AVCaptureSession
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 4.0 и позже.
Вы используете AVCaptureSession возразите для координирования потока данных от устройств ввода данных AV до выводов.
Для выполнения или оффлайнового получения в реальном времени Вы инстанцируете AVCaptureSession возразите и добавьте надлежащие вводы (такой как AVCaptureDeviceInput), и выводы (такой как AVCaptureMovieFileOutput). Следующий фрагмент кода иллюстрирует, как сконфигурировать устройство захвата изображения для записи аудио:
AVCaptureSession *captureSession = [[AVCaptureSession alloc] init];AVCaptureDevice *audioCaptureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];NSError *error = nil;AVCaptureDeviceInput *audioInput = [AVCaptureDeviceInput deviceInputWithDevice:audioCaptureDevice error:&error];if (audioInput) {[captureSession addInput:audioInput];}else {// Handle the failure.}
Вы вызываете startRunning запустить поток данных от вводов до выводов и вызвать stopRunning остановить поток.
Вы используете sessionPreset свойство для настройки уровня качества, скорости передачи или других настроек для вывода. Наиболее распространенные конфигурации получения доступны посредством предварительных установок сеанса; однако, некоторые специализированные опции (такие как высокая частота кадров) требуют непосредственно установки формата получения на AVCaptureDevice экземпляр.
-
inputsСвойствоВводы сеанса получения. (только для чтения)
Объявление
Swift
var inputs: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *inputsОбсуждение
Массив содержит экземпляры подклассов
AVCaptureInput.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Возвращает булево значение, указывающее, может ли данный ввод быть добавлен к сеансу.
Объявление
Swift
func canAddInput(_input: AVCaptureInput!) -> BoolObjective C
- (BOOL)canAddInput:(AVCaptureInput *)inputПараметры
inputВвод, который Вы хотите добавить к сеансу.
Возвращаемое значение
YEStrueеслиinputможет быть добавлен к сеансу, иначеNOfalse.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Добавляет данный ввод к сеансу.
Объявление
Swift
func addInput(_input: AVCaptureInput!)Objective C
- (void)addInput:(AVCaptureInput *)inputПараметры
inputВвод для добавления к сеансу.
Обсуждение
Можно только добавить ввод к сеансу с помощью этого метода если
canAddInput:возвратыYEStrue.В то время как сеанс работает, можно вызвать этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Удаляет данный ввод.
Объявление
Swift
func removeInput(_input: AVCaptureInput!)Objective C
- (void)removeInput:(AVCaptureInput *)inputПараметры
inputВвод для удаления из получателя.
Обсуждение
В то время как сеанс работает, можно вызвать этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
outputsСвойствоВыводы сеанса получения. (только для чтения)
Объявление
Swift
var outputs: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *outputsОбсуждение
Массив содержит экземпляры подклассов
AVCaptureOutput.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Возвращает булево значение, указывающее, может ли данный вывод быть добавлен к сеансу.
Объявление
Swift
func canAddOutput(_output: AVCaptureOutput!) -> BoolObjective C
- (BOOL)canAddOutput:(AVCaptureOutput *)outputПараметры
outputВывод, который Вы хотите добавить к сеансу.
Возвращаемое значение
YEStrueеслиoutputможет быть добавлен к сеансу, иначеNOfalse.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Добавляет данный вывод к сеансу.
Объявление
Swift
func addOutput(_output: AVCaptureOutput!)Objective C
- (void)addOutput:(AVCaptureOutput *)outputПараметры
outputВывод для добавления к сеансу.
Обсуждение
Можно только добавить вывод к сеансу с помощью этого метода если
canAddOutput:возвратыYEStrue.В то время как сеанс работает, можно вызвать этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Удаляет данный вывод.
Объявление
Swift
func removeOutput(_output: AVCaptureOutput!)Objective C
- (void)removeOutput:(AVCaptureOutput *)outputПараметры
outputВывод для удаления из получателя.
Обсуждение
В то время как сеанс работает, можно вызвать этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Говорит получателю начинать работать.
Объявление
Swift
func startRunning()Objective C
- (void)startRunningОбсуждение
Этот метод используется для запуска потока данных от вводов до выводов, подключенных с
AVCaptureSessionэкземпляр, который является получателем. Этот метод синхронен и блоки, пока получатель или полностью не начал работать или не удался начать работать. Если ошибка происходит во время этого процесса, и получателю не удается начать работать, Вы получаетеAVCaptureSessionRuntimeErrorNotification.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Говорит получателю прекращать работать.
Объявление
Swift
func stopRunning()Objective C
- (void)stopRunningОбсуждение
Этот метод используется для остановки потока данных от вводов до выводов, подключенных с
AVCaptureSessionэкземпляр, который является получателем. Этот метод синхронен и блоки, пока получатель полностью не прекратил работать.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
runningСвойствоУказывает, работает ли получатель. (только для чтения)
Объявление
Swift
var running: Bool { get }Objective C
@property(nonatomic, readonly, getter=isRunning) BOOL runningОбсуждение
Можно наблюдать значение этого свойства с помощью наблюдения значения ключа.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
interruptedСвойствоУказывает, был ли прерван получатель. (только для чтения)
Объявление
Swift
var interrupted: Bool { get }Objective C
@property(nonatomic, readonly, getter=isInterrupted) BOOL interruptedОбсуждение
Можно наблюдать значение этого свойства с помощью наблюдения значения ключа.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Указывает запуск ряда изменений конфигурации, которые будут сделаны атомарно.
Объявление
Swift
func beginConfiguration()Objective C
- (void)beginConfigurationОбсуждение
Вы используете
beginConfigurationиcommitConfigurationобрабатывать многократные операции конфигурации в пакетном режиме на рабочем сеансе в атомарное обновление.После вызова
beginConfiguration, можно, например, добавить или удалить выводы, изменитьсяsessionPreset, или сконфигурируйте свойства ввода или вывода получения частного лица. Никакие изменения фактически не внесены, пока Вы не вызываетеcommitConfiguration, в котором времени они применяются вместе.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
См. также
-
Фиксации ряд изменений конфигурации.
Объявление
Swift
func commitConfiguration()Objective C
- (void)commitConfigurationОбсуждение
Для обсуждения посмотрите
beginConfiguration.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
sessionPresetСвойствоПостоянное значение, указывающее уровень качества или скорость передачи вывода.
Объявление
Swift
var sessionPreset: String!Objective C
@property(nonatomic, copy) NSString *sessionPresetОбсуждение
Вы используете это свойство для настройки уровня качества или скорости передачи вывода. Для возможных значений
sessionPreset, посмотрите Предварительные установки Видеовхода. Значение по умолчаниюAVCaptureSessionPresetHigh.В то время как сеанс работает, можно установить это значение.
Можно только установить предварительную установку если
canSetSessionPreset:возвратыYEStrueдля той предварительной установки.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Возвращает булево значение, указывающее, может ли получатель использовать данную предварительную установку.
Объявление
Swift
func canSetSessionPreset(_preset: String!) -> BoolObjective C
- (BOOL)canSetSessionPreset:(NSString *)presetПараметры
presetПредварительная установка требуется установить для получателя. Для возможных значений посмотрите Предварительные установки Видеовхода.
Возвращаемое значение
YEStrueесли получатель может использоватьpreset, иначеNOfalse.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Добавляет данное соединение получения с сеансом.
Объявление
Swift
func addConnection(_connection: AVCaptureConnection!)Objective C
- (void)addConnection:(AVCaptureConnection *)connectionПараметры
connectionСоединение получения для добавления к сеансу.
Обсуждение
Можно только добавить
AVCaptureConnectionэкземпляр к сеансу с помощью этого метода, еслиcanAddConnection:возвратыYEStrue.При использовании
addInput:илиaddOutput:, соединения формируются автоматически между всеми совместимыми вводами и выводами. Вручную добавление соединений только необходимо при добавлении ввода или вывода без соединений.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Возвращает булево значение, указывающее, может ли данное соединение быть добавлено к получателю.
Объявление
Swift
func canAddConnection(_connection: AVCaptureConnection!) -> BoolObjective C
- (BOOL)canAddConnection:(AVCaptureConnection *)connectionПараметры
connectionAVCaptureConnectionэкземпляр.Возвращаемое значение
YEStrueеслиconnectionможет быть добавлен к получателю, иначеNOfalse.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Добавляет ввод получения к сеансу, не формируя соединений.
Объявление
Swift
func addInputWithNoConnections(_input: AVCaptureInput!)Objective C
- (void)addInputWithNoConnections:(AVCaptureInput *)inputПараметры
inputВвод получения для добавления к сеансу.
Обсуждение
В то время как сеанс работает, можно вызвать этот метод.
Обычно необходимо использовать
addInput:добавить ввод к сеансу. Вы используете этот метод при необходимости в тонкозернистом управлении, по которому вводы подключены с который выводы.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Добавляет вывод получения к сеансу, не формируя соединений.
Объявление
Swift
func addOutputWithNoConnections(_output: AVCaptureOutput!)Objective C
- (void)addOutputWithNoConnections:(AVCaptureOutput *)outputПараметры
outputВывод получения для добавления к сеансу.
Обсуждение
В то время как сеанс работает, можно вызвать этот метод.
Обычно необходимо использовать
addOutput:добавить вывод к сеансу. Вы используете этот метод при необходимости в тонкозернистом управлении, по которому вводы подключены с который выводы.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Удаляет соединение получения из сеанса.
Объявление
Swift
func removeConnection(_connection: AVCaptureConnection!)Objective C
- (void)removeConnection:(AVCaptureConnection *)connectionПараметры
connectionСоединение получения для удаления из сеанса.
Обсуждение
В то время как сеанс работает, можно вызвать этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
usesApplicationAudioSessionСвойствоУказывает, использует ли сеанс получения совместно используемый аудио сеанс приложения.
Объявление
Swift
var usesApplicationAudioSession: BoolObjective C
@property(nonatomic) BOOL usesApplicationAudioSessionОбсуждение
Если значение этого свойства
NOfalse, сеанс получения использует частноеAVAudioSessionэкземпляр для аудиозаписи, которая может вызвать прерывание, если Ваше приложение использует свой собственный аудио сеанс для воспроизведения.Для приложений, соединенных против iOS 7.0 или более новых, это свойство значения по умолчанию к
YEStrue, разрешение одновременного воспроизведения и запись.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Булево значение, указывающее, изменяет ли сеанс получения автоматически настройки в совместно используемом аудио сеансе приложения.
Объявление
Swift
var automaticallyConfiguresApplicationAudioSession: BoolObjective C
@property(nonatomic) BOOL automaticallyConfiguresApplicationAudioSessionОбсуждение
Это свойство только вступает в силу если значение
usesApplicationAudioSessionсвойствоYEStrue.Значение этого свойства значения по умолчанию к
YEStrue, то, чтобы заставлять сеанс получения автоматически сконфигурировать приложение совместно использовалоAVAudioSessionэкземпляр для оптимальной записи. Например, если сеанс получения будет использовать камеру устройства, расположенную «против движения», то микрофон аудио сеанса и диаграмма направленности будут установлены для оптимальной записи звука от того направления. Обратите внимание на то, что исходное состояние аудио сеанса не восстанавливается после того, как получение заканчивается.Если Вы устанавливаете значение этого свойства в
NOfalse, Ваше приложение ответственно за выбор надлежащих аудио настроек сеанса. Если настройки аудио сеанса являются несовместимыми с сеансом получения, запись может перестать работать.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
masterClockСвойствоОбъект часов используется для выходной синхронизации. (только для чтения)
Объявление
Swift
var masterClock: CMClock! { get }Objective C
@property(nonatomic, readonly) CMClockRef masterClockОбсуждение
Возвращенный
CMClockобъект только для чтения и обеспечивает timebase для демонстрационных буферов в выводе получения. Это может использоваться в сочетании с часами отAVCaptureInputPortобъект синхронизировать метки времени от многократных устройств.Можно наблюдать значение этого свойства с помощью наблюдения значения ключа.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Константы для указания ориентации устройства во время видеосъемки.
Объявление
Swift
enum AVCaptureVideoOrientation : Int { case Portrait case PortraitUpsideDown case LandscapeRight case LandscapeLeft }Objective C
enum { AVCaptureVideoOrientationPortrait = 1, AVCaptureVideoOrientationPortraitUpsideDown, AVCaptureVideoOrientationLandscapeLeft, AVCaptureVideoOrientationLandscapeRight, }; typedef NSInteger AVCaptureVideoOrientation;Константы
-
PortraitAVCaptureVideoOrientationPortraitУказывает, что видео должно быть ориентировано вертикально с кнопкой «Домой» устройства на нижней части.
Доступный в iOS 4.0 и позже.
-
PortraitUpsideDownAVCaptureVideoOrientationPortraitUpsideDownУказывает, что видео должно быть ориентировано вертикально с кнопкой «Домой» устройства на вершине.
Доступный в iOS 4.0 и позже.
-
LandscapeLeftAVCaptureVideoOrientationLandscapeLeftУказывает, что видео должно быть ориентировано горизонтально с кнопкой «Домой» устройства справа.
Доступный в iOS 4.0 и позже.
-
LandscapeRightAVCaptureVideoOrientationLandscapeRightУказывает, что видео должно быть ориентировано горизонтально с кнопкой «Домой» устройства слева.
Доступный в iOS 4.0 и позже.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
-
Ключ для получения информации из уведомления от сеанса получения.
Объявление
Swift
let AVCaptureSessionErrorKey: StringObjective C
NSString *const AVCaptureSessionErrorKey;Константы
-
AVCaptureSessionErrorKeyКлюч для получения ошибки возражает из пользовательского информационного словаря
AVCaptureSessionRuntimeErrorNotification.Доступный в iOS 4.0 и позже.
-
-
Константы для определения получения, устанавливающего предварительные установки с помощью
sessionPresetсвойство.Объявление
Swift
let AVCaptureSessionPresetPhoto: String let AVCaptureSessionPresetHigh: String let AVCaptureSessionPresetMedium: String let AVCaptureSessionPresetLow: String let AVCaptureSessionPreset352x288: String let AVCaptureSessionPreset640x480: String let AVCaptureSessionPreset1280x720: String let AVCaptureSessionPreset1920x1080: String let AVCaptureSessionPresetiFrame960x540: String let AVCaptureSessionPresetiFrame1280x720: String let AVCaptureSessionPresetInputPriority: StringObjective C
NSString *const AVCaptureSessionPresetPhoto; NSString *const AVCaptureSessionPresetHigh; NSString *const AVCaptureSessionPresetMedium; NSString *const AVCaptureSessionPresetLow; NSString *const AVCaptureSessionPreset352x288; NSString *const AVCaptureSessionPreset640x480; NSString *const AVCaptureSessionPreset1280x720; NSString *const AVCaptureSessionPreset1920x1080; NSString *const AVCaptureSessionPresetiFrame960x540; NSString *const AVCaptureSessionPresetiFrame1280x720; NSString *const AVCaptureSessionPresetInputPriority;Константы
-
AVCaptureSessionPresetPhotoУказывает настройки получения, подходящие для вывода качества фотографии высокого разрешения.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPresetHighУказывает настройки получения, подходящие для высококачественного видеовыхода и аудиовыхода.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPresetMediumУказывает настройки получения, подходящие для выходного видео и скоростей передачи звука, подходящих для совместного использования по WiFi.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPresetLowУказывает настройки получения, подходящие для выходного видео и скоростей передачи звука, подходящих для совместного использования по 3G.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPreset352x288Указывает настройки получения, подходящие по качеству CIF (352x288 пикселей) видеовыход.
Доступный в iOS 5.0 и позже.
-
AVCaptureSessionPreset640x480Указывает настройки получения, подходящие по качеству VGA (640x480 пикселей) видеовыход.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPreset1280x720Указывает настройки получения, подходящие по качеству на 720 пунктов (1280x720 пикселей) видеовыход.
Доступный в iOS 4.0 и позже.
-
AVCaptureSessionPreset1920x1080Указывает настройки получения, подходящие по качеству на 1 080 пунктов (1920x1080 пикселей) видеовыход.
Доступный в iOS 5.0 и позже.
-
AVCaptureSessionPresetiFrame960x540Указывает настройки получения для достижения 960x540 качественное iFrame H.264 видео приблизительно в 30 Мбит/с с аудио AAC.
Фильмы в формате QuickTime, полученные в формате iFrame, оптимальны для редактирования приложений.
Доступный в iOS 5.0 и позже.
-
AVCaptureSessionPresetiFrame1280x720Указывает настройки получения для достижения 1280x720 качественное iFrame H.264 видео приблизительно в 40 Мбит/с с аудио AAC.
Фильмы в формате QuickTime, полученные в формате iFrame, оптимальны для редактирования приложений.
Доступный в iOS 5.0 и позже.
-
AVCaptureSessionPresetInputPriorityУказывает, что сеанс получения не управляет настройками аудиовыхода и видеовыхода.
Для включения настроек получения, не поддерживаемых любыми предварительными установками сеанса (такими как высокая частота кадров), измените значение
activeFormatсвойство на надлежащем устройстве захвата изображения. При изменении формата устройства предварительная установка сеанса автоматически изменяется на это значение, указывая чтоAVCaptureSessionобъект оставил ответственность за конфигурирование ее вводов и выводов. (Вместо этого активный формат устройства захвата изображения диктует уровень качества обслуживания, предоставленный при выводах.) Для возврата к автоматической конфигурации используйте сеансsessionPresetсвойство для выбора другой предварительной установки.Доступный в iOS 7.0 и позже.
-
-
Отправленный, если ошибка произошла во время сеанса получения.
Вы получаете базовую ошибку из пользовательского информационного словаря уведомления с помощью ключа
AVCaptureSessionErrorKey.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Отправленный, когда запускается сеанс получения.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Отправленный, когда останавливается сеанс получения.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Отправленный, если прерван сеанс получения.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
-
Отправленный, если заканчивается прерывание к сеансу получения.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 4.0 и позже.
