quagga2 icon indicating copy to clipboard operation
quagga2 copied to clipboard

config.debug ignored. console.warn only contains debug info

Open lewismoten opened this issue 9 months ago • 3 comments

Hello. I've had fun with the Barcode Detection API, but found that Safari and Chrome doesn't support it on iOS. I have found your library looking for a way to work around the issues and polyfill the API.

Every time I call Quagga to decodeSingle, it adds a bunch of warnings to the console to the point that its difficult to debug anything else when streaming video. It seems that these warnings are diagnostic information for debugging rather than actual warnings. I have tried changing the configuration debug setting to false, but the warnings still appear.

* initCanvas getCanvasAndContext
* initCanvas getCanvasAndContext
*** frame_grabber_browser: willReadFrequency=undefined canvas= <canvas class="imgBuffer" width="800" height="500">
Invalid asm.js: Unexpected token

Here is my code. In this case, the src is a data url from canvas.toDataURL()

// https://cdn.jsdelivr.net/npm/@ericblade/quagga2/dist/quagga.min.js

const config = {
  src,
  decoder: {
    readers: ['code_128_reader']
  },
  debug: false
};
const callback = result => {
  if(result) {
    console.log('got a result', result);
  } else {
    console.log('nothing');
  }
};
window.Quagga.decodeSingle(config, callback)

I reviewed the quagga2 source code and found that all of the console messages are hard-coded to write output without checking any of the configuration debug settings.

https://github.com/search?q=repo%3Aericblade%2Fquagga2%20console.warn&type=code

lewismoten avatar May 19 '24 19:05 lewismoten