@zappar/zappar-cv 3.3.0-beta.1 → 3.4.0-beta.0

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.
Files changed (146) hide show
  1. package/README.md +2 -2
  2. package/lib/bridged-camera-source.d.ts +2 -0
  3. package/lib/bridged-camera-source.js +13 -0
  4. package/lib/bridged-message.d.ts +1 -0
  5. package/lib/bridged-world-tracker.js +8 -6
  6. package/lib/camera-frame-data.d.ts +1 -2
  7. package/lib/ceres-worker.d.ts +1 -1
  8. package/lib/ceres-worker.js +5 -5
  9. package/lib/gen/zappar-bridge.d.ts +3 -1
  10. package/lib/gen/zappar-client.js +100 -71
  11. package/lib/gen/zappar-cwrap.js +27 -6
  12. package/lib/gen/zappar-native.d.ts +6 -3
  13. package/lib/gen/zappar-native.js +1 -0
  14. package/lib/gen/zappar-server.js +80 -68
  15. package/lib/gen/zappar.d.ts +3 -1
  16. package/lib/html-element-source.js +3 -4
  17. package/lib/index-standalone.js +1 -1
  18. package/lib/mstp-camera-source.d.ts +3 -0
  19. package/lib/mstp-camera-source.js +21 -0
  20. package/lib/native.js +20 -14
  21. package/lib/options.d.ts +2 -1
  22. package/lib/pipeline.d.ts +1 -0
  23. package/lib/pipeline.js +13 -0
  24. package/lib/profile.js +1 -2
  25. package/lib/src/additional.d.ts +49 -0
  26. package/lib/src/android-bridge-message-handler.d.ts +15 -0
  27. package/lib/src/array-from-string.d.ts +2 -0
  28. package/lib/src/bridged-camera-source.d.ts +53 -0
  29. package/lib/src/bridged-d3-tracker.d.ts +18 -0
  30. package/lib/src/bridged-message-parser.d.ts +12 -0
  31. package/lib/src/bridged-message.d.ts +79 -0
  32. package/lib/src/bridged-world-tracker.d.ts +21 -0
  33. package/lib/src/camera-frame-data.d.ts +10 -0
  34. package/lib/src/camera-source-map.d.ts +11 -0
  35. package/lib/src/camera-source.d.ts +28 -0
  36. package/lib/src/cameramodel.d.ts +2 -0
  37. package/lib/src/ceres-worker.d.ts +1 -0
  38. package/lib/src/compatibility.d.ts +5 -0
  39. package/lib/src/data-download.d.ts +8 -0
  40. package/lib/src/deserializer.d.ts +41 -0
  41. package/lib/src/direct.d.ts +3 -0
  42. package/lib/src/drawaxis.d.ts +2 -0
  43. package/lib/src/drawcamera.d.ts +12 -0
  44. package/lib/src/drawface.d.ts +16 -0
  45. package/lib/src/drawfaceproject.d.ts +15 -0
  46. package/lib/src/drawgrid.d.ts +2 -0
  47. package/lib/src/drawmesh.d.ts +14 -0
  48. package/lib/src/drawplane.d.ts +2 -0
  49. package/lib/src/drawpoints.d.ts +11 -0
  50. package/lib/src/drawpointswithtype.d.ts +13 -0
  51. package/lib/src/drawpolygon.d.ts +5 -0
  52. package/lib/src/drawpreviewmesh.d.ts +16 -0
  53. package/lib/src/drawquad.d.ts +2 -0
  54. package/lib/src/event.d.ts +30 -0
  55. package/lib/src/facelandmark.d.ts +11 -0
  56. package/lib/src/facelandmarkdata.d.ts +4 -0
  57. package/lib/src/facelandmarkinterface.d.ts +5 -0
  58. package/lib/src/facemesh.d.ts +27 -0
  59. package/lib/src/gen/zappar-bridge.d.ts +182 -0
  60. package/lib/src/gen/zappar-client.d.ts +26 -0
  61. package/lib/src/gen/zappar-cwrap.d.ts +12 -0
  62. package/lib/src/gen/zappar-native.d.ts +256 -0
  63. package/lib/src/gen/zappar-server.d.ts +50 -0
  64. package/lib/src/gen/zappar.d.ts +311 -0
  65. package/lib/src/gfx.d.ts +1 -0
  66. package/lib/src/gl-state-manager.d.ts +9 -0
  67. package/lib/src/html-element-source.d.ts +42 -0
  68. package/lib/src/image-process-gl.d.ts +40 -0
  69. package/lib/src/imagebitmap-camera-source.d.ts +39 -0
  70. package/lib/src/imagetracker-previewmesh.d.ts +2 -0
  71. package/lib/src/imagetracker.d.ts +43 -0
  72. package/lib/src/index-standalone.d.ts +3 -0
  73. package/lib/src/index.d.ts +7 -0
  74. package/lib/src/landmarkdatagenerate.d.ts +2 -0
  75. package/lib/src/loglevel.d.ts +5 -0
  76. package/lib/src/messages.d.ts +13 -0
  77. package/lib/src/mstp-camera-source.d.ts +44 -0
  78. package/lib/src/native.d.ts +3 -0
  79. package/lib/src/options.d.ts +5 -0
  80. package/lib/src/permission.d.ts +12 -0
  81. package/lib/src/pipeline.d.ts +88 -0
  82. package/lib/src/profile.d.ts +24 -0
  83. package/lib/src/riff-reader.d.ts +18 -0
  84. package/lib/src/sequencerecorder.d.ts +99 -0
  85. package/lib/src/sequencesource.d.ts +25 -0
  86. package/lib/src/serializer.d.ts +60 -0
  87. package/lib/src/shader.d.ts +2 -0
  88. package/lib/src/source.d.ts +22 -0
  89. package/lib/src/tr.d.ts +6 -0
  90. package/lib/src/tracing/jsontracer.d.ts +14 -0
  91. package/lib/src/tracing/performancetracer.d.ts +11 -0
  92. package/lib/src/tracing/sharedtracer.d.ts +2 -0
  93. package/lib/src/tracing/usertimingtracer.d.ts +10 -0
  94. package/lib/src/version.d.ts +1 -0
  95. package/lib/src/worker-client.d.ts +4 -0
  96. package/lib/src/worker-imagebitmap.d.ts +5 -0
  97. package/lib/src/worker-messages.d.ts +11 -0
  98. package/lib/src/worker-server.d.ts +3 -0
  99. package/lib/src/worker.d.ts +1 -0
  100. package/lib/src/workerinterface.d.ts +110 -0
  101. package/lib/src/yuv-conversion-gl.d.ts +44 -0
  102. package/lib/tests/barcode-finder.d.ts +1 -0
  103. package/lib/tests/camera-data-raw.d.ts +1 -0
  104. package/lib/tests/camera-data-rgb.d.ts +1 -0
  105. package/lib/tests/camera-far-near.d.ts +1 -0
  106. package/lib/tests/camera-only.d.ts +1 -0
  107. package/lib/tests/common.d.ts +15 -0
  108. package/lib/tests/d3-tracking.d.ts +1 -0
  109. package/lib/tests/drawanchor.d.ts +3 -0
  110. package/lib/tests/face-landmarks.d.ts +1 -0
  111. package/lib/tests/face-tracking.d.ts +1 -0
  112. package/lib/tests/image-tracking-cylinder.d.ts +1 -0
  113. package/lib/tests/image-tracking-preview-mesh.d.ts +1 -0
  114. package/lib/tests/image-tracking.d.ts +1 -0
  115. package/lib/tests/instant-tracking.d.ts +1 -0
  116. package/lib/tests/no-rendering.d.ts +1 -0
  117. package/lib/tests/sequence-preview.d.ts +1 -0
  118. package/lib/tests/two-pipelines.d.ts +1 -0
  119. package/lib/tests/video-face-tracking.d.ts +1 -0
  120. package/lib/tests/world-tracking-camera-offset-anchor.d.ts +1 -0
  121. package/lib/tests/world-tracking-meshes.d.ts +1 -0
  122. package/lib/tests/world-tracking-plane-offset-anchor.d.ts +1 -0
  123. package/lib/tests/world-tracking.d.ts +1 -0
  124. package/lib/tests/zapcode-tracking.d.ts +1 -0
  125. package/lib/version.d.ts +1 -1
  126. package/lib/version.js +1 -1
  127. package/lib/worker-client.d.ts +1 -1
  128. package/lib/worker-client.js +23 -9
  129. package/lib/worker-messages.d.ts +2 -1
  130. package/lib/worker-messages.js +2 -1
  131. package/lib/worker-server.js +27 -10
  132. package/lib/workerinterface.d.ts +2 -1
  133. package/lib/zappar-cv.js +1 -1
  134. package/lib/zappar-cv.wasm +0 -0
  135. package/package.json +2 -4
  136. package/umd/169.zappar-cv.js +0 -1
  137. package/umd/25.zappar-cv.js +0 -1
  138. package/umd/287.zappar-cv.js +0 -1
  139. package/umd/482727c0e7dd40d73f5a.zbin +0 -0
  140. package/umd/670905e7f3a8925b89cb.wasm +0 -0
  141. package/umd/867.zappar-cv.js +0 -1
  142. package/umd/b4f46e148a3b3b5aef90.zbin +0 -0
  143. package/umd/f7b62a3a53b5c9b3222b.zbin +0 -0
  144. package/umd/zappar-cv-ceres.worker.js +0 -1
  145. package/umd/zappar-cv.js +0 -1
  146. package/umd/zappar-cv.worker.js +0 -1
@@ -0,0 +1 @@
1
+ export declare const gfx = "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"250\" height=\"80.408\" viewBox=\"0 0 250 80.408\"><defs><filter id=\"a\" x=\"0\" y=\"1.182\" width=\"250\" height=\"79.226\" filterUnits=\"userSpaceOnUse\"><feOffset dy=\"3\" input=\"SourceAlpha\"/><feGaussianBlur stdDeviation=\"3\" result=\"b\"/><feFlood flood-opacity=\"0.161\"/><feComposite operator=\"in\" in2=\"b\"/><feComposite in=\"SourceGraphic\"/></filter><filter id=\"c\" x=\"6.929\" y=\"0\" width=\"111.975\" height=\"40.988\" filterUnits=\"userSpaceOnUse\"><feOffset dy=\"3\" input=\"SourceAlpha\"/><feGaussianBlur stdDeviation=\"3\" result=\"d\"/><feFlood flood-opacity=\"0.161\"/><feComposite operator=\"in\" in2=\"d\"/><feComposite in=\"SourceGraphic\"/></filter></defs><g transform=\"translate(-26.873 -414.029)\"><g transform=\"translate(44 423.332)\"><g transform=\"translate(0 0.635)\" style=\"isolation:isolate\"><g transform=\"translate(0 0)\"><g transform=\"matrix(1, 0, 0, 1, -17.13, -9.94)\" filter=\"url(#a)\"><path d=\"M55.766,44.97V11.8h8.272v2.6h.089a8.258,8.258,0,0,1,7.046-3.357,11.4,11.4,0,0,1,8.5,3.686,12.667,12.667,0,0,1,3.278,8.622,12.509,12.509,0,0,1-3.25,8.57,11.353,11.353,0,0,1-8.429,3.6,9.533,9.533,0,0,1-7.229-2.95V43.378l-8.269,1.594h0Zm8-21.671a4.958,4.958,0,0,0,5.319,5.15A4.957,4.957,0,0,0,74.4,23.3a5.321,5.321,0,0,0-10.638,0ZM16.105,18.412H2.752V11.038H30.9L14.887,37.16H38.22L0,44.534ZM131.469,38.45a.761.761,0,0,1-.484-.166.582.582,0,0,1-.228-.419l-.553-3.586a12.243,12.243,0,0,1-1.782-.721l-2.789,2.084a.718.718,0,0,1-.5.176.688.688,0,0,1-.495-.214,25.864,25.864,0,0,1-3.264-3.274.754.754,0,0,1,.018-.9c.2-.277.543-.713,1.01-1.3.483-.6.832-1.05,1.068-1.374a9.614,9.614,0,0,1-.811-1.929l-3.62-.527a.631.631,0,0,1-.416-.243.728.728,0,0,1-.159-.458V21.283a.743.743,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.511,9.511,0,0,1,.772-1.792c-.523-.733-1.235-1.638-2.117-2.69a.731.731,0,0,1-.2-.467.82.82,0,0,1,.178-.449,19.577,19.577,0,0,1,1.949-2.095c.953-.924,1.582-1.393,1.87-1.393a.861.861,0,0,1,.515.195l2.729,2.084a11.551,11.551,0,0,1,1.8-.741,31.446,31.446,0,0,1,.573-3.623.666.666,0,0,1,.712-.546h4.392a.757.757,0,0,1,.485.166.58.58,0,0,1,.228.419l.553,3.584a12.576,12.576,0,0,1,1.782.722l2.809-2.085a.641.641,0,0,1,.475-.176.776.776,0,0,1,.5.195,27.035,27.035,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.742.742,0,0,1-.159.447c-.2.271-.525.7-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.8,11.8,0,0,1,.812,1.91l3.62.545a.626.626,0,0,1,.416.244.736.736,0,0,1,.158.457v4.325a.755.755,0,0,1-.158.449.6.6,0,0,1-.4.253l-3.66.545a12.692,12.692,0,0,1-.772,1.774c.465.653,1.177,1.559,2.117,2.688a.751.751,0,0,1,.2.488.648.648,0,0,1-.178.448,19.638,19.638,0,0,1-1.958,2.1c-.947.918-1.573,1.384-1.861,1.384a.976.976,0,0,1-.515-.176l-2.731-2.1a11.361,11.361,0,0,1-1.8.741,31.849,31.849,0,0,1-.573,3.625.668.668,0,0,1-.713.546Zm-1.385-18.491a4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.931,4.931,0,0,0,0-7.053,5.117,5.117,0,0,0-7.163,0Zm69.969,14.868a18.523,18.523,0,0,1-4.932-2.073l1.705-6.1A13.441,13.441,0,0,0,200.779,29a12.14,12.14,0,0,0,4.344.818,4.644,4.644,0,0,0,2.351-.482,1.538,1.538,0,0,0,.806-1.4q0-1.5-3.25-2.242-1.061-.246-1.705-.425a12.335,12.335,0,0,1-5.358-2.589,5.5,5.5,0,0,1-1.671-4.157,6.323,6.323,0,0,1,2.547-5.267,10.993,10.993,0,0,1,6.9-1.972,21.351,21.351,0,0,1,4.552.5,25.439,25.439,0,0,1,4.736,1.557l-1.705,5.491a14.244,14.244,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.561,4.227,4.227,0,0,0-2.121.426,1.357,1.357,0,0,0-.714,1.232q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.187,5.935,2.79a5.728,5.728,0,0,1,1.67,4.337A6.781,6.781,0,0,1,213,33.37a11.48,11.48,0,0,1-7.259,2.14A22.577,22.577,0,0,1,200.053,34.827ZM30.568,31.834a12.566,12.566,0,0,1-3.292-8.59,12.567,12.567,0,0,1,3.247-8.568,11.3,11.3,0,0,1,8.423-3.638,9.519,9.519,0,0,1,7.217,3V11.8h8.264V34.735H46.163V32.186h-.09c-1.32,2.071-3.951,3.308-7.038,3.308A11.412,11.412,0,0,1,30.568,31.834Zm5.245-8.545a4.95,4.95,0,0,0,5.312,5.141,4.95,4.95,0,0,0,5.312-5.141A5.023,5.023,0,0,0,41.125,18.1,5.023,5.023,0,0,0,35.813,23.289Zm69.2,11.554-3.527-10.452q-.282-.892-.505-1.8t-.412-1.8a30.821,30.821,0,0,1-.917,3.454l-.047.16L96.1,34.842H90.176l-9.925-23.1h8.632l3.552,10.223q.4,1.12.634,1.955t.377,1.635a23.558,23.558,0,0,1,.917-3.179q.093-.274.141-.411l3.528-10.223h5.056l3.5,10.2.07.183a20.724,20.724,0,0,1,.988,3.43q.141-.732.364-1.532t.647-2.058l3.574-10.223h8.678l-9.971,23.1Zm80.154-.092-8.587-9.841v9.841h-7.888V1.5L176.583,0V22.28l8.272-9.665h9.96L184.584,23.266l11.156,11.485Zm-35.09,0V11.782h8.272v3.761h.091a8.131,8.131,0,0,1,7.546-4.074h1.593V19.3a6.8,6.8,0,0,0-3.5-.761c-4.593,0-5.728,3-5.728,6.941v9.268Z\" transform=\"translate(17.13 15.31)\"/></g><g transform=\"matrix(1, 0, 0, 1, -17.13, -9.94)\" filter=\"url(#c)\"><path d=\"M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z\" transform=\"translate(17.85 28.4)\"/></g></g></g><g transform=\"translate(0 0)\"><g transform=\"translate(0 5.371)\"><path d=\"M11.76,24.456A11.41,11.41,0,0,1,3.292,20.8,12.564,12.564,0,0,1,0,12.206,12.569,12.569,0,0,1,3.246,3.638,11.307,11.307,0,0,1,11.67,0a9.519,9.519,0,0,1,7.217,3V.759h8.264V23.7H18.887V21.148H18.8C17.478,23.219,14.846,24.456,11.76,24.456ZM13.849,7.064A5.023,5.023,0,0,0,8.537,12.25a4.95,4.95,0,0,0,5.312,5.141A4.95,4.95,0,0,0,19.16,12.25,5.023,5.023,0,0,0,13.849,7.064Z\" transform=\"translate(27.277 11.038)\" fill=\"#fff\"/><path d=\"M0,33.931V.758H8.271v2.6H8.36A8.258,8.258,0,0,1,15.406,0,11.4,11.4,0,0,1,23.9,3.686a12.665,12.665,0,0,1,3.278,8.622,12.508,12.508,0,0,1-3.25,8.57,11.351,11.351,0,0,1-8.429,3.6,9.535,9.535,0,0,1-7.229-2.95V32.337L0,33.931ZM13.317,7.07A5.028,5.028,0,0,0,8,12.259a4.957,4.957,0,0,0,5.319,5.15,4.957,4.957,0,0,0,5.319-5.15A5.028,5.028,0,0,0,13.317,7.07Z\" transform=\"translate(55.766 11.041)\" fill=\"#fff\"/><path d=\"M22.836,0l3.5,10.2.07.183a20.748,20.748,0,0,1,.988,3.43q.141-.731.364-1.532t.647-2.058L31.985,0h8.678L30.691,23.1H24.764L21.237,12.647q-.282-.891-.505-1.8t-.412-1.8A30.927,30.927,0,0,1,19.4,12.51l-.047.16L15.851,23.1H9.925L0,0H8.631l3.552,10.223q.4,1.121.635,1.955t.377,1.635a23.522,23.522,0,0,1,.917-3.179q.093-.274.141-.411L17.78,0h5.056\" transform=\"translate(80.251 11.743)\" fill=\"#fff\"/><path d=\"M0,34.75V1.5L7.888,0V22.28l8.272-9.665H26.12L15.889,23.266,27.045,34.75H16.475L7.888,24.91v9.84H0\" transform=\"translate(168.695 0)\" fill=\"#fff\"/><path d=\"M0,21.47l1.705-6.1a13.453,13.453,0,0,0,3.952,2.342A12.145,12.145,0,0,0,10,18.534a4.643,4.643,0,0,0,2.351-.482,1.539,1.539,0,0,0,.807-1.4q0-1.5-3.25-2.241-1.06-.246-1.705-.426A12.325,12.325,0,0,1,2.846,11.4,5.5,5.5,0,0,1,1.176,7.239,6.324,6.324,0,0,1,3.722,1.972,11,11,0,0,1,10.624,0a21.365,21.365,0,0,1,4.551.5,25.45,25.45,0,0,1,4.736,1.558l-1.706,5.49a14.24,14.24,0,0,0-3.319-1.636,10.6,10.6,0,0,0-3.364-.56A4.22,4.22,0,0,0,9.4,5.782a1.356,1.356,0,0,0-.714,1.233q0,1.211,3.227,2.04.737.2,1.106.291,4.264,1.188,5.935,2.79a5.728,5.728,0,0,1,1.671,4.337,6.782,6.782,0,0,1-2.743,5.614,11.478,11.478,0,0,1-7.259,2.14,22.565,22.565,0,0,1-5.693-.683A18.517,18.517,0,0,1,0,21.47\" transform=\"translate(195.121 11.284)\" fill=\"#fff\"/><path d=\"M8.273,4.075h.091A8.13,8.13,0,0,1,15.909,0H17.5V7.834A6.8,6.8,0,0,0,14,7.074c-4.593,0-5.728,3-5.728,6.941v9.268H0V.313H8.273V4.075\" transform=\"translate(150.08 11.469)\" fill=\"#fff\"/><path d=\"M17.392,29.929H13a.76.76,0,0,1-.485-.166.579.579,0,0,1-.227-.419l-.553-3.586a12.3,12.3,0,0,1-1.781-.721L7.163,27.123a.719.719,0,0,1-.495.176.687.687,0,0,1-.495-.214A25.873,25.873,0,0,1,2.91,23.81a.753.753,0,0,1,.019-.9c.2-.277.542-.713,1.009-1.3.483-.6.832-1.05,1.068-1.374a9.591,9.591,0,0,1-.811-1.929l-3.62-.526a.63.63,0,0,1-.416-.243A.729.729,0,0,1,0,17.089V12.762a.746.746,0,0,1,.159-.448.6.6,0,0,1,.376-.253l3.68-.546a9.5,9.5,0,0,1,.772-1.792C4.464,8.991,3.752,8.085,2.87,7.034a.732.732,0,0,1-.2-.468.82.82,0,0,1,.179-.449A19.622,19.622,0,0,1,4.8,4.023C5.751,3.1,6.38,2.631,6.668,2.631a.859.859,0,0,1,.515.194L9.913,4.91a11.536,11.536,0,0,1,1.8-.741A31.372,31.372,0,0,1,12.287.546.665.665,0,0,1,13,0h4.392a.755.755,0,0,1,.485.166.581.581,0,0,1,.229.419l.553,3.584a12.543,12.543,0,0,1,1.781.722L23.25,2.807a.641.641,0,0,1,.475-.176.775.775,0,0,1,.495.194,27.092,27.092,0,0,1,3.264,3.313.625.625,0,0,1,.139.429.745.745,0,0,1-.159.448c-.2.271-.525.695-1.008,1.3-.467.581-.827,1.043-1.069,1.373a11.784,11.784,0,0,1,.812,1.91l3.62.545a.625.625,0,0,1,.416.244.736.736,0,0,1,.157.458v4.325a.754.754,0,0,1-.157.449.606.606,0,0,1-.4.253l-3.66.545a12.628,12.628,0,0,1-.772,1.774c.465.654,1.177,1.559,2.117,2.688a.752.752,0,0,1,.2.488.648.648,0,0,1-.177.448,19.641,19.641,0,0,1-1.959,2.1c-.947.918-1.573,1.384-1.86,1.384a.978.978,0,0,1-.515-.176l-2.731-2.1a11.429,11.429,0,0,1-1.8.741,32.016,32.016,0,0,1-.573,3.624A.668.668,0,0,1,17.392,29.929ZM15.2,9.976a4.938,4.938,0,0,0-3.582,1.463,4.935,4.935,0,0,0,0,7.053,5.12,5.12,0,0,0,7.163,0,4.932,4.932,0,0,0,0-7.053A4.938,4.938,0,0,0,15.2,9.976Z\" transform=\"translate(118.47 8.521)\" fill=\"#fff\"/><path d=\"M0,33.5,16.106,7.374H2.752V0H30.9L14.887,26.122H38.22L0,33.5\" transform=\"translate(0 11.038)\" fill=\"#fff\"/></g><path d=\"M3.576-12.852v-4.3H6.628a2.867,2.867,0,0,1,1.945.55A2.034,2.034,0,0,1,9.188-15a2.06,2.06,0,0,1-.615,1.608,2.784,2.784,0,0,1-1.945.542ZM2.017-18.464V-6.748H3.576v-4.792H7.153a3.569,3.569,0,0,0,2.683-.9A3.478,3.478,0,0,0,10.747-15a3.45,3.45,0,0,0-.911-2.552,3.638,3.638,0,0,0-2.683-.911Zm11.421,7.483a4.221,4.221,0,0,1,.205-1.37,2.957,2.957,0,0,1,.566-1.009,2.411,2.411,0,0,1,.845-.624A2.515,2.515,0,0,1,16.08-14.2a2.515,2.515,0,0,1,1.026.213,2.411,2.411,0,0,1,.845.624,2.957,2.957,0,0,1,.566,1.009,4.221,4.221,0,0,1,.205,1.37,4.221,4.221,0,0,1-.205,1.37,2.867,2.867,0,0,1-.566,1,2.457,2.457,0,0,1-.845.615,2.515,2.515,0,0,1-1.026.213,2.515,2.515,0,0,1-1.026-.213,2.457,2.457,0,0,1-.845-.615,2.867,2.867,0,0,1-.566-1A4.221,4.221,0,0,1,13.438-10.981Zm-1.477,0a5.573,5.573,0,0,0,.263,1.739,3.97,3.97,0,0,0,.788,1.4,3.623,3.623,0,0,0,1.3.935,4.4,4.4,0,0,0,1.772.336A4.381,4.381,0,0,0,17.86-6.9a3.641,3.641,0,0,0,1.288-.935,3.97,3.97,0,0,0,.788-1.4,5.573,5.573,0,0,0,.263-1.739,5.65,5.65,0,0,0-.263-1.748,3.96,3.96,0,0,0-.788-1.411,3.729,3.729,0,0,0-1.288-.944,4.29,4.29,0,0,0-1.78-.345,4.3,4.3,0,0,0-1.772.345,3.71,3.71,0,0,0-1.3.944,3.96,3.96,0,0,0-.788,1.411A5.65,5.65,0,0,0,11.961-10.981Zm18.28,4.234,2.708-8.484H31.5L29.6-8.29h-.033L27.8-15.231H26.27L24.564-8.29h-.033l-1.92-6.941H21.068l2.724,8.484H25.3l1.707-6.744h.033l1.723,6.744ZM40.169-11.8H35.3a2.905,2.905,0,0,1,.213-.927A2.473,2.473,0,0,1,36-13.492a2.255,2.255,0,0,1,.747-.517,2.429,2.429,0,0,1,.976-.189,2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,40.169-11.8Zm1.346,2.363H40.136a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.105,5.105,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,41.515-9.439Zm1.526-5.793v8.484h1.395v-3.774a5.8,5.8,0,0,1,.164-1.452,2.784,2.784,0,0,1,.525-1.075,2.251,2.251,0,0,1,.952-.673,3.945,3.945,0,0,1,1.428-.23v-1.477a3.135,3.135,0,0,0-1.871.459,3.779,3.779,0,0,0-1.247,1.526h-.033v-1.789ZM54.15-11.8H49.276a2.905,2.905,0,0,1,.213-.927,2.473,2.473,0,0,1,.492-.763,2.255,2.255,0,0,1,.747-.517A2.429,2.429,0,0,1,51.7-14.2a2.386,2.386,0,0,1,.96.189,2.415,2.415,0,0,1,.755.509,2.391,2.391,0,0,1,.509.763A2.854,2.854,0,0,1,54.15-11.8ZM55.5-9.439H54.117a1.983,1.983,0,0,1-.747,1.247,2.414,2.414,0,0,1-1.452.41,2.889,2.889,0,0,1-1.2-.23,2.348,2.348,0,0,1-.837-.615,2.4,2.4,0,0,1-.476-.886,3.367,3.367,0,0,1-.131-1.058h6.35a6.754,6.754,0,0,0-.139-1.625,4.7,4.7,0,0,0-.624-1.575,3.716,3.716,0,0,0-1.2-1.19,3.48,3.48,0,0,0-1.879-.468,3.858,3.858,0,0,0-1.6.328,3.76,3.76,0,0,0-1.264.919,4.236,4.236,0,0,0-.829,1.395,5.1,5.1,0,0,0-.3,1.772,6.8,6.8,0,0,0,.287,1.789,3.9,3.9,0,0,0,.763,1.411,3.478,3.478,0,0,0,1.255.919,4.358,4.358,0,0,0,1.764.328,3.851,3.851,0,0,0,2.4-.722A3.39,3.39,0,0,0,55.5-9.439Zm2.593-1.477a5.581,5.581,0,0,1,.131-1.214,3.212,3.212,0,0,1,.427-1.05,2.221,2.221,0,0,1,.788-.738,2.4,2.4,0,0,1,1.2-.279,2.589,2.589,0,0,1,1.231.271,2.389,2.389,0,0,1,.829.714,2.985,2.985,0,0,1,.468,1.026,4.889,4.889,0,0,1,.148,1.206,4.919,4.919,0,0,1-.139,1.165,3.053,3.053,0,0,1-.451,1.026,2.4,2.4,0,0,1-.8.73,2.4,2.4,0,0,1-1.2.279,2.491,2.491,0,0,1-1.173-.263,2.332,2.332,0,0,1-.82-.706,3.122,3.122,0,0,1-.476-1.009A4.338,4.338,0,0,1,58.088-10.916Zm6.564,4.168V-18.464H63.257V-14.1h-.033a2.247,2.247,0,0,0-.566-.632,3.216,3.216,0,0,0-.714-.41,3.583,3.583,0,0,0-.755-.222,4.132,4.132,0,0,0-.706-.066,3.861,3.861,0,0,0-1.7.353,3.487,3.487,0,0,0-1.214.952,4.018,4.018,0,0,0-.722,1.4,5.985,5.985,0,0,0-.238,1.707,5.8,5.8,0,0,0,.246,1.707,4.218,4.218,0,0,0,.73,1.411,3.529,3.529,0,0,0,1.214.968,3.827,3.827,0,0,0,1.715.361,4.135,4.135,0,0,0,1.625-.312A2.053,2.053,0,0,0,63.224-7.9h.033v1.149Zm6.761-11.716V-6.748h1.395V-7.88h.033a2.247,2.247,0,0,0,.566.632,2.982,2.982,0,0,0,.714.4,3.874,3.874,0,0,0,.763.213,4.193,4.193,0,0,0,.7.066,3.94,3.94,0,0,0,1.7-.345,3.4,3.4,0,0,0,1.214-.944,4.018,4.018,0,0,0,.722-1.4,5.985,5.985,0,0,0,.238-1.707,5.8,5.8,0,0,0-.246-1.707,4.312,4.312,0,0,0-.73-1.419,3.488,3.488,0,0,0-1.214-.976,3.827,3.827,0,0,0-1.715-.361,4.043,4.043,0,0,0-1.625.32,2.088,2.088,0,0,0-1.083,1.026h-.033v-4.381Zm6.564,7.4a5.581,5.581,0,0,1-.131,1.214,3.212,3.212,0,0,1-.427,1.05,2.243,2.243,0,0,1-.779.738,2.385,2.385,0,0,1-1.206.279A2.589,2.589,0,0,1,74.2-8.052a2.389,2.389,0,0,1-.829-.714,2.985,2.985,0,0,1-.468-1.026A4.889,4.889,0,0,1,72.758-11a4.919,4.919,0,0,1,.139-1.165,3.053,3.053,0,0,1,.451-1.026,2.4,2.4,0,0,1,.8-.73,2.4,2.4,0,0,1,1.2-.279,2.491,2.491,0,0,1,1.173.263,2.332,2.332,0,0,1,.82.706,3.122,3.122,0,0,1,.476,1.009A4.338,4.338,0,0,1,77.976-11.063Zm6.449,5.448a8.871,8.871,0,0,1-.484,1.05,2.871,2.871,0,0,1-.525.7,1.782,1.782,0,0,1-.64.394,2.462,2.462,0,0,1-.812.123,3.721,3.721,0,0,1-.492-.033A2.324,2.324,0,0,1,81-3.5v-1.28a2.342,2.342,0,0,0,.418.139,1.765,1.765,0,0,0,.4.057,1.2,1.2,0,0,0,.714-.205,1.255,1.255,0,0,0,.435-.583L83.539-6.8l-3.364-8.434h1.575L84.228-8.29h.033l2.379-6.941h1.477Z\" transform=\"translate(0.722 18.464)\" fill=\"#fff\"/></g></g></g></svg>";
@@ -0,0 +1,9 @@
1
+ export declare class GLStateManager {
2
+ private _gl;
3
+ static get(gl: WebGLRenderingContext): GLStateManager;
4
+ private _viewports;
5
+ private _underlyingViewport;
6
+ private constructor();
7
+ push(): void;
8
+ pop(): void;
9
+ }
@@ -0,0 +1,42 @@
1
+ import { camera_profile_t, zappar_pipeline_t } from "./gen/zappar";
2
+ import { Source } from "./source";
3
+ import { zappar_html_element_source_t } from "./additional";
4
+ export declare class HTMLElementSource extends Source {
5
+ protected _video: HTMLVideoElement | HTMLImageElement;
6
+ protected _pipeline: zappar_pipeline_t;
7
+ protected _isPaused: boolean;
8
+ protected _hadFrames: boolean;
9
+ protected _isUserFacing: boolean;
10
+ protected _cameraToScreenRotation: number;
11
+ private _isUploadFrame;
12
+ private _currentVideoTexture;
13
+ private _imageProcessor;
14
+ private _cameraToDeviceTransform;
15
+ private _cameraToDeviceTransformUserFacing;
16
+ private _cameraModel;
17
+ private _profile;
18
+ private _waitingForFrame;
19
+ private _rgbOffscreenCanvas;
20
+ private _rgbOffscreenContext;
21
+ private _rgbDomCanvas;
22
+ private _rgbDomContext;
23
+ private _currentRgbFrame;
24
+ private _isVideoElement;
25
+ static createVideoElementSource(p: zappar_pipeline_t, element: HTMLVideoElement | HTMLImageElement): zappar_html_element_source_t;
26
+ static getVideoElementSource(m: zappar_html_element_source_t): HTMLElementSource | undefined;
27
+ constructor(_video: HTMLVideoElement | HTMLImageElement, _pipeline: zappar_pipeline_t);
28
+ private _resetGLContext;
29
+ destroy(): void;
30
+ pause(): void;
31
+ start(): void;
32
+ getFrame(currentlyProcessing: boolean): void;
33
+ private _lastPresentedFrames;
34
+ private _frameTime;
35
+ private _requestVideoFrameCallback;
36
+ private _processFrame;
37
+ uploadGL(): void;
38
+ setProfile(p: camera_profile_t): void;
39
+ private _generateRGBFrame;
40
+ private _generateOffscreenRgbFrame;
41
+ private _generateDomRgbFrame;
42
+ }
@@ -0,0 +1,40 @@
1
+ import { camera_profile_t } from "./gen/zappar-native";
2
+ export interface ProcessedFrame {
3
+ data?: ArrayBuffer;
4
+ texture: WebGLTexture | undefined;
5
+ dataWidth: number;
6
+ dataHeight: number;
7
+ uvTransform?: Float32Array;
8
+ userFacing: boolean;
9
+ }
10
+ export declare class ImageProcessGL {
11
+ private _gl;
12
+ protected _isPaused: boolean;
13
+ protected _hadFrames: boolean;
14
+ protected _isUserFacing: boolean;
15
+ protected _cameraToScreenRotation: number;
16
+ private _isUploadFrame;
17
+ private _computedTransformRotation;
18
+ private _computedFrontCameraRotation;
19
+ private _cameraUvTransform;
20
+ private _framebufferWidth;
21
+ private _framebufferHeight;
22
+ private _framebufferId;
23
+ private _renderTexture;
24
+ private _vertexBuffer;
25
+ private _indexBuffer;
26
+ private _greyscaleShader;
27
+ private _isWebGL2;
28
+ private _instancedArraysExtension;
29
+ constructor(_gl: WebGL2RenderingContext | WebGLRenderingContext);
30
+ resetGLContext(): void;
31
+ destroy(): void;
32
+ uploadFrame(texture: WebGLTexture, img: HTMLVideoElement | HTMLImageElement | ImageBitmap, rotation: number, fc: boolean, cp: camera_profile_t): void;
33
+ readFrame(texture: WebGLTexture, pixels: ArrayBuffer, cp: camera_profile_t): ProcessedFrame;
34
+ private _updateTransforms;
35
+ private _getCameraUvTransform;
36
+ private _getFramebuffer;
37
+ private _getVertexBuffer;
38
+ private _getIndexBuffer;
39
+ private _getGreyscaleShader;
40
+ }
@@ -0,0 +1,39 @@
1
+ import { camera_profile_t, zappar_camera_source_t, zappar_pipeline_t } from "./gen/zappar";
2
+ import { CameraFrameInfo, Source } from "./source";
3
+ export declare class ImageBitmapCameraSource extends Source {
4
+ private _impl;
5
+ private _pipeline;
6
+ private _deviceId;
7
+ static USER_DEFAULT_DEVICE_ID: string;
8
+ static DEFAULT_DEVICE_ID: string;
9
+ private _currentStream;
10
+ private _activeDeviceId;
11
+ private _isPaused;
12
+ private _isUserFacing;
13
+ private _hadFrames;
14
+ private _canvas;
15
+ private _context;
16
+ private _lastFrameTime;
17
+ private _video;
18
+ private _cameraToDeviceTransform;
19
+ private _cameraToDeviceTransformUserFacing;
20
+ private _cameraModel;
21
+ private _profile;
22
+ constructor(_impl: zappar_camera_source_t, _pipeline: zappar_pipeline_t, _deviceId: string);
23
+ destroy(): void;
24
+ setProfile(p: camera_profile_t): void;
25
+ private _stop;
26
+ pause(): void;
27
+ start(): void;
28
+ private _getConstraints;
29
+ getFrame(currentlyProcessing: boolean): void;
30
+ private _getUserMedia;
31
+ private _syncCamera;
32
+ private _hasStartedOrientation;
33
+ private _lastTimestamp;
34
+ private _deviceMotionListener;
35
+ private _startDeviceOrientation;
36
+ private _startDeviceMotion;
37
+ private _stopDeviceMotion;
38
+ uploadGL(info: CameraFrameInfo): void;
39
+ }
@@ -0,0 +1,2 @@
1
+ import { ParsedTargetInfo, PreviewMesh } from "./imagetracker";
2
+ export declare function getPreviewMesh(info: ParsedTargetInfo): PreviewMesh;
@@ -0,0 +1,43 @@
1
+ import { zappar_image_tracker_t, zappar_pipeline_t } from "./gen/zappar";
2
+ import { zappar } from "./gen/zappar-bridge";
3
+ import { image_target_type_t } from "./gen/zappar-native";
4
+ interface PreviewInfo {
5
+ compressed: Uint8Array;
6
+ mimeType: string;
7
+ image?: HTMLImageElement;
8
+ }
9
+ export interface PreviewMesh {
10
+ indices: Uint16Array;
11
+ vertices: Float32Array;
12
+ normals: Float32Array;
13
+ uvs: Float32Array;
14
+ }
15
+ export interface ParsedTargetInfo {
16
+ preview?: PreviewInfo;
17
+ previewMesh?: PreviewMesh;
18
+ physicalScaleFactor: number;
19
+ topRadius: number;
20
+ bottomRadius: number;
21
+ sideLength: number;
22
+ type: image_target_type_t;
23
+ trainedWidth: number;
24
+ trainedHeight: number;
25
+ }
26
+ export declare class ImageTracker {
27
+ private _client;
28
+ private _impl;
29
+ private _targets;
30
+ static create(pipeline: zappar_pipeline_t, client: zappar): zappar_image_tracker_t;
31
+ static get(p: zappar_image_tracker_t): ImageTracker | undefined;
32
+ private constructor();
33
+ destroy(): void;
34
+ loadFromMemory(data: ArrayBuffer): void;
35
+ targetCount(): number;
36
+ getTargetInfo(i: number): ParsedTargetInfo;
37
+ private _parseOdle;
38
+ private _parseOdleV1;
39
+ private _parseOdleV3;
40
+ getDecodedPreview(i: number): HTMLImageElement | undefined;
41
+ getPreviewMesh(i: number): PreviewMesh;
42
+ }
43
+ export {};
@@ -0,0 +1,3 @@
1
+ import { Options } from "./options";
2
+ export * from "./index";
3
+ export declare function initialize(opts?: Options): import(".").Zappar;
@@ -0,0 +1,7 @@
1
+ import { zappar } from "./gen/zappar";
2
+ import { Additional } from "./additional";
3
+ import { Options } from "./options";
4
+ export declare type Zappar = zappar & Additional;
5
+ export declare function initialize(opts?: Options): Zappar;
6
+ export { CameraFrameData } from './camera-frame-data';
7
+ export { zappar_image_tracker_t, zappar_instant_world_tracker_t, zappar_world_tracker_t, zappar_barcode_finder_t, zappar_face_tracker_t, zappar_face_landmark_t, zappar_zapcode_tracker_t, zappar_custom_anchor_t, zappar_d3_tracker_t, barcode_format_t, face_landmark_name_t, instant_world_tracker_transform_orientation_t, log_level_t, zappar_face_mesh_t, zappar_pipeline_t, zappar_camera_source_t, zappar_sequence_source_t, image_target_type_t, world_tracker_quality_t, camera_profile_t, transform_orientation_t, plane_orientation_t, anchor_status_t, } from "./gen/zappar";
@@ -0,0 +1,2 @@
1
+ export declare function generateDataJSON(): Promise<string>;
2
+ export declare function generateDataCPP(): Promise<string>;
@@ -0,0 +1,5 @@
1
+ import { log_level_t } from "./gen/zappar";
2
+ export declare function setLogLevel(l: log_level_t): void;
3
+ export declare function zcout(...args: any[]): void;
4
+ export declare function zcerr(...args: any[]): void;
5
+ export declare function zcwarn(...args: any[]): void;
@@ -0,0 +1,13 @@
1
+ import { Event, Event1 } from "./event";
2
+ export interface Msg {
3
+ msg: any;
4
+ transferables: any[];
5
+ }
6
+ export declare class MsgManager {
7
+ onOutgoingMessage: Event;
8
+ onIncomingMessage: Event1<any>;
9
+ private _outgoingMessages;
10
+ postIncomingMessage(msg: any): void;
11
+ postOutgoingMessage(msg: any, trans: any[]): void;
12
+ getOutgoingMessages(): Msg[];
13
+ }
@@ -0,0 +1,44 @@
1
+ import { camera_profile_t, zappar_camera_source_t, zappar_pipeline_t } from "./gen/zappar";
2
+ import { CameraFrameInfo, Source } from "./source";
3
+ export declare class MSTPCameraSource extends Source {
4
+ private _impl;
5
+ private _pipeline;
6
+ private _deviceId;
7
+ static USER_DEFAULT_DEVICE_ID: string;
8
+ static DEFAULT_DEVICE_ID: string;
9
+ private _currentStream;
10
+ private _activeDeviceId;
11
+ private _isPaused;
12
+ private _isUserFacing;
13
+ private _cameraToScreenRotation;
14
+ private _accelerometer?;
15
+ private _linearAcceleration?;
16
+ private _gyroscope?;
17
+ private _relativeOrientation?;
18
+ constructor(_impl: zappar_camera_source_t, _pipeline: zappar_pipeline_t, _deviceId: string);
19
+ destroy(): void;
20
+ private _stop;
21
+ pause(): void;
22
+ start(): void;
23
+ private _getConstraints;
24
+ getFrame(allowRead: boolean): void;
25
+ private _getUserMedia;
26
+ streamEnded(): void;
27
+ private _syncCamera;
28
+ setProfile(profile: camera_profile_t): void;
29
+ private _hasStartedOrientation;
30
+ private _lastTimestamp;
31
+ private _deviceMotionListener;
32
+ private _startDeviceOrientation;
33
+ private _startDeviceMotion;
34
+ private _lastAccelerometerTimestamp;
35
+ private _accelerometerReading;
36
+ private _lastLinearAccelerationTimestamp;
37
+ private _linearAccelerationReading;
38
+ private _lastGyroscopeReading;
39
+ private _gyroscopeReading;
40
+ private _lastReleativeOrientationReading;
41
+ private _relativeOrientationReading;
42
+ private _stopDeviceMotion;
43
+ uploadGL(info: CameraFrameInfo): void;
44
+ }
@@ -0,0 +1,3 @@
1
+ import { Zappar } from ".";
2
+ import { Options } from "./options";
3
+ export declare function initialize(opts?: Options): Zappar;
@@ -0,0 +1,5 @@
1
+ export interface Options {
2
+ worker?: Worker;
3
+ ceresWorker0?: Worker;
4
+ ceresWorker1?: Worker;
5
+ }
@@ -0,0 +1,12 @@
1
+ import { PermissionDeniedUIOptions, PermissionRequestUIOptions } from "./additional";
2
+ export declare function permissionGrantedCamera(): boolean;
3
+ export declare function permissionGrantedMotion(): boolean;
4
+ export declare function permissionDeniedCamera(): boolean;
5
+ export declare function permissionDeniedMotion(): boolean;
6
+ export declare function permissionDeniedAny(): boolean;
7
+ export declare function permissionGrantedAll(): boolean;
8
+ export declare function permissionRequestAll(): Promise<void>;
9
+ export declare function permissionRequestCamera(): Promise<void>;
10
+ export declare function permissionRequestMotion(): Promise<false | undefined>;
11
+ export declare function permissionRequestUI(options?: PermissionRequestUIOptions): Promise<boolean>;
12
+ export declare function permissionDeniedUI(options?: PermissionDeniedUIOptions): void;
@@ -0,0 +1,88 @@
1
+ /// <reference types="dom-webcodecs" />
2
+ import { zappar_pipeline_t, zappar_camera_source_t } from "./gen/zappar";
3
+ import { camera_profile_t } from "./gen/zappar-native";
4
+ import { zappar_client } from "./gen/zappar-client";
5
+ import { MsgManager } from "./messages";
6
+ import { Source, CameraFrameInfo } from "./source";
7
+ import { CameraDataRawS2C, CameraFrameReturnS2C, ImageBitmapS2C, VideoFrameS2C } from "./workerinterface";
8
+ import { FaceMesh } from "./facemesh";
9
+ import { Event } from "./event";
10
+ import { ImageTracker } from "./imagetracker";
11
+ import { zappar } from "./gen/zappar-bridge";
12
+ import { CameraFrameData, CameraFrameDataRGB } from "./camera-frame-data";
13
+ export declare class Pipeline {
14
+ private _client;
15
+ private _impl;
16
+ private _mgr;
17
+ currentCameraSource: Source | undefined;
18
+ pendingMessages: any[];
19
+ private cameraTokens;
20
+ private nextCameraToken;
21
+ private tokensInFlight;
22
+ glContext: WebGLRenderingContext | WebGL2RenderingContext | undefined;
23
+ private videoTextures;
24
+ cameraPixelArrays: ArrayBuffer[];
25
+ private _cameraDraw;
26
+ private _faceDraw;
27
+ private _imageTargetPreviewDraw;
28
+ private _faceProjectDraw;
29
+ private _sequenceRecorder;
30
+ private _sequenceRecordDeviceAttitudeMatrices;
31
+ private _sequenceRecorderFirstCameraToken;
32
+ private _cameraFrameDataPromises;
33
+ private _cameraFrameDataResolves;
34
+ private _cameraFrameDataRejects;
35
+ private _cameraFrameDataEnabled;
36
+ private _cameraFrameDataRGBEnabled;
37
+ onGLContextReset: Event;
38
+ static create(client: zappar, mgr: MsgManager): zappar_pipeline_t;
39
+ static get(p: zappar_pipeline_t): Pipeline | undefined;
40
+ private constructor();
41
+ frameUpdate(client: zappar_client): void;
42
+ cleanOldFrames(): void;
43
+ cameraFrameDataRawResult(msg: CameraDataRawS2C): void;
44
+ cameraTokenReturn(msg: CameraFrameReturnS2C): void;
45
+ sequenceRecordStart(expectedFrames: number): void;
46
+ sequenceRecordStop(): void;
47
+ sequenceRecordData(): Uint8Array;
48
+ sequenceRecordClear(): void;
49
+ sequenceRecordDeviceAttitudeMatrices(v: boolean): void;
50
+ getVideoTexture(): WebGLTexture | undefined;
51
+ getCameraFrameDataRGB(): CameraFrameDataRGB | undefined;
52
+ setCameraFrameDataRGBEnabled(e: boolean): void;
53
+ getCameraFrameDataRGBEnabled(): boolean;
54
+ getCameraFrameDataRaw(): Promise<CameraFrameData | undefined>;
55
+ setCameraFrameDataRawEnabled(e: boolean): void;
56
+ destroy(): void;
57
+ getCurrentCameraInfo(): CameraFrameInfo | undefined;
58
+ cameraFrameDrawGL(screenWidth: number, screenHeight: number, mirror?: boolean): void;
59
+ glContextLost(): void;
60
+ glContextSet(gl: WebGLRenderingContext, texturePool?: WebGLTexture[]): void;
61
+ drawFace(projectionMatrix: Float32Array, cameraMatrix: Float32Array, targetMatrix: Float32Array, o: FaceMesh): void;
62
+ drawImageTargetPreview(projectionMatrix: Float32Array, cameraMatrix: Float32Array, targetMatrix: Float32Array, indx: number, o: ImageTracker): void;
63
+ drawFaceProject(matrix: Float32Array, vertices: Float32Array, uvMatrix: Float32Array, uvs: Float32Array, indices: Uint16Array, texture: WebGLTexture): void;
64
+ cameraFrameTexture(): WebGLTexture | undefined;
65
+ cameraFrameTextureMatrix(sw: number, sh: number, mirror: boolean): Float32Array;
66
+ cameraFrameUserFacing(): boolean;
67
+ cameraPoseWithAttitude(mirror: boolean): Float32Array;
68
+ videoFrameFromWorker(msg: VideoFrameS2C): void;
69
+ imageBitmapFromWorker(msg: ImageBitmapS2C): void;
70
+ uploadGL(): void;
71
+ registerToken(info: CameraFrameInfo): number;
72
+ processGL(): void;
73
+ motionAccelerometerSubmit(timestamp: number, x: number, y: number, z: number): void;
74
+ motionAccelerometerWithoutGravitySubmitInt(timestamp: number, interval: number, x: number, y: number, z: number): void;
75
+ motionAccelerometerWithGravitySubmitInt(timestamp: number, interval: number, x: number, y: number, z: number): void;
76
+ motionRotationRateSubmitInt(timestamp: number, interval: number, x: number, y: number, z: number): void;
77
+ motionAttitudeSubmitInt(timestamp: number, interval: number, x: number, y: number, z: number): void;
78
+ motionRelativeOrientationSubmitInt(timestamp: number, interval: number, x: number, y: number, z: number, w: number): void;
79
+ motionRotationRateSubmit(timestamp: number, x: number, y: number, z: number): void;
80
+ motionAttitudeSubmit(timestamp: number, x: number, y: number, z: number): void;
81
+ motionAttitudeMatrix(m: Float32Array): void;
82
+ sendCameraStreamToWorker(source: zappar_camera_source_t, stream: ReadableStream<VideoFrame>, userFacing: boolean): void;
83
+ sendCameraProfileToWorker(source: zappar_camera_source_t, profile: camera_profile_t): void;
84
+ sendCameraToScreenRotationToWorker(rot: number): void;
85
+ sendImageBitmapToWorker(img: ImageBitmap, rot: number, userFacing: boolean, tokenId: number, cameraModel: Float32Array, cameraToDevice: Float32Array, cp: camera_profile_t): void;
86
+ sendDataToWorker(data: ArrayBuffer, token: number, width: number, height: number, userFacing: boolean, cameraToDevice: Float32Array, cameraModel: Float32Array, captureTime: number): void;
87
+ }
88
+ export declare function applyScreenCounterRotation(info: CameraFrameInfo | undefined, inp: Float32Array): Float32Array;
@@ -0,0 +1,24 @@
1
+ import { camera_profile_t } from "./gen/zappar-native";
2
+ export declare enum EmbeddedVideoImplementation {
3
+ OBJECT_URL = 0,
4
+ SRC_OBJECT = 1
5
+ }
6
+ export declare let profile: {
7
+ deviceMotionMutliplier: number;
8
+ blacklisted: boolean;
9
+ showGyroPermissionsWarningIfNecessary: boolean;
10
+ showSafariPermissionsResetIfNecessary: boolean;
11
+ requestHighFrameRate: boolean;
12
+ videoWidth: number;
13
+ videoHeight: number;
14
+ getDataSize: (p: camera_profile_t) => number[];
15
+ videoElementInDOM: boolean;
16
+ preferMediaStreamTrackProcessorCamera: boolean;
17
+ preferImageBitmapCamera: boolean;
18
+ ios164CameraSelection: boolean;
19
+ relyOnConstraintsForCameraSelection: boolean;
20
+ forceWindowOrientation: boolean;
21
+ intervalMultiplier: number;
22
+ trustSensorIntervals: boolean;
23
+ offscreenCanvasSupported: boolean;
24
+ };
@@ -0,0 +1,18 @@
1
+ export interface Chunk {
2
+ ident: string;
3
+ data: Uint8Array;
4
+ subident?: string;
5
+ subchunks?: Chunk[];
6
+ }
7
+ export declare class RiffReader {
8
+ private _data;
9
+ private _paddingBytes;
10
+ truncatedChunks: boolean;
11
+ private _view;
12
+ root: Chunk;
13
+ constructor(_data: ArrayBuffer, _paddingBytes?: boolean);
14
+ private _parse;
15
+ private _parseChunk;
16
+ find(str: string, inChunk?: Chunk): Chunk | undefined;
17
+ has(str: string): boolean;
18
+ }
@@ -0,0 +1,99 @@
1
+ import { CameraFrameInfo } from "./source";
2
+ export declare enum SequenceRecorderPacketType {
3
+ CAMERA_FRAME = 0,
4
+ ACCELEROMETER = 1,
5
+ ROTATION_RATE = 2,
6
+ ATTITUDE = 3,
7
+ ATTITUDE_MATRIX = 4,
8
+ ACCELEROMETER_WO_GRAVITY_INT = 5,
9
+ ACCELEROMETER_W_GRAVITY_INT = 6,
10
+ ROTATION_RATE_INT = 7,
11
+ ATTITUDE_INT = 8
12
+ }
13
+ export declare class SequenceRecorder {
14
+ static headerSizeBytes: number;
15
+ static psbPacketType: number;
16
+ static psbCameraFrameWidth: number;
17
+ static psbCameraFrameHeight: number;
18
+ static psbFlags: number;
19
+ static psbCameraToDeviceTransform: number;
20
+ static psbCameraModel: number;
21
+ static cameraPacketSizeBytes: number;
22
+ static accelerometerPacketSizeBytes: number;
23
+ static sensorWithIntervalPacketSizeBytes: number;
24
+ static rotationRatePacketSizeBytes: number;
25
+ static attitudePacketSizeBytes: number;
26
+ static attitudeMatrixPacketSizeBytes: number;
27
+ private _data;
28
+ private _dataView;
29
+ private _dataUint8;
30
+ private _dataFloat32;
31
+ private _insertionByte;
32
+ private _numberPackets;
33
+ private _started;
34
+ private _hasLoggedUnsuppored;
35
+ constructor(estimatedFrames: number);
36
+ private _estimatedSize;
37
+ start(): void;
38
+ stop(): void;
39
+ data(): Uint8Array;
40
+ appendCameraFrame(c: CameraFrameInfo): void;
41
+ appendAccelerometer(t: number, x: number, y: number, z: number): void;
42
+ appendRotationRate(t: number, x: number, y: number, z: number): void;
43
+ appendAttitude(t: number, x: number, y: number, z: number): void;
44
+ appendAccelerometerWithoutGravityInt(t: number, int: number, x: number, y: number, z: number): void;
45
+ appendAccelerometerWithGravityInt(t: number, int: number, x: number, y: number, z: number): void;
46
+ appendRotationRateInt(t: number, int: number, x: number, y: number, z: number): void;
47
+ appendAttitudeInt(t: number, int: number, x: number, y: number, z: number): void;
48
+ private _appendSensorWithInterval;
49
+ private _appendTimestampedVec3;
50
+ appendAttitudeMatrix(m: Float32Array): void;
51
+ private _growArrayBuffer;
52
+ }
53
+ export interface SequenceCameraData {
54
+ type: SequenceRecorderPacketType.CAMERA_FRAME;
55
+ width: number;
56
+ height: number;
57
+ greyscale: Uint8Array;
58
+ userFacing: boolean;
59
+ cameraToDevice: Float32Array;
60
+ cameraModel: Float32Array;
61
+ }
62
+ export interface SequenceVec3Data {
63
+ t: number;
64
+ x: number;
65
+ y: number;
66
+ z: number;
67
+ }
68
+ export interface SequenceAccelerometerData extends SequenceVec3Data {
69
+ type: SequenceRecorderPacketType.ACCELEROMETER;
70
+ }
71
+ export interface SequenceRotationRateData extends SequenceVec3Data {
72
+ type: SequenceRecorderPacketType.ROTATION_RATE;
73
+ }
74
+ export interface SequenceAttitudeData extends SequenceVec3Data {
75
+ type: SequenceRecorderPacketType.ATTITUDE;
76
+ }
77
+ declare type SensorSourceType = SequenceRecorderPacketType.ACCELEROMETER_WO_GRAVITY_INT | SequenceRecorderPacketType.ACCELEROMETER_W_GRAVITY_INT | SequenceRecorderPacketType.ATTITUDE_INT | SequenceRecorderPacketType.ROTATION_RATE_INT;
78
+ export interface SequenceSensorData extends SequenceVec3Data {
79
+ type: SensorSourceType;
80
+ int: number;
81
+ }
82
+ export interface SequenceAttitudeMatrixData {
83
+ type: SequenceRecorderPacketType.ATTITUDE_MATRIX;
84
+ attitude: Float32Array;
85
+ }
86
+ export declare type SequencePacketData = SequenceCameraData | SequenceAccelerometerData | SequenceRotationRateData | SequenceAttitudeData | SequenceAttitudeMatrixData | SequenceSensorData;
87
+ export declare class SequenceDecoder {
88
+ private _data;
89
+ dataByPacket: Map<number, SequencePacketData>;
90
+ dataByCameraFrame: Map<number, SequenceCameraData>;
91
+ numberPackets: number;
92
+ numberCameraFrames: number;
93
+ numberAccelerometerPackets: number;
94
+ numberRotationRatePackets: number;
95
+ numberAttitudePackets: number;
96
+ numberAttitudeMatrixPackets: number;
97
+ constructor(_data: ArrayBuffer);
98
+ }
99
+ export {};
@@ -0,0 +1,25 @@
1
+ import { CameraFrameInfo, Source } from "./source";
2
+ import { zappar_sequence_source_t, zappar_pipeline_t } from "./gen/zappar";
3
+ export declare class SequenceSource extends Source {
4
+ private _impl;
5
+ private _pipeline;
6
+ private _packetNumber;
7
+ private _motionUpdatesQueued;
8
+ private _motionUpdatesSent;
9
+ private _decoder;
10
+ private _minFrameGapMs;
11
+ private _lastUpdateTime;
12
+ private _time;
13
+ static create(p: zappar_pipeline_t): zappar_sequence_source_t;
14
+ static get(m: zappar_sequence_source_t): SequenceSource | undefined;
15
+ constructor(_impl: zappar_sequence_source_t, _pipeline: zappar_pipeline_t);
16
+ loadFromMemory(data: ArrayBuffer): void;
17
+ maxPlaybackFpsSet(fps: number): void;
18
+ setTime(t: number): void;
19
+ getFrame(currentlyProcessing: boolean): void;
20
+ destroy(): void;
21
+ start(): void;
22
+ pause(): void;
23
+ uploadGL(info: CameraFrameInfo): void;
24
+ private _submitMotionUpdates;
25
+ }
@@ -0,0 +1,60 @@
1
+ import { barcode_format_t, face_landmark_name_t, instant_world_tracker_transform_orientation_t, transform_orientation_t, log_level_t, plane_orientation_t, anchor_status_t } from "./gen/zappar-native";
2
+ export interface MessageAppender {
3
+ int: (i: number) => void;
4
+ bool: (i: boolean) => void;
5
+ float: (i: number) => void;
6
+ string: (i: string) => void;
7
+ dataWithLength: (i: ArrayBuffer) => void;
8
+ type: (t: number) => void;
9
+ matrix4x4: (a: Float32Array) => void;
10
+ matrix3x3: (a: Float32Array) => void;
11
+ ucharArray: (a: Uint8Array) => void;
12
+ floatArray: (a: Float32Array) => void;
13
+ cameraModel: (a: Float32Array) => void;
14
+ identityCoefficients: (a: Float32Array) => void;
15
+ expressionCoefficients: (a: Float32Array) => void;
16
+ timestamp: (i: number) => void;
17
+ barcodeFormat: (f: barcode_format_t) => void;
18
+ faceLandmarkName: (f: face_landmark_name_t) => void;
19
+ instantTrackerTransformOrientation: (f: instant_world_tracker_transform_orientation_t) => void;
20
+ transformOrientation: (f: transform_orientation_t) => void;
21
+ planeOrientation: (f: plane_orientation_t) => void;
22
+ anchorStatus: (f: anchor_status_t) => void;
23
+ logLevel: (f: log_level_t) => void;
24
+ }
25
+ export declare class MessageSerializer {
26
+ private _messageSender;
27
+ private _freeBufferPool;
28
+ constructor(_messageSender: (msg: ArrayBuffer) => void);
29
+ private _buffer;
30
+ private _i32View;
31
+ private _f32View;
32
+ private _f64View;
33
+ private _u8View;
34
+ private _u8cView;
35
+ private _u16View;
36
+ private _u32View;
37
+ private _offset;
38
+ private _startOffset;
39
+ private _timeoutSet;
40
+ bufferReturn(ab: ArrayBuffer): void;
41
+ private _ensureArrayBuffer;
42
+ private _appender;
43
+ sendMessage(messageId: number, cb: (s: MessageAppender) => void): void;
44
+ private _sendOneTime;
45
+ private _send;
46
+ private int;
47
+ private double;
48
+ private float;
49
+ private int32Array;
50
+ private float32Array;
51
+ private booleanArray;
52
+ private uint8ArrayBuffer;
53
+ private arrayBuffer;
54
+ private uint8ClampedArrayBuffer;
55
+ private float32ArrayBuffer;
56
+ private uint16ArrayBuffer;
57
+ private int32ArrayBuffer;
58
+ private uint32ArrayBuffer;
59
+ private string;
60
+ }