@zappar/zappar-cv 3.0.0-alpha.2 → 3.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -18,8 +18,8 @@ npm i @zappar/zappar-cv
18
18
 
19
19
  You can use our CDN from within your HTML:
20
20
  ```
21
- <script src="https://libs.zappar.com/zappar-cv/3.0.0-alpha.2/zappar-cv.js"></script>
21
+ <script src="https://libs.zappar.com/zappar-cv/3.0.0-alpha.4/zappar-cv.js"></script>
22
22
  ```
23
23
 
24
24
  Or you can download and host our standalone JavaScript bundle:
25
- [https://libs.zappar.com/zappar-cv/3.0.0-alpha.2/zappar-cv.zip](https://libs.zappar.com/zappar-cv/3.0.0-alpha.2/zappar-cv.zip)
25
+ [https://libs.zappar.com/zappar-cv/3.0.0-alpha.4/zappar-cv.zip](https://libs.zappar.com/zappar-cv/3.0.0-alpha.4/zappar-cv.zip)
package/lib/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "3.0.0-alpha.2";
1
+ export declare const VERSION = "3.0.0-alpha.4";
package/lib/version.js CHANGED
@@ -1 +1 @@
1
- export const VERSION = "3.0.0-alpha.2";
1
+ export const VERSION = "3.0.0-alpha.4";
@@ -129,13 +129,22 @@ export function launchWorkerServer(wasmUrl) {
129
129
  function consumeStream(mod, r, stream, p, userFacing, server, source) {
130
130
  return __awaiter(this, void 0, void 0, function* () {
131
131
  while (true) {
132
+ let reader;
133
+ try {
134
+ reader = yield stream.getReader();
135
+ }
136
+ catch (err) {
137
+ console.log("Error getting reader", err);
138
+ yield delay(1000);
139
+ continue;
140
+ }
132
141
  try {
133
- const reader = yield stream.getReader();
134
142
  yield consumeReader(mod, r, reader, p, userFacing, server, source);
135
143
  }
136
144
  catch (err) {
137
145
  console.log("Consuming reader error", err);
138
146
  }
147
+ reader.releaseLock();
139
148
  yield delay(1000);
140
149
  }
141
150
  });
@@ -143,12 +152,24 @@ function consumeStream(mod, r, stream, p, userFacing, server, source) {
143
152
  let streamDataBufferPointer = 0;
144
153
  let streamDataBufferLength = 0;
145
154
  let tokenId = 1;
155
+ function getFrameOrTimeout(reader) {
156
+ return new Promise((resolve, reject) => {
157
+ const token = setTimeout(() => {
158
+ console.log('Frame timeout');
159
+ reject();
160
+ }, 2000);
161
+ reader.read().then(result => {
162
+ clearTimeout(token);
163
+ resolve(result);
164
+ });
165
+ });
166
+ }
146
167
  const cameraToDeviceTransform = mat4.create();
147
168
  const cameraModel = new Float32Array([300, 300, 160, 120, 0, 0]);
148
169
  function consumeReader(mod, r, reader, p, userFacing, server, source) {
149
170
  return __awaiter(this, void 0, void 0, function* () {
150
171
  while (true) {
151
- let result = yield reader.read();
172
+ let result = yield getFrameOrTimeout(reader);
152
173
  if (result.done) {
153
174
  console.log("Stream done");
154
175
  return;
package/lib/zappar-cv.js CHANGED
@@ -96,12 +96,12 @@ ib(c,!1);if(t.length>b)return 0;D.set(t,a);return t.length-1}function yb(a,b,c,d
96
96
  e.resumeMainLoop=function(){gc++;var a=Yb,b=Zb,c=$b;$b=null;fc(c);Xb(a,b);bc()};e.getUserMedia=function(){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia);window.getUserMedia(void 0)};e.createContext=function(a,b,c,d){return xc(a,b,c,d)};
97
97
  (function(a,b){try{var c=indexedDB.open("emscripten_filesystem",1)}catch(d){b(d);return}c.onupgradeneeded=function(d){d=d.target.result;d.objectStoreNames.contains("FILES")&&d.deleteObjectStore("FILES");d.createObjectStore("FILES")};c.onsuccess=function(d){a(d.target.result)};c.onerror=function(d){b(d)}})(function(a){Pc=a;Oa()},function(){Pc=!1;Oa()});"undefined"!==typeof ENVIRONMENT_IS_FETCH_WORKER&&ENVIRONMENT_IS_FETCH_WORKER||Na();var Bc;
98
98
  function ib(a,b){var c=Array(wa(a)+1);a=z(a,c,0,c.length);b&&(c.length=a);return c}
99
- var sd={E:function(a,b){return Ua(a,b)},a:function(a){return ya(a+16)+16},b:function(a,b,c){(new Wa(a)).Od(b,c);Ya++;throw a;},e:function(a,b,c){Ub=c;try{var d=Wb(a);switch(b){case 0:var f=Vb();return 0>f?-28:Lb(d.path,d.flags,0,f).Sc;case 1:case 2:return 0;case 3:return d.flags;case 4:return f=Vb(),d.flags|=f,0;case 12:return f=Vb(),Ba[f+0>>1]=2,0;case 13:case 14:return 0;case 16:case 8:return-28;case 9:return G[Va()>>2]=28,-1;default:return-28}}catch(g){return"undefined"!==typeof V&&g instanceof
100
- N||x(g),-g.Lc}},F:function(a,b,c){try{var d=Wb(a);if(!d.Tc){var f=T(d.path,{ed:!0}).node;if(!f.Gc.gd)throw new N(54);var g=f.Gc.gd(f);d.Tc=g}a=0;for(var l=Nb(d,0,1),q=Math.floor(l/280);q<d.Tc.length&&a+280<=c;){var r=d.Tc[q];if("."===r[0]){var p=1;var t=4}else{var w=ob(d.node,r);p=w.id;t=8192===(w.mode&61440)?2:16384===(w.mode&61440)?4:40960===(w.mode&61440)?10:8}M=[p>>>0,(K=p,1<=+Math.abs(K)?0<K?(Math.min(+Math.floor(K/4294967296),4294967295)|0)>>>0:~~+Math.ceil((K-+(~~K>>>0))/4294967296)>>>0:0)];
101
- G[b+a>>2]=M[0];G[b+a+4>>2]=M[1];M=[280*(q+1)>>>0,(K=280*(q+1),1<=+Math.abs(K)?0<K?(Math.min(+Math.floor(K/4294967296),4294967295)|0)>>>0:~~+Math.ceil((K-+(~~K>>>0))/4294967296)>>>0:0)];G[b+a+8>>2]=M[0];G[b+a+12>>2]=M[1];Ba[b+a+16>>1]=280;D[b+a+18>>0]=t;z(r,A,b+a+19,256);a+=280;q+=1}Nb(d,280*q,0);return a}catch(C){return"undefined"!==typeof V&&C instanceof N||x(C),-C.Lc}},p:function(){return 42},H:function(a,b,c){Ub=c;try{var d=Wb(a);switch(b){case 21509:case 21505:return d.Kc?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return d.Kc?
102
- 0:-59;case 21519:if(!d.Kc)return-59;var f=Vb();return G[f>>2]=0;case 21520:return d.Kc?-28:-59;case 21531:a=f=Vb();if(!d.Ic.Qd)throw new N(59);return d.Ic.Qd(d,b,a);case 21523:return d.Kc?0:-59;case 21524:return d.Kc?0:-59;default:x("bad ioctl syscall "+b)}}catch(g){return"undefined"!==typeof V&&g instanceof N||x(g),-g.Lc}},I:function(a,b){try{return a=E(a),Tb(Kb,a,b)}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},o:function(a,b,c){Ub=c;try{var d=E(a),f=c?Vb():0;return Lb(d,b,
103
- f).Sc}catch(g){return"undefined"!==typeof V&&g instanceof N||x(g),-g.Lc}},D:function(a,b){try{return a=E(a),Tb(Jb,a,b)}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},K:function(a,b){try{return a=E(a),b=E(b),Ib(a,b),0}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},G:function(a){try{if(!a)return-21;var b={__size__:390,domainname:325,machine:260,nodename:65,release:130,sysname:0,version:195};za("Emscripten",a+b.sysname);za("emscripten",a+b.nodename);za("1.0",
104
- a+b.release);za("#1",a+b.version);za("wasm32",a+b.machine);return 0}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},J:function(a){try{a=E(a);var b=T(a,{parent:!0}).node,c=bb(a),d=ob(b,c);a:{try{var f=ob(b,c)}catch(p){var g=p.Lc;break a}var l=xb(b,"wx");g=l?l:16384===(f.mode&61440)?31:0}if(g)throw new N(g);if(!b.Gc.md)throw new N(63);if(d.$c)throw new N(10);try{R.willDeletePath&&R.willDeletePath(a)}catch(p){n("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+
99
+ var sd={D:function(a,b){return Ua(a,b)},a:function(a){return ya(a+16)+16},b:function(a,b,c){(new Wa(a)).Od(b,c);Ya++;throw a;},e:function(a,b,c){Ub=c;try{var d=Wb(a);switch(b){case 0:var f=Vb();return 0>f?-28:Lb(d.path,d.flags,0,f).Sc;case 1:case 2:return 0;case 3:return d.flags;case 4:return f=Vb(),d.flags|=f,0;case 12:return f=Vb(),Ba[f+0>>1]=2,0;case 13:case 14:return 0;case 16:case 8:return-28;case 9:return G[Va()>>2]=28,-1;default:return-28}}catch(g){return"undefined"!==typeof V&&g instanceof
100
+ N||x(g),-g.Lc}},E:function(a,b,c){try{var d=Wb(a);if(!d.Tc){var f=T(d.path,{ed:!0}).node;if(!f.Gc.gd)throw new N(54);var g=f.Gc.gd(f);d.Tc=g}a=0;for(var l=Nb(d,0,1),q=Math.floor(l/280);q<d.Tc.length&&a+280<=c;){var r=d.Tc[q];if("."===r[0]){var p=1;var t=4}else{var w=ob(d.node,r);p=w.id;t=8192===(w.mode&61440)?2:16384===(w.mode&61440)?4:40960===(w.mode&61440)?10:8}M=[p>>>0,(K=p,1<=+Math.abs(K)?0<K?(Math.min(+Math.floor(K/4294967296),4294967295)|0)>>>0:~~+Math.ceil((K-+(~~K>>>0))/4294967296)>>>0:0)];
101
+ G[b+a>>2]=M[0];G[b+a+4>>2]=M[1];M=[280*(q+1)>>>0,(K=280*(q+1),1<=+Math.abs(K)?0<K?(Math.min(+Math.floor(K/4294967296),4294967295)|0)>>>0:~~+Math.ceil((K-+(~~K>>>0))/4294967296)>>>0:0)];G[b+a+8>>2]=M[0];G[b+a+12>>2]=M[1];Ba[b+a+16>>1]=280;D[b+a+18>>0]=t;z(r,A,b+a+19,256);a+=280;q+=1}Nb(d,280*q,0);return a}catch(C){return"undefined"!==typeof V&&C instanceof N||x(C),-C.Lc}},n:function(){return 42},J:function(a,b,c){Ub=c;try{var d=Wb(a);switch(b){case 21509:case 21505:return d.Kc?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return d.Kc?
102
+ 0:-59;case 21519:if(!d.Kc)return-59;var f=Vb();return G[f>>2]=0;case 21520:return d.Kc?-28:-59;case 21531:a=f=Vb();if(!d.Ic.Qd)throw new N(59);return d.Ic.Qd(d,b,a);case 21523:return d.Kc?0:-59;case 21524:return d.Kc?0:-59;default:x("bad ioctl syscall "+b)}}catch(g){return"undefined"!==typeof V&&g instanceof N||x(g),-g.Lc}},I:function(a,b){try{return a=E(a),Tb(Kb,a,b)}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},p:function(a,b,c){Ub=c;try{var d=E(a),f=c?Vb():0;return Lb(d,b,
103
+ f).Sc}catch(g){return"undefined"!==typeof V&&g instanceof N||x(g),-g.Lc}},F:function(a,b){try{return a=E(a),Tb(Jb,a,b)}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},H:function(a,b){try{return a=E(a),b=E(b),Ib(a,b),0}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},K:function(a){try{if(!a)return-21;var b={__size__:390,domainname:325,machine:260,nodename:65,release:130,sysname:0,version:195};za("Emscripten",a+b.sysname);za("emscripten",a+b.nodename);za("1.0",
104
+ a+b.release);za("#1",a+b.version);za("wasm32",a+b.machine);return 0}catch(c){return"undefined"!==typeof V&&c instanceof N||x(c),-c.Lc}},G:function(a){try{a=E(a);var b=T(a,{parent:!0}).node,c=bb(a),d=ob(b,c);a:{try{var f=ob(b,c)}catch(p){var g=p.Lc;break a}var l=xb(b,"wx");g=l?l:16384===(f.mode&61440)?31:0}if(g)throw new N(g);if(!b.Gc.md)throw new N(63);if(d.$c)throw new N(10);try{R.willDeletePath&&R.willDeletePath(a)}catch(p){n("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+
105
105
  p.message)}b.Gc.md(b,c);var q=wb(d.parent.id,d.name);if(Q[q]===d)Q[q]=d.Vc;else for(var r=Q[q];r;){if(r.Vc===d){r.Vc=d.Vc;break}r=r.Vc}try{if(R.onDeletePath)R.onDeletePath(a)}catch(p){n("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+p.message)}return 0}catch(p){return"undefined"!==typeof V&&p instanceof N||x(p),-p.Lc}},L:function(a){delete Oc[a-1]},c:function(){x()},h:Ua,P:function(a,b){return a-b},R:function(){self.postMessage({t:"gfx"})},u:function(){var a=(new URL(location.origin)).hostname;
106
106
  0===a.length&&(a=(new URL(location.href.replace("blob:",""))).hostname);if(/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(a))0===a.indexOf("10.")&&(a="10.*"),0===a.indexOf("192.168.")&&(a="192.168.*"),0===a.indexOf("172.")&&(a="172.*"),0===a.indexOf("127.")&&(a="127.*");else{var b=new RegExp("("+String.fromCharCode(92)+".ngrok"+String.fromCharCode(92)+".io)$","i");b.test(a)&&(a="*.ngrok.io");
107
107
  b=new RegExp("("+String.fromCharCode(92)+".ngrok-free"+String.fromCharCode(92)+".app)$","i");b.test(a)&&(a="*.ngrok.io");b=new RegExp("("+String.fromCharCode(92)+".arweb"+String.fromCharCode(92)+".app)$","i");b.test(a)&&(a="*.arweb.app")}b=wa(a)+1;var c=ya(b);z(a,A,c,b+1);return c},t:function(){self.postMessage({t:"licerr"})},l:function(a,b,c){function d(){I.get(a)(b)}0<=c?wc(d,c):Lc(d)},y:function(){return 2147483648},N:Nc,w:function(a,b,c){A.copyWithin(a,b,b+c)},x:function(a){var b=A.length;if(2147483648<
@@ -111,7 +111,7 @@ f){var g=b+c;G[a+4*f>>2]=g;za(d,g);c+=d.length+1});return 0}catch(d){return"unde
111
111
  typeof V&&c instanceof N||x(c),c.Lc}},q:function(a,b,c,d){try{a:{for(var f=Wb(a),g=a=0;g<c;g++){var l=G[b+(8*g+4)>>2],q=f,r=G[b+8*g>>2],p=l,t=void 0,w=D;if(0>p||0>t)throw new N(28);if(null===q.Sc)throw new N(8);if(1===(q.flags&2097155))throw new N(8);if(16384===(q.node.mode&61440))throw new N(31);if(!q.Ic.read)throw new N(28);var C="undefined"!==typeof t;if(!C)t=q.position;else if(!q.seekable)throw new N(70);var k=q.Ic.read(q,w,r,p,t);C||(q.position+=k);var u=k;if(0>u){var y=-1;break a}a+=u;if(u<
112
112
  l)break}y=a}G[d>>2]=y;return 0}catch(J){return"undefined"!==typeof V&&J instanceof N||x(J),J.Lc}},v:function(a,b,c,d,f){try{var g=Wb(a);a=4294967296*c+(b>>>0);if(-9007199254740992>=a||9007199254740992<=a)return-61;Nb(g,a,d);M=[g.position>>>0,(K=g.position,1<=+Math.abs(K)?0<K?(Math.min(+Math.floor(K/4294967296),4294967295)|0)>>>0:~~+Math.ceil((K-+(~~K>>>0))/4294967296)>>>0:0)];G[f>>2]=M[0];G[f+4>>2]=M[1];g.Tc&&0===a&&0===d&&(g.Tc=null);return 0}catch(l){return"undefined"!==typeof V&&l instanceof N||
113
113
  x(l),l.Lc}},k:function(a,b,c,d){try{a:{for(var f=Wb(a),g=a=0;g<c;g++){var l=f,q=G[b+8*g>>2],r=G[b+(8*g+4)>>2],p=void 0,t=D;if(0>r||0>p)throw new N(28);if(null===l.Sc)throw new N(8);if(0===(l.flags&2097155))throw new N(8);if(16384===(l.node.mode&61440))throw new N(31);if(!l.Ic.write)throw new N(28);l.seekable&&l.flags&1024&&Nb(l,0,2);var w="undefined"!==typeof p;if(!w)p=l.position;else if(!l.seekable)throw new N(70);var C=l.Ic.write(l,t,q,r,p,void 0);w||(l.position+=C);try{if(l.path&&R.onWriteToFile)R.onWriteToFile(l.path)}catch(y){n("FS.trackingDelegate['onWriteToFile']('"+
114
- l.path+"') threw an exception: "+y.message)}var k=C;if(0>k){var u=-1;break a}a+=k}u=a}G[d>>2]=u;return 0}catch(y){return"undefined"!==typeof V&&y instanceof N||x(y),y.Lc}},f:function(a){var b=Date.now();G[a>>2]=b/1E3|0;G[a+4>>2]=b%1E3*1E3|0;return 0},m:function(a,b){Bc.bindTexture(a,bd[b])},n:function(a,b){for(var c=0;c<a;c++){var d=Bc.createTexture(),f=d&&cd(bd);d?(d.name=f,bd[f]=d):fd||(fd=1282);G[b+4*c>>2]=f}},i:function(a,b,c,d,f,g,l,q,r){var p=Bc,t=p.texImage2D;if(r){var w=q-5120;w=1==w?A:4==
114
+ l.path+"') threw an exception: "+y.message)}var k=C;if(0>k){var u=-1;break a}a+=k}u=a}G[d>>2]=u;return 0}catch(y){return"undefined"!==typeof V&&y instanceof N||x(y),y.Lc}},f:function(a){var b=Date.now();G[a>>2]=b/1E3|0;G[a+4>>2]=b%1E3*1E3|0;return 0},m:function(a,b){Bc.bindTexture(a,bd[b])},o:function(a,b){for(var c=0;c<a;c++){var d=Bc.createTexture(),f=d&&cd(bd);d?(d.name=f,bd[f]=d):fd||(fd=1282);G[b+4*c>>2]=f}},i:function(a,b,c,d,f,g,l,q,r){var p=Bc,t=p.texImage2D;if(r){var w=q-5120;w=1==w?A:4==
115
115
  w?G:6==w?Ca:5==w||28922==w?H:F;var C=31-Math.clz32(w.BYTES_PER_ELEMENT);r=w.subarray(r>>C,r+f*(d*({5:3,6:4,8:2,29502:3,29504:4}[l-6402]||1)*(1<<C)+4-1&-4)>>C)}else r=null;t.call(p,a,b,c,d,f,g,l,q,r)},j:function(a,b,c){Bc.texParameteri(a,b,c)},s:gd,r:function(a,b){hd();a=new Date(1E3*G[a>>2]);G[b>>2]=a.getSeconds();G[b+4>>2]=a.getMinutes();G[b+8>>2]=a.getHours();G[b+12>>2]=a.getDate();G[b+16>>2]=a.getMonth();G[b+20>>2]=a.getFullYear()-1900;G[b+24>>2]=a.getDay();var c=new Date(a.getFullYear(),0,1);
116
116
  G[b+28>>2]=(a.getTime()-c.getTime())/864E5|0;G[b+36>>2]=-(60*a.getTimezoneOffset());var d=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();c=c.getTimezoneOffset();a=(d!=c&&a.getTimezoneOffset()==Math.min(c,d))|0;G[b+32>>2]=a;a=G[ld()+(a?4:0)>>2];G[b+40>>2]=a;return b},Q:function(){return 6},z:function(){return 28},A:function(a,b,c,d){return rd(a,b,c,d)},d:function(a){var b=Date.now()/1E3|0;a&&(G[a>>2]=b);return b}},Z=function(){function a(c){e.asm=c.exports;la=e.asm.S;Ea();I=e.asm.X;Ga.unshift(e.asm.T);
117
117
  Oa()}var b={a:sd};Na();if(e.instantiateWasm)try{return e.instantiateWasm(b,a)}catch(c){return n("Module.instantiateWasm callback failed with error: "+c),!1}b=Ra(b);a(b[0]);return e.asm}();e.___wasm_call_ctors=Z.T;e._zappar_has_initialized=Z.U;e._zappar_invert=Z.V;e._zappar_loaded=Z.W;e._zappar_pipeline_create=Z.Y;e._zappar_pipeline_destroy=Z.Z;e._zappar_pipeline_camera_frame_submit=Z._;e._zappar_pipeline_camera_frame_submit_raw_pointer=Z.$;e._zappar_pipeline_frame_update=Z.aa;
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zappar/zappar-cv",
3
- "version": "3.0.0-alpha.2",
3
+ "version": "3.0.0-alpha.4",
4
4
  "description": "Zappar's core computer vision library, supporting image, face and world tracking.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",