Этот плагин предоставляет возможность записывать и воспроизводить аудио файлы на устройство.
Примечание: Текущая реализация не соответствует спецификации W3C для захвата СМИ и предоставляется только для удобства. Будущее осуществление будет придерживаться последней спецификации W3C и может Опознайте текущих API.
cordova plugin add cordova-plugin-media
Только один файл может воспроизводиться одновременно.
Существуют строгие ограничения в отношении как ваше приложение взаимодействует с другими средствами массовой информации. Смотрите в документации Microsoft для подробной информации.
var media = new Media(src, mediaSuccess, [mediaError], [mediaStatus]);
src: URI, содержащий аудио-контент. (DOMString)
mediaSuccess: (необязательно) обратного вызова, который выполняется после Media
объект завершения текущего воспроизведения, записи или стоп действий. (Функция)
mediaError: (необязательно) обратного вызова, который выполняется при возникновении ошибки. (Функция)
mediaStatus: (необязательно) обратного вызова, который выполняется для отображения изменений состояния. (Функция)
Следующие константы сообщается как единственный параметр для mediaStatus
обратного вызова:
Media.MEDIA_NONE
= 0;Media.MEDIA_STARTING
= 1;Media.MEDIA_RUNNING
= 2;Media.MEDIA_PAUSED
= 3;Media.MEDIA_STOPPED
= 4;media.getCurrentPosition
: Возвращает текущую позицию в аудиофайл.
media.getDuration
: Возвращает продолжительность звукового файла.
media.play
: Начать или возобновить воспроизведение звукового файла.
media.pause
: Приостановка воспроизведения звукового файла.
media.release
: Выпускает аудио ресурсы базовой операционной системы.
media.seekTo
: Перемещает положение в пределах звукового файла.
media.setVolume
: Задайте громкость воспроизведения звука.
media.startRecord
: Начните запись звукового файла.
media.stopRecord
: Остановите запись аудио файлов.
media.stop
: Остановка воспроизведения звукового файла.
позиции: позиция в аудио воспроизведения в секундах.
getCurrentPosition
для обновления.Продолжительность: продолжительность СМИ, в секундах.
Возвращает текущую позицию в звуковой файл. Также обновляет Media
объекта position
параметр.
media.getCurrentPosition(mediaSuccess, [mediaError]);
mediaSuccess: обратный вызов, который передается в текущую позицию в секундах.
mediaError: (необязательно) обратного вызова для выполнения, если происходит ошибка.
// Audio player
//
var my_media = new Media(src, onSuccess, onError);
// Update media position every second
var mediaTimer = setInterval(function () {
// get media position
my_media.getCurrentPosition(
// success callback
function (position) {
if (position > -1) {
console.log((position) + " sec");
}
},
// error callback
function (e) {
console.log("Error getting pos=" + e);
}
);
}, 1000);
Возвращает продолжительность аудио файла в секундах. Если длительность неизвестна, она возвращает значение -1.
media.getDuration();
// Audio player
//
var my_media = new Media(src, onSuccess, onError);
// Get duration
var counter = 0;
var timerDur = setInterval(function() {
counter = counter + 100;
if (counter > 2000) {
clearInterval(timerDur);
}
var dur = my_media.getDuration();
if (dur > 0) {
clearInterval(timerDur);
document.getElementById('audio_duration').innerHTML = (dur) + " sec";
}
}, 100);
Приостанавливает воспроизведение звукового файла.
media.pause();
// Play audio
//
function playAudio(url) {
// Play the audio file at url
var my_media = new Media(url,
// success callback
function () { console.log("playAudio():Audio Success"); },
// error callback
function (err) { console.log("playAudio():Audio Error: " + err); }
);
// Play audio
my_media.play();
// Pause after 10 seconds
setTimeout(function () {
media.pause();
}, 10000);
}
Запускает или возобновляет воспроизведение звукового файла.
media.play();
// Play audio
//
function playAudio(url) {
// Play the audio file at url
var my_media = new Media(url,
// success callback
function () {
console.log("playAudio():Audio Success");
},
// error callback
function (err) {
console.log("playAudio():Audio Error: " + err);
}
);
// Play audio
my_media.play();
}
numberOfLoops: этот параметр, чтобы передать play
метод, чтобы указать количество раз, вы хотите, чтобы средства массовой информации файла для воспроизведения, например:
var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
myMedia.play({ numberOfLoops: 2 })
playAudioWhenScreenIsLocked: передайте этот параметр для play
метод, чтобы указать, хотите ли вы разрешить воспроизведение, когда экран заблокирован. Если значение true
(значение по умолчанию), состояние оборудования безгласную кнопку игнорируется, например:
var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
myMedia.play({ playAudioWhenScreenIsLocked : false })
Порядок поиска файла: когда предоставляется только имя файла или простой путь, iOS ищет в www
каталог для файла, а затем в приложении documents/tmp
каталога:
var myMedia = new Media("audio/beer.mp3")
myMedia.play() // first looks for file in www/audio/beer.mp3 then in <application>/documents/tmp/audio/beer.mp3
Освобождает ресурсы аудио базовой операционной системы. Это особенно важно для Android, так как существует конечное количество экземпляров OpenCore для воспроизведения мультимедиа. Приложения должны вызвать release
функция для любого Media
ресурс, который больше не нужен.
media.release();
// Audio player
//
var my_media = new Media(src, onSuccess, onError);
my_media.play();
my_media.stop();
my_media.release();
Задает текущую позицию в течение звукового файла.
media.seekTo(milliseconds);
// Audio player
//
var my_media = new Media(src, onSuccess, onError);
my_media.play();
// SeekTo to 10 seconds after 5 seconds
setTimeout(function() {
my_media.seekTo(10000);
}, 5000);
Задайте громкость звукового файла.
media.setVolume(volume);
// Play audio
//
function playAudio(url) {
// Play the audio file at url
var my_media = new Media(url,
// success callback
function() {
console.log("playAudio():Audio Success");
},
// error callback
function(err) {
console.log("playAudio():Audio Error: "+err);
});
// Play audio
my_media.play();
// Mute volume after 2 seconds
setTimeout(function() {
my_media.setVolume('0.0');
}, 2000);
// Set volume to 1.0 after 5 seconds
setTimeout(function() {
my_media.setVolume('1.0');
}, 5000);
}
Начинает запись аудио файлов.
media.startRecord();
// Record audio
//
function recordAudio() {
var src = "myrecording.mp3";
var mediaRec = new Media(src,
// success callback
function() {
console.log("recordAudio():Audio Success");
},
// error callback
function(err) {
console.log("recordAudio():Audio Error: "+ err.code);
});
// Record audio
mediaRec.startRecord();
}
iOS только записи в файлы типа .wav и возвращает ошибку, если расширение не исправить.
Если полный путь не указан, запись помещается в приложения documents/tmp
каталог. Это могут быть доступны через File
API с помощью LocalFileSystem.TEMPORARY
. Любой подкаталог, указанный на время записи должны уже существовать.
Файлы могут быть и сыграны записываются обратно, используя документы URI:
var myMedia = new Media("documents://beer.mp3")
Если не указан полный путь, запись помещается в каталоге AppData/temp. Это могут быть доступны через Файл
С помощью API LocalFileSystem.TEMPORARY
или ' ms-appdata: / / / temp /' URI.
Любой подкаталог указанного в рекордное время должна уже существовать.
Останавливает воспроизведение звукового файла.
media.stop();
// Play audio
//
function playAudio(url) {
// Play the audio file at url
var my_media = new Media(url,
// success callback
function() {
console.log("playAudio():Audio Success");
},
// error callback
function(err) {
console.log("playAudio():Audio Error: "+err);
}
);
// Play audio
my_media.play();
// Pause after 10 seconds
setTimeout(function() {
my_media.stop();
}, 10000);
}
Прекращает запись аудио файлов.
media.stopRecord();
// Record audio
//
function recordAudio() {
var src = "myrecording.mp3";
var mediaRec = new Media(src,
// success callback
function() {
console.log("recordAudio():Audio Success");
},
// error callback
function(err) {
console.log("recordAudio():Audio Error: "+ err.code);
}
);
// Record audio
mediaRec.startRecord();
// Stop recording after 10 seconds
setTimeout(function() {
mediaRec.stopRecord();
}, 10000);
}
A MediaError
объект возвращается к mediaError
функции обратного вызова при возникновении ошибки.
code: один из стандартных кодов ошибок, перечисленных ниже.
сообщение: сообщение об ошибке, с подробными сведениями об ошибке.
MediaError.MEDIA_ERR_ABORTED
= 1MediaError.MEDIA_ERR_NETWORK
= 2MediaError.MEDIA_ERR_DECODE
= 3MediaError.MEDIA_ERR_NONE_SUPPORTED
= 4