AVCaptureFileOutput
AVCaptureFileOutput
абстрактный подкласс AVCaptureOutput
это описывает выходное место назначения файла к AVCaptureSession
. Например, Вы используете экземпляр его конкретного подкласса, AVCaptureMovieFileOutput
, сохранить вывод получения к файлу фильма в формате QuickTime. Конкретные подклассы AVCaptureFileOutput
AVCaptureMovieFileOutput
, который записывает носители к файлу фильма в формате QuickTime, и AVCaptureAudioFileOutput
, который пишет аудио носители во множество форматов аудиофайла.
Этот абстрактный суперкласс определяет интерфейс для выводов что выборки носителей записи к файлам. Выводы файла могут начать записывать к новому использованию файла startRecordingToOutputFileURL:recordingDelegate:
метод.
В OS X на последовательных вызовах этого метода выходной файл может быть изменен динамично, не теряя выборки носителей. Вывод файла может прекратить записывать использование stopRecording
метод. Поскольку файлы зарегистрированы в фоновом режиме, необходимо указать делегата к каждому новому файлу, который будет уведомлен, когда закончены зарегистрированные файлы.
В OS X можно также установить делегата на файле, выводит себя, который может использоваться для управления записью вдоль точных демонстрационных границ носителей с помощью captureOutput:didOutputSampleBuffer:fromConnection:
: метод.
Наследование
-
NSObject
-
AVCaptureOutput
-
AVCaptureFileOutput
-
AVCaptureAudioFileOutput
-
AVCaptureMovieFileOutput
-
NSObject
-
AVCaptureOutput
-
AVCaptureFileOutput
-
AVCaptureAudioFileOutput
-
AVCaptureMovieFileOutput
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в OS X v10.7 и позже.
-
startRecordingToOutputFileURL (_: recordingDelegate:) - startRecordingToOutputFileURL:recordingDelegate:
Начинает записывать к данному URL.
Объявление
Swift
func startRecordingToOutputFileURL(_
outputFileURL
: NSURL!, recordingDelegatedelegate
: AVCaptureFileOutputRecordingDelegate!)Objective C
- (void)startRecordingToOutputFileURL:(NSURL *)
outputFileURL
recordingDelegate:(id<AVCaptureFileOutputRecordingDelegate>)delegate
Параметры
outputFileURL
NSURL
объект, содержащий URL выходного файла.Этот метод бросает
NSInvalidArgumentException
если URL не является правильным файлом URL.delegate
Объект служить делегатом к сеансу записи.
Обсуждение
Метод устанавливает файл URL, в который получатель в настоящее время пишет выходные носители. Если файл в данном URL уже будет существовать, когда получение запустится, то записывание к новому файлу перестанет работать.
В OS X Вы не должны вызывать
stopRecording
прежде, чем вызвать этот метод, в то время как другая запись происходит. Если этот метод будет вызван, в то время как существующий выходной файл был уже зарегистрирован, то никакие выборки носителей не будут отброшены между старым файлом и новым файлом.В iOS этот кадр не поддерживается точное переключение файла. Необходимо вызвать
stopRecording
прежде, чем вызвать этот метод снова для предотвращения любых ошибок.Когда запись останавливается любой путем вызова
stopRecording
, путем изменения файлов с помощью этого метода, или из-за ошибки, остающиеся данные, которые должны быть включены к файлу, будут записаны в фоновом режиме. Поэтому необходимо указать делегата, который будет уведомлен, когда все данные были записаны в файл с помощьюcaptureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:
метод. Делегат записи может также дополнительно реализовать методы, сообщающие ему, когда данные начинают быть записанными, когда запись приостанавливается и возобновляется, и когда запись собирается быть законченной.В OS X, если этот метод вызывают в
captureOutput:didOutputSampleBuffer:fromConnection:
метод делегата, первые выборки, записанные в новый файл, как гарантируют, будет, содержавшиеся в демонстрационном буфере передали тому методу.Примечание:
AVCaptureAudioFileOutput
не поддерживаетstartRecordingToOutputFileURL:recordingDelegate:
. ИспользоватьstartRecordingToOutputFileURL:outputFileType:recordingDelegate:
вместо этого.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
Запись пауз к файлу текущей производительности.
Объявление
Swift
func pauseRecording()
Objective C
- (void)pauseRecording
Обсуждение
Этот метод заставляет получатель прекращать писать полученные выборки в файл текущей производительности, возвращенный
outputFileURL
, но оставляет файл открытым так, чтобы выборки могли быть записаны в него в будущем, еслиresumeRecording
вызывается. Это позволяет Вам записывать многократные участки среды, которые не непрерывны своевременно к единственному файлу.В OS X, если этот метод вызывают в
captureOutput:didOutputSampleBuffer:fromConnection:
метод делегата, последние выборки, записанные в текущий файл, как гарантируют, будет теми, которые были сразу выведены, прежде чем те в демонстрационном буфере передали тому методу.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
recordingPaused recordingPaused
СвойствоУказывает, приостанавливается ли запись к файлу текущей производительности.
Объявление
Swift
var recordingPaused: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isRecordingPaused) BOOL recordingPaused
Обсуждение
Это свойство указывает запись к файлу, возвращенному
outputFileURL
был ранее приостановлен с помощьюpauseRecording
метод. Когда запись приостанавливается, полученные выборки не записаны в выходной файл, но новые выборки могут быть записаны в тот же файл в будущем путем вызоваresumeRecording
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
Запись резюме к файлу текущей производительности после того, как это было ранее приостановлено с помощью
pauseRecording
.Объявление
Swift
func resumeRecording()
Objective C
- (void)resumeRecording
Обсуждение
Этот метод заставляет получатель продолжать писать полученные выборки в файл текущей производительности, возвращенный
outputFileURL
, после того, как запись была ранее приостановлена с помощьюpauseRecording
. Это позволяет Вам записывать многократные участки среды, которые не непрерывны своевременно к единственному файлу.В OS X, если этот метод вызывают в
captureOutput:didOutputSampleBuffer:fromConnection:
метод делегата, первые выборки, записанные в текущий файл, как гарантируют, будет, содержавшиеся в демонстрационном буфере передали тому методу.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
Говорит получателю прекращать записывать к текущему файлу.
Объявление
Swift
func stopRecording()
Objective C
- (void)stopRecording
Обсуждение
Можно вызвать этот метод, когда они хотят прекратить записывать новые выборки к текущему файлу и не хотят продолжать записывать к другому файлу. Если Вы хотите переключиться от одного файла до другого, Вы не должны вызывать этот метод. Вместо этого необходимо просто вызвать
startRecordingToOutputFileURL:recordingDelegate:
с новым файлом URL.Когда запись останавливается любой путем вызова этого метода путем изменения использования файлов
startRecordingToOutputFileURL:recordingDelegate:
, или из-за ошибки, остающиеся данные, которые должны быть включены к файлу, будут записаны в фоновом режиме. Поэтому перед использованием файла, необходимо ожидать пока делегат, указанный вstartRecordingToOutputFileURL:recordingDelegate:
когда все данные были записаны в файл с помощью, уведомляетсяcaptureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:
метод.В OS X, если этот метод вызывают в
captureOutput:didOutputSampleBuffer:fromConnection:
метод делегата, последние выборки, записанные в текущий файл, как гарантируют, будет теми, которые были сразу выведены, прежде чем те в демонстрационном буфере передали тому методу.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
См. также
-
Указывает, происходит ли запись.
Объявление
Swift
var recording: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isRecording) BOOL recording
Обсуждение
Значение этого свойства
YES
true
когда вывод файла в настоящее время имеет файл, в который он пишет новые выборки,NO
false
иначе.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
maxRecordedDuration maxRecordedDuration
СвойствоСамая долгая продолжительность допускала запись.
Объявление
Swift
var maxRecordedDuration: CMTime
Objective C
@property(nonatomic) CMTime maxRecordedDuration
Обсуждение
Это свойство указывает жесткий предел продолжительности зарегистрированных файлов. Когда предел достигнут и, запись останавливается
captureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:
метод делегата вызывается с надлежащей ошибкой. Значение по умолчанию этого свойстваkCMTimeInvalid
, который не указывает предела.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
maxRecordedFileSize maxRecordedFileSize
СвойствоМаксимальный размер, в байтах, данных, которые должны быть зарегистрированы получателем.
Объявление
Swift
var maxRecordedFileSize: Int64
Objective C
@property(nonatomic) int64_t maxRecordedFileSize
Обсуждение
Это свойство указывает жесткий предел размера данных зарегистрированных файлов. Когда предел достигнут и, запись останавливается
captureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:
метод делегата вызывается с надлежащей ошибкой. Значение по умолчанию этого свойства0
, который не указывает предела.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
Минимальная сумма свободного пространства, в байтах, требуемых для записи продолжать данный объем.
Объявление
Swift
var minFreeDiskSpaceLimit: Int64
Objective C
@property(nonatomic) int64_t minFreeDiskSpaceLimit
Обсуждение
Это свойство указывает трудный нижний предел на сумме свободного пространства, которое должно остаться на целевом объеме для записи продолжаться. Когда предел достигнут и, запись останавливается
captureOutput:didFinishRecordingToOutputFileAtURL:fromConnections:error:
метод делегата вызывается с надлежащей ошибкой.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
outputFileURL outputFileURL
Свойство -
recordedDuration recordedDuration
СвойствоУказывает продолжительность носителей, зарегистрированных к файлу текущей производительности. (только для чтения)
Объявление
Swift
var recordedDuration: CMTime { get }
Objective C
@property(nonatomic, readonly) CMTime recordedDuration
Обсуждение
Если запись происходит, это свойство возвращает общее время, зарегистрированное до сих пор.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
recordedFileSize recordedFileSize
СвойствоУказывает размер, в байтах, данных, зарегистрированных к файлу текущей производительности. (только для чтения)
Объявление
Swift
var recordedFileSize: Int64 { get }
Objective C
@property(nonatomic, readonly) int64_t recordedFileSize
Обсуждение
Если запись происходит, это свойство возвращает размер в байтах данных, зарегистрированных до сих пор.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.
-
Объект делегата для файла получения выводится.
Объявление
Swift
unowned(unsafe) var delegate: AVCaptureFileOutputDelegate!
Objective C
@property(nonatomic, assign) id< AVCaptureFileOutputDelegate > delegate
Обсуждение
Делегат является объектом, соответствующим
AVCaptureFileOutputDelegate
протокол, который будет в состоянии контролировать и управлять записью вдоль точных демонстрационных границ.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в OS X v10.7 и позже.