MCPcopy Create free account
hub / github.com/TruthHun/BookStack / initQuantTables

Function initQuantTables

static/webuploader/webuploader.js:5666–5720  ·  view source on GitHub ↗
(sf)

Source from the content-addressed store, hash-verified

5664 ];
5665
5666 function initQuantTables(sf){
5667 var YQT = [
5668 16, 11, 10, 16, 24, 40, 51, 61,
5669 12, 12, 14, 19, 26, 58, 60, 55,
5670 14, 13, 16, 24, 40, 57, 69, 56,
5671 14, 17, 22, 29, 51, 87, 80, 62,
5672 18, 22, 37, 56, 68,109,103, 77,
5673 24, 35, 55, 64, 81,104,113, 92,
5674 49, 64, 78, 87,103,121,120,101,
5675 72, 92, 95, 98,112,100,103, 99
5676 ];
5677
5678 for (var i = 0; i < 64; i++) {
5679 var t = ffloor((YQT[i]*sf+50)/100);
5680 if (t < 1) {
5681 t = 1;
5682 } else if (t > 255) {
5683 t = 255;
5684 }
5685 YTable[ZigZag[i]] = t;
5686 }
5687 var UVQT = [
5688 17, 18, 24, 47, 99, 99, 99, 99,
5689 18, 21, 26, 66, 99, 99, 99, 99,
5690 24, 26, 56, 99, 99, 99, 99, 99,
5691 47, 66, 99, 99, 99, 99, 99, 99,
5692 99, 99, 99, 99, 99, 99, 99, 99,
5693 99, 99, 99, 99, 99, 99, 99, 99,
5694 99, 99, 99, 99, 99, 99, 99, 99,
5695 99, 99, 99, 99, 99, 99, 99, 99
5696 ];
5697 for (var j = 0; j < 64; j++) {
5698 var u = ffloor((UVQT[j]*sf+50)/100);
5699 if (u < 1) {
5700 u = 1;
5701 } else if (u > 255) {
5702 u = 255;
5703 }
5704 UVTable[ZigZag[j]] = u;
5705 }
5706 var aasf = [
5707 1.0, 1.387039845, 1.306562965, 1.175875602,
5708 1.0, 0.785694958, 0.541196100, 0.275899379
5709 ];
5710 var k = 0;
5711 for (var row = 0; row < 8; row++)
5712 {
5713 for (var col = 0; col < 8; col++)
5714 {
5715 fdtbl_Y[k] = (1.0 / (YTable [ZigZag[k]] * aasf[row] * aasf[col] * 8.0));
5716 fdtbl_UV[k] = (1.0 / (UVTable[ZigZag[k]] * aasf[row] * aasf[col] * 8.0));
5717 k++;
5718 }
5719 }
5720 }
5721
5722 function computeHuffmanTbl(nrcodes, std_table){
5723 var codevalue = 0;

Callers 1

setQualityFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected