extendable-media-recorder
Advanced tools
Comparing version
@@ -6,4 +6,5 @@ import { IMediaRecorderConstructor } from './interfaces'; | ||
export { mediaRecorderConstructor as MediaRecorder }; | ||
export declare const deregister: (port: MessagePort) => Promise<void>; | ||
export declare const isSupported: () => Promise<boolean>; | ||
export declare const register: (port: MessagePort) => Promise<void>; | ||
//# sourceMappingURL=module.d.ts.map |
@@ -1,2 +0,2 @@ | ||
import { register as rgstr } from 'media-encoder-host'; | ||
import { deregister as drgstr, register as rgstr } from 'media-encoder-host'; | ||
import { createBlobEventFactory } from './factories/blob-event-factory'; | ||
@@ -42,6 +42,17 @@ import { createDecodeWebMChunk } from './factories/decode-web-m-chunk'; | ||
export { mediaRecorderConstructor as MediaRecorder }; | ||
const ports = new WeakMap(); | ||
export const deregister = async (port) => { | ||
await drgstr(port); | ||
const encoderRegex = ports.get(port); | ||
if (encoderRegex !== undefined) { | ||
const index = encoderRegexes.indexOf(encoderRegex); | ||
encoderRegexes.splice(index, 1); | ||
} | ||
}; | ||
export const isSupported = () => createIsSupportedPromise(window); | ||
export const register = async (port) => { | ||
encoderRegexes.push(await rgstr(port)); | ||
const encoderRegex = await rgstr(port); | ||
encoderRegexes.push(encoderRegex); | ||
ports.set(port, encoderRegex); | ||
}; | ||
//# sourceMappingURL=module.js.map |
@@ -1183,17 +1183,18 @@ (function (global, factory) { | ||
var mediaRecorderConstructor = createMediaRecorderConstructor(createNativeMediaRecorderFactory(createNotSupportedError), createNotSupportedError, createWebAudioMediaRecorder, createWebmPcmMediaRecorder, encoderRegexes, createEventTargetConstructor(createEventTarget, wrapEventListener), nativeMediaRecorderConstructor); | ||
var isSupported = function isSupported() { | ||
return createIsSupportedPromise(window$1); | ||
}; | ||
var register = /*#__PURE__*/function () { | ||
var ports = new WeakMap(); | ||
var deregister = /*#__PURE__*/function () { | ||
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(port) { | ||
var encoderRegex, index; | ||
return _regeneratorRuntime.wrap(function _callee$(_context) { | ||
while (1) switch (_context.prev = _context.next) { | ||
case 0: | ||
_context.t0 = encoderRegexes; | ||
_context.next = 3; | ||
return mediaEncoderHost.register(port); | ||
case 3: | ||
_context.t1 = _context.sent; | ||
_context.t0.push.call(_context.t0, _context.t1); | ||
case 5: | ||
_context.next = 2; | ||
return mediaEncoderHost.deregister(port); | ||
case 2: | ||
encoderRegex = ports.get(port); | ||
if (encoderRegex !== undefined) { | ||
index = encoderRegexes.indexOf(encoderRegex); | ||
encoderRegexes.splice(index, 1); | ||
} | ||
case 4: | ||
case "end": | ||
@@ -1204,8 +1205,34 @@ return _context.stop(); | ||
})); | ||
return function register(_x) { | ||
return function deregister(_x) { | ||
return _ref.apply(this, arguments); | ||
}; | ||
}(); | ||
var isSupported = function isSupported() { | ||
return createIsSupportedPromise(window$1); | ||
}; | ||
var register = /*#__PURE__*/function () { | ||
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(port) { | ||
var encoderRegex; | ||
return _regeneratorRuntime.wrap(function _callee2$(_context2) { | ||
while (1) switch (_context2.prev = _context2.next) { | ||
case 0: | ||
_context2.next = 2; | ||
return mediaEncoderHost.register(port); | ||
case 2: | ||
encoderRegex = _context2.sent; | ||
encoderRegexes.push(encoderRegex); | ||
ports.set(port, encoderRegex); | ||
case 5: | ||
case "end": | ||
return _context2.stop(); | ||
} | ||
}, _callee2); | ||
})); | ||
return function register(_x2) { | ||
return _ref2.apply(this, arguments); | ||
}; | ||
}(); | ||
exports.MediaRecorder = mediaRecorderConstructor; | ||
exports.deregister = deregister; | ||
exports.isSupported = isSupported; | ||
@@ -1212,0 +1239,0 @@ exports.register = register; |
@@ -19,3 +19,3 @@ { | ||
"@babel/runtime": "^7.24.4", | ||
"media-encoder-host": "^8.0.113", | ||
"media-encoder-host": "^8.1.0", | ||
"multi-buffer-data-view": "^6.0.4", | ||
@@ -40,3 +40,3 @@ "recorder-audio-worklet": "^6.0.26", | ||
"eslint": "^8.57.0", | ||
"eslint-config-holy-grail": "^59.0.3", | ||
"eslint-config-holy-grail": "^59.0.4", | ||
"extendable-media-recorder-wav-encoder": "^7.0.109", | ||
@@ -60,3 +60,3 @@ "grunt": "^1.6.1", | ||
"rimraf": "^5.0.5", | ||
"rollup": "^4.14.1", | ||
"rollup": "^4.14.2", | ||
"sinon": "^17.0.1", | ||
@@ -68,3 +68,3 @@ "sinon-chai": "^3.7.0", | ||
"tslint-config-holy-grail": "^56.0.1", | ||
"typescript": "^5.4.4", | ||
"typescript": "^5.4.5", | ||
"webpack": "^5.91.0" | ||
@@ -102,3 +102,3 @@ }, | ||
"types": "build/es2019/module.d.ts", | ||
"version": "9.1.15" | ||
"version": "9.2.0" | ||
} |
@@ -1,2 +0,2 @@ | ||
import { register as rgstr } from 'media-encoder-host'; | ||
import { deregister as drgstr, register as rgstr } from 'media-encoder-host'; | ||
import { createBlobEventFactory } from './factories/blob-event-factory'; | ||
@@ -62,6 +62,23 @@ import { createDecodeWebMChunk } from './factories/decode-web-m-chunk'; | ||
const ports = new WeakMap<MessagePort, RegExp>(); | ||
export const deregister = async (port: MessagePort): Promise<void> => { | ||
await drgstr(port); | ||
const encoderRegex = ports.get(port); | ||
if (encoderRegex !== undefined) { | ||
const index = encoderRegexes.indexOf(encoderRegex); | ||
encoderRegexes.splice(index, 1); | ||
} | ||
}; | ||
export const isSupported = () => createIsSupportedPromise(window); | ||
export const register = async (port: MessagePort): Promise<void> => { | ||
encoderRegexes.push(await rgstr(port)); | ||
const encoderRegex = await rgstr(port); | ||
encoderRegexes.push(encoderRegex); | ||
ports.set(port, encoderRegex); | ||
}; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
280346
0.86%3895
1.3%Updated