Index: bower_components/gif.js/src/benchmark.coffee |
diff --git a/bower_components/gif.js/src/benchmark.coffee b/bower_components/gif.js/src/benchmark.coffee |
deleted file mode 100644 |
index 606f394c0881b9a3900685d325ec75f7ee56d380..0000000000000000000000000000000000000000 |
--- a/bower_components/gif.js/src/benchmark.coffee |
+++ /dev/null |
@@ -1,92 +0,0 @@ |
-{NeuQuant} = require './TypedNeuQuant.js' |
- |
-### |
-typed 100 runs: |
- run finished at q1 |
- avg: 661.46ms median: 660.54ms |
- run finished at q10 |
- avg: 67.49ms median: 67.03ms |
- run finished at q20 |
- avg: 34.56ms median: 34.19ms |
-normal 100 runs: |
- run finished at q1 |
- avg: 888.10ms median: 887.63ms |
- run finished at q10 |
- avg: 92.85ms median: 91.99ms |
- run finished at q20 |
- avg: 46.14ms median: 45.68ms |
-### |
- |
-quality = 10 # pixel sample interval, 1 being the best quality |
-runs = 100 |
- |
-if window.performance?.now? |
- now = -> window.performance.now() |
-else |
- now = Date.now |
- |
-window.addEventListener 'load', -> |
- img = document.getElementById 'image' |
- canvas = document.getElementById 'canvas' |
- |
- w = canvas.width = img.width |
- h = canvas.height = img.height |
- |
- ctx = canvas.getContext('2d') |
- ctx.drawImage(img, 0, 0) |
- |
- imdata = ctx.getImageData(0, 0, img.width, img.height) |
- rgba = imdata.data |
- |
- rgb = new Uint8Array w * h * 3 |
- #rgb = new Array w * h * 3 |
- |
- rgb_idx = 0 |
- for i in [0...rgba.length] by 4 |
- rgb[rgb_idx++] = rgba[i + 0] |
- rgb[rgb_idx++] = rgba[i + 1] |
- rgb[rgb_idx++] = rgba[i + 2] |
- |
- runtimes = [] |
- for run in [0...runs] |
- start = now() |
- imgq = new NeuQuant rgb, quality |
- imgq.buildColormap() |
- end = now() |
- delta = end - start |
- runtimes.push delta |
- |
- console.log runtimes.join('\n') |
- |
- map = imgq.getColormap() |
- avg = runtimes.reduce((p, n) -> p + n) / runtimes.length |
- median = runtimes.sort()[Math.floor(runs / 2)] |
- console.log """ |
- run finished at q#{ quality } |
- avg: #{ avg.toFixed(2) }ms median: #{ median.toFixed(2) }ms |
- """ |
- |
- for y in [0...h] |
- for x in [0...w] |
- idx = (y * w + x) * 4 |
- |
- r = rgba[idx + 0] |
- g = rgba[idx + 1] |
- b = rgba[idx + 2] |
- |
- map_idx = imgq.lookupRGB(r, g, b) * 3 |
- |
- rgba[idx + 0] = map[map_idx] |
- rgba[idx + 1] = map[map_idx + 1] |
- rgba[idx + 2] = map[map_idx + 2] |
- |
- ctx.putImageData imdata, 0, 0 |
- |
- for i in [0...map.length] by 3 |
- color = [map[i], map[i + 1], map[i + 2]] |
- el = document.createElement 'span' |
- el.style.display = 'inline-block' |
- el.style.height = '1em' |
- el.style.width = '1em' |
- el.style.background = 'rgb(' + color.join(',') + ')' |
- document.body.appendChild el |