lazyRegister (player, lazyPlugin) {
    const timeout = lazyPlugin.timeout || 1500
    return Promise.race([
      lazyPlugin.loader().then((plugin) => {
        let result
        if (plugin && plugin.__esModule) {
          result = plugin.default
        } else {
          result = plugin
        }
        this.register(player, result, plugin.options)
      }),
      new Promise((resolve, reject) => {
        setTimeout(() => {
          reject(new Error('timeout'))
        }, timeout)
      })
    ])
  }
register a lazy plugin
@param { any } player instance
@param { any } lazyPlugin config