Этот плагин обеспечивает доступ к аудио, изображения и возможности видео захвата устройства.
Предупреждение: сбор и использование изображений, видео или аудио с камеры или микрофона устройства поднимает вопросы важные конфиденциальности. Политика конфиденциальности вашего приложения должна обсудить, как приложение использует такие датчики и ли данные, записанные совместно с другими сторонами. Кроме того если app использование камеры или микрофона не является очевидной в пользовательском интерфейсе, необходимо предоставить уведомление just-in-time, прежде, чем приложение обращается к камеру или микрофон (если операционной системы устройства не так уже). Это уведомление должно обеспечивать ту же информацию, отметили выше, а также получения разрешения пользователя (например, путем представления выбора OK и Нет, спасибо). Обратите внимание, что некоторые торговые площадки app может потребоваться приложению уведомлять just-in-time и получить разрешение от пользователя до доступа к камеру или микрофон. Для получения дополнительной информации пожалуйста, смотрите в руководстве конфиденциальности.
cordova plugin add cordova-plugin-media-capture
supportedAudioModes: аудио записи форматы, поддерживаемые устройством. (ConfigurationData[])
supportedImageModes: запись изображения размеры и форматы, поддерживаемые устройством. (ConfigurationData[])
supportedVideoModes: запись видео резолюций и форматы, поддерживаемые устройством. (ConfigurationData[])
Запустите приложение аудио рекордер и возвращают сведения о файлах захватили аудио клип.
navigator.device.capture.captureAudio(
CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureAudioOptions options]
);
Начинает асинхронную операцию, чтобы захватить аудио записи с помощью устройства по умолчанию аудио записи приложения. Операция позволяет пользователю устройства захвата нескольких записей за один сеанс.
Операции захвата заканчивается, когда либо пользователь выходит из аудио записи приложения, или максимальное количество записей, указанный CaptureAudioOptions.limit
достигается. Если не limit
значение параметра указывается, по умолчанию он один (1) и захвата операция прекращается после того, как пользователь записывает один аудио клип.
По завершении операции захвата CaptureCallback
выполняет с массивом MediaFile
объекты, описывающие каждый захвачен файл аудио клип. Если пользователь завершает операцию перед захваченных аудио клип CaptureErrorCallback
выполняет с CaptureError
объект, показывая CaptureError.CAPTURE_NO_MEDIA_FILES
код ошибки.
// capture callback
var captureSuccess = function(mediaFiles) {
var i, path, len;
for (i = 0, len = mediaFiles.length; i < len; i += 1) {
path = mediaFiles[i].fullPath;
// do something interesting with the file
}
};
// capture error callback
var captureError = function(error) {
navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
};
// start audio capture
navigator.device.capture.captureAudio(captureSuccess, captureError, {limit:2});
Инкапсулирует параметры конфигурации аудио захвата.
ограничение: максимальное количество аудио клипы, устройства пользователь может записывать в одном захвата. Значение должно быть больше или равно 1 (по умолчанию 1).
Продолжительность: максимальная продолжительность аудио звуковой клип, в секундах.
// limit capture operation to 3 media files, no longer than 10 seconds each
var options = { limit: 3, duration: 10 };
navigator.device.capture.captureAudio(captureSuccess, captureError, options);
duration
Параметр не поддерживается. Запись длины не могут быть ограничены программно.duration
Параметр не поддерживается. Запись длины не могут быть ограничены программно.duration
Параметр не поддерживается. Запись длины не могут быть ограничены программно.limit
Параметр не поддерживается, так что только одна запись может быть создан для каждого вызова.limit
Параметр не поддерживается, так что только одна запись может быть создан для каждого вызова.Запустите приложение камеры и возвращают сведения о файлах образа.
navigator.device.capture.captureImage(
CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureImageOptions options]
);
Начинает асинхронную операцию для захвата изображения с помощью приложения камеры устройства. Операция позволяет пользователям захватывать более одного изображения за один сеанс.
Операции захвата заканчивается, либо когда пользователь закрывает приложение камеры, или максимальное количество записей, указанный CaptureAudioOptions.limit
достигается. Если не limit
указано значение, по умолчанию он один (1) и захвата операция прекращается после того, как пользователь захватывает отдельное изображение.
По завершении операции захвата он вызывает CaptureCB
обратного вызова с массивом MediaFile
объектов, описывающих каждый файл образа. Если пользователь завершает операцию до захвата изображения, CaptureErrorCB
обратного вызова выполняется с CaptureError
объекта с изображением CaptureError.CAPTURE_NO_MEDIA_FILES
код ошибки.
Вызов приложения родной камеры в то время как ваше устройство подключено через Zune не работает, и выполняет обратный вызов для ошибки.
// capture callback
var captureSuccess = function(mediaFiles) {
var i, path, len;
for (i = 0, len = mediaFiles.length; i < len; i += 1) {
path = mediaFiles[i].fullPath;
// do something interesting with the file
}
};
// capture error callback
var captureError = function(error) {
navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
};
// start image capture
navigator.device.capture.captureImage(captureSuccess, captureError, {limit:2});
Инкапсулирует параметры конфигурации захвата изображения.
// limit capture operation to 3 images
var options = { limit: 3 };
navigator.device.capture.captureImage(captureSuccess, captureError, options);
Запустите приложение видеомагнитофон и возвращают сведения о файлах захваченного видео клип.
navigator.device.capture.captureVideo(
CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureVideoOptions options]
);
Начинает асинхронную операцию, чтобы захватить видео записи с помощью устройства записи видео приложения. Операция позволяет пользователю захватить более чем одной записи в течение одной сессии.
Операции захвата заканчивается, когда либо пользователь выходит из приложения записи видео, или максимальное количество записей, указанный CaptureVideoOptions.limit
достигается. Если не limit
значение параметра указывается, по умолчанию он один (1) и захвата операция прекращается после того, как пользователь записывает один видео клип.
По завершении операции захвата его CaptureCB
обратного вызова выполняется с массивом MediaFile
объекты, описывающие каждый захвачен файл видео клип. Если пользователь завершает операцию до захвата видео клип, CaptureErrorCB
обратного вызова выполняется с CaptureError
объекта с изображением CaptureError.CAPTURE_NO_MEDIA_FILES
код ошибки.
// capture callback
var captureSuccess = function(mediaFiles) {
var i, path, len;
for (i = 0, len = mediaFiles.length; i < len; i += 1) {
path = mediaFiles[i].fullPath;
// do something interesting with the file
}
};
// capture error callback
var captureError = function(error) {
navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
};
// start video capture
navigator.device.capture.captureVideo(captureSuccess, captureError, {limit:2});
CaptureError.CAPTURE_NOT_SUPPORTED
код ошибки, если приложение не установлено на устройстве.Инкапсулирует параметры конфигурации захвата видео.
ограничение: максимальное количество видео клипы устройства пользователь может захватить в ходе операции один захват. Значение должно быть больше или равно 1 (по умолчанию 1).
Продолжительность: максимальная длительность видеоклипа, в секундах.
// limit capture operation to 3 video clips
var options = { limit: 3 };
navigator.device.capture.captureVideo(captureSuccess, captureError, options);
Вызывается после операции захвата успешных медиа.
function captureSuccess( MediaFile[] mediaFiles ) { ... };
Эта функция выполняется после завершения операции успешного захвата. В этот момент был захвачен файл мультимедиа и либо пользователь завершил приложение захват средств массовой информации, или захват предел был достигнут.
Каждый MediaFile
объект описывает захваченных медиа-файлов.
// capture callback
function captureSuccess(mediaFiles) {
var i, path, len;
for (i = 0, len = mediaFiles.length; i < len; i += 1) {
path = mediaFiles[i].fullPath;
// do something interesting with the file
}
};
Инкапсулирует код ошибки, в результате операции захвата неудачной СМИ.
CaptureError.CAPTURE_INTERNAL_ERR
: Камеру или микрофон не удалось захватить изображение или звук.
CaptureError.CAPTURE_APPLICATION_BUSY
: В настоящее время приложение камеры или аудио захвата отбывает другой запрос захвата.
CaptureError.CAPTURE_INVALID_ARGUMENT
: Недопустимое использование API (например, значение limit
меньше единицы).
CaptureError.CAPTURE_NO_MEDIA_FILES
: Пользователь выходит из приложения камеры или аудио захвата до захвата ничего.
CaptureError.CAPTURE_NOT_SUPPORTED
: Запрошенный захвата операция не поддерживается.
Вызывается, если ошибка возникает во время операции захвата средств массовой информации.
function captureError( CaptureError error ) { ... };
Эта функция выполняется, если возникает ошибка при попытке запуска операции захвата мультимедиа. Сценарии сбоев включают когда захват приложение занято, операции захвата уже имеет место, или пользователь отменяет операцию, прежде чем любой медиа-файлы записываются.
Эта функция выполняет с CaptureError
объект, содержащий соответствующие ошибкиcode
.
// capture error callback
var captureError = function(error) {
navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
};
Инкапсулирует набор параметров захвата средств массовой информации, которые поддерживает устройство.
Описывает режимы захвата мультимедиа поддерживается устройством. Данные конфигурации включает в себя тип MIME и размеры захвата для захвата видео или изображения.
Типы MIME должны присоединиться к RFC2046. Примеры:
video/3gpp
video/quicktime
image/jpeg
audio/amr
audio/wav
тип: кодировке ASCII строчные строка, представляющая тип носителя. (DOMString)
Высота: высота изображения или видео в пикселях. Значение равно нулю для звуковых клипов. (Число)
Ширина: ширина изображения или видео в пикселях. Значение равно нулю для звуковых клипов. (Число)
// retrieve supported image modes
var imageModes = navigator.device.capture.supportedImageModes;
// Select mode that has the highest horizontal resolution
var width = 0;
var selectedmode;
for each (var mode in imageModes) {
if (mode.width > width) {
width = mode.width;
selectedmode = mode;
}
}
Не поддерживается на любой платформе. Все массивы данных конфигурации являются пустыми.
Извлекает формат сведений о файле записи СМИ.
mediaFile.getFormatData(
MediaFileDataSuccessCB successCallback,
[MediaFileDataErrorCB errorCallback]
);
Эта функция асинхронно пытается извлечь сведения о формате для файла мультимедиа. Если успешно, он вызывает MediaFileDataSuccessCB
обратного вызова с MediaFileData
объект. Если попытка завершается неудачей, то функция вызывает MediaFileDataErrorCB
обратного вызова.
API для доступа к медиа файла формата информации ограничено, поэтому не все MediaFileData
свойства поддерживаются.
Не предоставляет API для получения информации о медиа-файлов, так что все MediaFileData
объекты возвращают со значениями по умолчанию.
API для доступа к медиа файлов формата информации ограничено, поэтому не все MediaFileData
свойства поддерживаются.
API для доступа к медиа файлов формата информации ограничено, поэтому не все MediaFileData
свойства поддерживаются.
Инкапсулирует свойства файла захвата мультимедиа.
имя: имя файла, без сведений о пути. (DOMString)
полный путь: полный путь к файлу, включая имя. (DOMString)
тип: тип mime файла (DOMString)
lastModifiedDate: Дата и время последнего изменения файла. (Дата)
Размер: Размер файла в байтах. (Число)
Инкапсулирует сведения о файле мультимедиа формате.
кодеки: фактический формат аудио и видео контента. (DOMString)
битрейт: средний битрейт контента. Значение равно нулю для изображений. (Число)
Высота: высота изображения или видео в пикселях. Значение равно нулю для аудио клипы. (Число)
Ширина: ширина изображения или видео в пикселях. Значение равно нулю для аудио клипы. (Число)
Продолжительность: продолжительность видео- или звукового клипа в секундах. Значение равно нулю для изображений. (Число)
Нет API предоставляет сведения о формате для мультимедийных файлов, так что MediaFileData
объект, возвращенный MediaFile.getFormatData
имеет следующие значения по умолчанию:
кодеки: не поддерживается и возвращаетnull
.
битрейт: не поддерживается и возвращает ноль.
Высота: не поддерживается и возвращает ноль.
Ширина: не поддерживается и возвращает ноль.
Продолжительность: не поддерживается и возвращает ноль.
Поддерживает следующие MediaFileData
Свойства:
кодеки: не поддерживается и возвращаетnull
.
битрейт: не поддерживается и возвращает ноль.
Высота: поддерживается: только изображения и видео файлов.
Ширина: поддерживается: только изображения и видео файлов.
Продолжительность: поддерживается: аудио и видео файлы, только
Поддерживает следующие MediaFileData
Свойства:
кодеки: не поддерживается и возвращаетnull
.
битрейт: не поддерживается и возвращает ноль.
Высота: поддерживается: только изображения и видео файлы.
Ширина: поддерживается: только изображения и видео файлы.
Продолжительность: поддерживается: аудио и видео файлы только.
Поддерживает следующие MediaFileData
Свойства:
кодеки: не поддерживается и возвращаетnull
.
битрейт: поддерживается на устройствах iOS4 для только аудио. Возвращает значение ноль для изображений и видео.
Высота: поддерживается: только изображения и видео файлов.
Ширина: поддерживается: только изображения и видео файлов.
Продолжительность: Поддерживаемые: аудио и видео файлы только.