MediaRecorder.ondataavailable - отримуються мультимедійні дані.
MediaRecorder.ondataavailable=function(event){
// код функції, яка виконується коли відбувається подія
};
MediaRecorder - об'єкт MediaRecorder для якого призначається подія.
event - об'єкт Event який передається в якості параметру функції. Дані які отримані для запису доступні у властивості: Event.data.
ondataavailable подія об'єкту MediaRecorder яка виникає коли отртмуються мультимедійні дані для запису від медіа потоку.
Дані представлені у об'єкті Blob.
var stream=new MediaStream();
var rec=new MediaRecorder(stream);
rec.ondataavailable=function(e){alert('отримано дані для запису медіа. Об\'єкт з даними: '+e.data+ ' розмір даних: '+e.data.size);}
rec.start();
rec.stop();
Приклад запису і відтворення відео з камери:
function stopRecord(){
record.stop();
record.stream.getTracks()[0].stop();
}
var record, dani=[];
navigator.mediaDevices.getUserMedia({video:true}).then(function(stream){
record=new MediaRecorder(stream);
record.ondataavailable=function(e){
dani.push(e.data);
};
record.onstop=function(){
var video=document.getElementById('video');
video.src= window.URL.createObjectURL(new Blob(dani) );
video.play();
};
record.start(); //починаємо запис медіа
setTimeout(stopRecord,3000); // зупиняємо запис через 3 секунди
}
);