MediaRecorder - события паузы и возобновления не работают в Firefox - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь обернуть голову вокруг MediaRecorder API , поэтому я написал простое веб-приложение, которое запускает, приостанавливает, возобновляет и останавливает запись звука. Код работает нормально, пока я не протестировал его в Firefox (последняя версия).

[Полный код здесь]

Javascript код:

var mediaRecorder = null,
constraints = { audio: true };


function onSuccess( stream ) {
   mediaRecorder = new MediaRecorder( stream );

   function getStatus() {
      alert('The mediaRecorder is ' + mediaRecorder.state);
   }

   mediaRecorder.onstart = getStatus;
   mediaRecorder.onpause = getStatus;
   mediaRecorder.onresume = getStatus;
   mediaRecorder.onstop = getStatus;
}

var onError = function(err) {
   console.log('Error: ' + err);
}

navigator.mediaDevices.getUserMedia(constraints).then(onSuccess, onError);

HTML-код:

<button type="button" onclick="mediaRecorder.start()">Start</button>
<button type="button" onclick="mediaRecorder.pause()">Pause</button>
<button type="button" onclick="mediaRecorder.resume()">Resume</button>
<button type="button" onclick="mediaRecorder.stop()">Stop</button>

Я выяснил, что в Firefox при нажатии на паузу mediaRecorder фактически приостанавливается, но не запускает событие паузы (onpause), и то же самое для возобновления.

Вопрос: Есть ли способ решить эту проблему?

1 Ответ

0 голосов
/ 15 июля 2018

К сожалению, это ошибка в Mozilla Firefox , и в качестве обходного пути я нашел эту удивительную кросс-браузерную библиотеку, и она работала для меня как чудо: Audrec

...