@bigbinary/neeto-media-recorder 2.7.26 → 2.7.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +12 -12
  2. package/index.js.map +1 -1
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -1251,7 +1251,9 @@ var FailedToStart = withT(function (_ref) {
1251
1251
  var getAnalyser = function getAnalyser() {
1252
1252
  var _screenRecorder$getAu;
1253
1253
  var stream = (_screenRecorder$getAu = screenRecorder.getAudioStream) === null || _screenRecorder$getAu === void 0 ? void 0 : _screenRecorder$getAu.call(screenRecorder);
1254
- if (!stream) return null;
1254
+ if (!stream) {
1255
+ return null;
1256
+ }
1255
1257
  var ctx = new (window.AudioContext || window.webkitAudioContext)();
1256
1258
  var source = ctx.createMediaStreamSource(stream);
1257
1259
  var analyser = ctx.createAnalyser();
@@ -1304,10 +1306,7 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1304
1306
  var resumeTimer = function resumeTimer() {
1305
1307
  if (timerRef.current || !timerStarted || disable) return;
1306
1308
  logger.info("useAudioIsCapturing resumeTimer");
1307
- startedAtRef.current = Date.now();
1308
- timerRef.current = setTimeout(function () {
1309
- return setHasAudio(false);
1310
- }, remainingRef.current);
1309
+ armTimer();
1311
1310
  };
1312
1311
  var reset = useCallback(function () {
1313
1312
  logger.info("useAudioIsCapturing reset");
@@ -1340,8 +1339,7 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1340
1339
  useEffect(function () {
1341
1340
  if (!isMicOn || !timerStarted || disable) return noop;
1342
1341
  var analyserObj = null;
1343
- var rafId;
1344
- var loop = function loop() {
1342
+ var checkAudio = function checkAudio() {
1345
1343
  if (!analyserObj) analyserObj = getAnalyser();
1346
1344
  // if no stream yet or analyser failed, treat as silence
1347
1345
  var isSilent = !analyserObj ? true : function () {
@@ -1358,11 +1356,13 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1358
1356
  remainingRef.current = MIC_NOT_WORKING_SILENCE_TIMEOUT;
1359
1357
  if (!hasAudio) setHasAudio(true);
1360
1358
  }
1361
- rafId = requestAnimationFrame(loop);
1362
1359
  };
1363
- loop();
1360
+
1361
+ // Use interval polling instead of rAF so this keeps running in inactive tabs.
1362
+ checkAudio();
1363
+ var intervalId = setInterval(checkAudio, 1000);
1364
1364
  return function () {
1365
- cancelAnimationFrame(rafId);
1365
+ clearInterval(intervalId);
1366
1366
  clearTimer();
1367
1367
  if (analyserObj) {
1368
1368
  analyserObj.source.disconnect();
@@ -1374,6 +1374,7 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1374
1374
  var _callbacks;
1375
1375
  if (!isMicOn) return noop;
1376
1376
  var callbacks = (_callbacks = {}, _defineProperty(_callbacks, SCREEN_RECORDER_EVENT.onStart, function () {
1377
+ logger.info("useAudioIsCapturing onStart");
1377
1378
  reset();
1378
1379
  setTimerStarted(true);
1379
1380
  armTimer();
@@ -1387,6 +1388,7 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1387
1388
  }), _defineProperty(_callbacks, SCREEN_RECORDER_EVENT.onPause, function () {
1388
1389
  pauseTimer();
1389
1390
  }), _defineProperty(_callbacks, SCREEN_RECORDER_EVENT.onStop, function () {
1391
+ logger.info("useAudioIsCapturing onStop");
1390
1392
  clearTimer();
1391
1393
  reset();
1392
1394
  }), _defineProperty(_callbacks, "disable-mic-not-working-warning", function disableMicNotWorkingWarning() {
@@ -1397,8 +1399,6 @@ var useAudioIsCapturing = function useAudioIsCapturing(_ref) {
1397
1399
  reset();
1398
1400
  }, 500);
1399
1401
  }), _callbacks);
1400
- // start straight a way.
1401
- callbacks[SCREEN_RECORDER_EVENT.onStart]();
1402
1402
  Object.entries(callbacks).forEach(function (_ref2) {
1403
1403
  var _ref3 = _slicedToArray(_ref2, 2),
1404
1404
  ev = _ref3[0],