Change worker stuff to use worker-loader
Previously we used webworkify-webpack to make web-workers work. We now use the worker-loader webpack plugin which is available since webpack 4 to handle workers. It still doesn't want to connect to the server, but all JS errors in the dev console are gone. Progress.
This commit is contained in:
parent
d3e47d7d29
commit
f7ec12aa8d
5 changed files with 111 additions and 18 deletions
|
@ -4,8 +4,9 @@ import EventEmitter from 'events'
|
|||
import { Writable, PassThrough } from 'stream'
|
||||
import toArrayBuffer from 'to-arraybuffer'
|
||||
import ByteBuffer from 'bytebuffer'
|
||||
import webworkify from 'webworkify'
|
||||
import worker from './worker'
|
||||
//import work from 'webworkify-webpack'
|
||||
//import worker from './worker'
|
||||
import Worker from './worker'
|
||||
|
||||
/**
|
||||
* Creates proxy MumbleClients to a real ones running on a web worker.
|
||||
|
@ -13,7 +14,7 @@ import worker from './worker'
|
|||
*/
|
||||
class WorkerBasedMumbleConnector {
|
||||
constructor () {
|
||||
this._worker = webworkify(worker)
|
||||
this._worker = new Worker() //work(require.resolve('./worker'))
|
||||
this._worker.addEventListener('message', this._onMessage.bind(this))
|
||||
this._reqId = 1
|
||||
this._requests = {}
|
||||
|
|
|
@ -3,16 +3,18 @@ import mumbleConnect from 'mumble-client-websocket'
|
|||
import toArrayBuffer from 'to-arraybuffer'
|
||||
import chunker from 'stream-chunker'
|
||||
import Resampler from 'libsamplerate.js'
|
||||
import CodecsBrowser from 'mumble-client-codecs-browser'
|
||||
|
||||
// Polyfill nested webworkers for https://bugs.chromium.org/p/chromium/issues/detail?id=31666
|
||||
import 'subworkers'
|
||||
|
||||
// Monkey-patch to allow webworkify-webpack and codecs to work inside of web worker
|
||||
/* global URL */
|
||||
window.URL = URL
|
||||
//if (typeof window === 'undefined') global.window = {}
|
||||
//window.URL = URL
|
||||
|
||||
// Using require to ensure ordering relative to monkey-patch above
|
||||
let CodecsBrowser = require('mumble-client-codecs-browser')
|
||||
//let CodecsBrowser = require('mumble-client-codecs-browser')
|
||||
|
||||
export default function (self) {
|
||||
let sampleRate
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue