AVAudioRecorder
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 3.0 и позже.
Экземпляр AVAudioRecorder
класс, названный магнитофоном, обеспечивает возможность аудиозаписи в Вашем приложении. Используя магнитофон Вы можете:
Запись, пока пользователь не останавливает запись
Запись на указанное время
Пауза и резюме запись
Получите входные данные уровня звука, которые можно использовать для обеспечения измерения уровня
В iOS зарегистрированное аудио прибывает из устройства, подключенного пользователем — встроенный микрофон или микрофон гарнитуры, например. В OS X аудио прибывает из устройства аудиовхода системы по умолчанию, как установлено пользователем в Установках системы.
Можно реализовать объект делегата для магнитофона для ответа на прерывания звука и ошибки декодирования аудио, и к завершению записи.
Для конфигурирования записи, включая опции, такие как битовая глубина, скорость передачи и качество преобразования частоты дискретизации, конфигурируют магнитофон settings
словарь. Используйте ключи настроек, описанные в Константах Параметров звука Основы AV.
Для конфигурирования надлежащего аудио сеанса для записи обратитесь к Ссылке на протокол Ссылки класса и AVAudioSessionDelegate AVAudioSession.
AVAudioRecorder
класс предназначается, чтобы позволить Вам делать аудиозаписи с очень небольшим программированием наверху. Другие классы, которые могут использоваться для записи аудио в iOS и OS X, включают AVCaptureAudioDataOutput
и службы Audio Queue описаны в Руководстве по программированию Audio Queue Services.
В OS X можно также использовать AVCaptureAudioFileOutput
класс для записи аудио.
-
Инициализирует и возвращает магнитофон.
Объявление
Swift
init!(URL
url
: NSURL!, settingssettings
: [NSObject : AnyObject]!, erroroutError
: NSErrorPointer)Objective C
- (instancetype)initWithURL:(NSURL *)
url
settings:(NSDictionary *)settings
error:(NSError **)outError
Параметры
url
Местоположение файловой системы для записи к. Тип файла для записи к выведен из расширения файла, включенного в значение этого параметра.
settings
Настройки для сеанса записи. Для получения информации о настройках, доступных для магнитофона, см. Константы Параметров звука Основы AV.
outError
Возвраты, ссылкой, описание ошибки, если происходит ошибка. Передача
nil
проигнорировать ошибку.Возвращаемое значение
На успехе, инициализированном
AVAudioRecorder
объект. Еслиnil
,outError
параметр содержит NSError описание отказа.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Создает аудиофайл и подготавливает систему к записи.
Объявление
Swift
func prepareToRecord() -> Bool
Objective C
- (BOOL)prepareToRecord
Возвращаемое значение
YES
true
в случае успеха, иначеNO
false
.Обсуждение
Создает аудиофайл в расположении, указанном
url
параметр вinitWithURL:settings:error:
метод. Если файл уже существует в том расположении, этот метод перезаписывает его.Когда Вы вызываете, подготовка, вызванная этим методом, имеет место автоматически
record
. ИспользоватьprepareToRecord
когда Вы хотите записать для запуска как можно быстрее по вызовуrecord
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Запускает или продолжает записывать.
Объявление
Swift
func record() -> Bool
Objective C
- (BOOL)record
Возвращаемое значение
YES
true
в случае успеха, иначеNO
false
.Обсуждение
Вызов этого метода неявно вызывает
prepareToRecord
, который создает (или стирается), аудиофайл, и подготавливает систему к записи.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Начинает записывать в определенное время.
Объявление
Swift
func recordAtTime(_
time
: NSTimeInterval) -> BoolObjective C
- (BOOL)recordAtTime:(NSTimeInterval)
time
Параметры
time
Возвращаемое значение
YES
true
если запись запускается успешно, иначеNO
false
.Обсуждение
Вызов этого метода неявно вызывает
prepareToRecord
, который создает (или стирается), аудиофайл, и подготавливает систему к записи. Можно использовать этот метод для создания синхронизируемых аудиозаписей. Этот метод может также использоваться для точно периодических записей или записей, происходящих с точными смещениями друг относительно друга.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Записи на указанное время времени.
Объявление
Swift
func recordForDuration(_
duration
: NSTimeInterval) -> BoolObjective C
- (BOOL)recordForDuration:(NSTimeInterval)
duration
Параметры
duration
Максимальная продолжительность, в секундах, для записи.
Возвращаемое значение
YES
true
в случае успеха, иначеNO
false
.Обсуждение
Когда продолжительность зарегистрированного аудио достигает значения в, устройство записи останавливается
duration
параметр.Вызов этого метода неявно вызывает
prepareToRecord
, который создает (или стирается), аудиофайл, и подготавливает систему к записи.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Начинает записывать в требуемое время на указанное время времени.
Объявление
Swift
func recordAtTime(_
time
: NSTimeInterval, forDurationduration
: NSTimeInterval) -> BoolObjective C
- (BOOL)recordAtTime:(NSTimeInterval)
time
forDuration:(NSTimeInterval)duration
Параметры
time
Число секунд для задержки записи, относительно
deviceCurrentTime
свойство.duration
Максимальная продолжительность, в секундах, для записи.
Возвращаемое значение
YES
true
если запись была успешна, иначеNO
false
.Обсуждение
Вызов этого метода неявно вызывает
prepareToRecord
, который создает (или стирается), аудиофайл, и подготавливает систему к записи. Можно использовать этот метод для создания синхронизируемых аудиозаписей определенной длины. Когда продолжительность зарегистрированного аудио достигнет значения в, устройство записи остановитсяduration
параметр.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Приостанавливает запись.
Объявление
Swift
func pause()
Objective C
- (void)pause
Обсуждение
Вызовите
record
метод, чтобы продолжить записывать.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Запись остановок и завершения аудиофайл.
Объявление
Swift
func stop()
Objective C
- (void)stop
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
delegate
СвойствоОбъект делегата для магнитофона.
Объявление
Swift
unowned(unsafe) var delegate: AVAudioRecorderDelegate!
Objective C
@property(assign) id< AVAudioRecorderDelegate > delegate
Обсуждение
Для описания делегата магнитофона посмотрите Ссылку на протокол AVAudioRecorderDelegate.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Удаляет зарегистрированный аудиофайл.
Объявление
Swift
func deleteRecording() -> Bool
Objective C
- (BOOL)deleteRecording
Возвращаемое значение
Возвраты
YES
true
на успехе; иначеNO
false
.Обсуждение
Магнитофон должен быть остановлен перед вызовом этого метода.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
recording
СвойствоБулево значение, указывающее, записывает ли магнитофон. (только для чтения)
Объявление
Swift
var recording: Bool { get }
Objective C
@property(readonly, getter=isRecording) BOOL recording
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
url
Свойство -
channelAssignments
СвойствоМассив
AVAudioSessionChannelDescription
объекты связались с устройством записи.Объявление
Swift
var channelAssignments: [AnyObject]!
Objective C
@property(nonatomic, copy) NSArray *channelAssignments
Обсуждение
Значение по умолчанию этого свойства
nil
. Когда не -nil
, этот массив должен иметь то же число элементов, как определяется AVNumberOfChannelsKey вsettings
свойство. Можно использовать это свойство, чтобы помочь записать определенные каналы.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
currentTime
СвойствоВремя, в секундах, с начала записи. (только для чтения)
Объявление
Swift
var currentTime: NSTimeInterval { get }
Objective C
@property(readonly) NSTimeInterval currentTime
Обсуждение
Когда магнитофон останавливается, вызывание этого метода возвращает значение
0
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
deviceCurrentTime
СвойствоВремя, в секундах, устройства хоста, где расположен магнитофон. (только для чтения)
Объявление
Swift
var deviceCurrentTime: NSTimeInterval { get }
Objective C
@property(readonly) NSTimeInterval deviceCurrentTime
Обсуждение
Значение этого свойства никогда не
0
. Значение этого свойства предоставлено как удобство допускать относительное временем планирование аудиозаписи с помощьюrecordAtTime:
иrecordAtTime:forDuration:
методы.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
settings
СвойствоПараметры звука для магнитофона. (только для чтения)
Объявление
Swift
var settings: [NSObject : AnyObject]! { get }
Objective C
@property(readonly) NSDictionary *settings
Обсуждение
Настройки магнитофона имеют силу только после явного вызова
prepareToRecord
метод, или после вызова его неявно путем запуска записи. Ключи параметров звука описаны в Константах Параметров звука Основы AV.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
meteringEnabled
СвойствоБулево значение, указывающее, включено ли измерение уровня звука.
Объявление
Swift
var meteringEnabled: Bool
Objective C
@property(getter=isMeteringEnabled) BOOL meteringEnabled
Обсуждение
По умолчанию измерение уровня звука выключено для магнитофона. Поскольку, измеряя вычислительные ресурсы использования, включите его, только если Вы намереваетесь использовать его.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Обновляет средние и пиковые значения питания для всех каналов магнитофона.
Объявление
Swift
func updateMeters()
Objective C
- (void)updateMeters
Обсуждение
Для получения текущих значений мощности звука необходимо вызвать этот метод перед вызовом
averagePowerForChannel:
илиpeakPowerForChannel:
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
Возвращает пиковое питание для данного канала, в децибелах, для зарегистрированного звука.
Объявление
Swift
func peakPowerForChannel(_
channelNumber
: Int) -> FloatObjective C
- (float)peakPowerForChannel:(NSUInteger)
channelNumber
Параметры
channelNumber
Число канала, для которого Вы хотите пиковое значение питания.
Возвращаемое значение
Текущее пиковое питание, в децибелах, для зарегистрированного звука. Возвращаемое значение 0 дБ указывает полный масштаб или максимальную мощность; возвращаемое значение-160 дБ указывает минимальное питание (т.е. около тишины).
Если сигнал, предоставленный для магнитофона, превышает масштаб ±full, то возвращаемое значение может превысить 0 (т.е. это может ввести положительный диапазон).
Обсуждение
Для получения текущего пикового значения питания вызовите
updateMeters
метод сразу прежде, чем вызвать этот метод.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
Возвращает среднюю мощность для данного канала, в децибелах, для зарегистрированного звука.
Объявление
Swift
func averagePowerForChannel(_
channelNumber
: Int) -> FloatObjective C
- (float)averagePowerForChannel:(NSUInteger)
channelNumber
Параметры
channelNumber
Число канала, для которого Вы хотите значение средней мощности.
Возвращаемое значение
Текущая средняя мощность, в децибелах, для зарегистрированного звука. Возвращаемое значение 0 дБ указывает полный масштаб или максимальную мощность; возвращаемое значение-160 дБ указывает минимальное питание (т.е. около тишины).
Если сигнал, предоставленный для магнитофона, превышает масштаб ±full, то возвращаемое значение может превысить 0 (т.е. это может ввести положительный диапазон).
Обсуждение
Для получения текущего значения средней мощности необходимо вызвать
updateMeters
метод прежде, чем вызвать этот метод.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
См. также