force typescript 4.2 due to typedoc incompatibility with ts 4.3

pull/56/head
Vladimir Mandic 2021-05-27 16:04:17 -04:00
parent bf84748777
commit 98ea06fb0e
23 changed files with 9713 additions and 9472 deletions

View File

@ -1,6 +1,6 @@
# @vladmandic/face-api
Version: **1.2.4**
Version: **1.2.5**
Description: **FaceAPI: AI-powered Face Detection & Rotation Tracking, Face Description & Recognition, Age & Gender & Emotion Prediction for Browser and NodeJS using TensorFlow/JS**
Author: **Vladimir Mandic <mandic00@live.com>**
@ -9,12 +9,15 @@ Repository: **<git+https://github.com/vladmandic/face-api.git>**
## Changelog
### **1.2.5** 2021/05/27 mandic00@live.com
### **origin/master** 2021/05/27 admin@bettysteger.com
### **1.2.4** 2021/05/18 mandic00@live.com
### **origin/master** 2021/05/04 mandic00@live.com
### **1.2.3** 2021/05/04 mandic00@live.com

View File

@ -788,6 +788,7 @@ function createBrowserEnv() {
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch,
readFile
};
@ -817,6 +818,7 @@ function createFileSystem(fs) {
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -827,6 +829,11 @@ function createNodejsEnv() {
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch = global.fetch;
const fileSystem = createFileSystem();
return {
@ -842,6 +849,7 @@ function createNodejsEnv() {
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch,
...fileSystem
};
@ -1381,6 +1389,31 @@ async function fetchNetWeights(uri) {
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/common/getModelUris.ts
function getModelUris(uri, defaultModelName) {
const defaultManifestFilename = `${defaultModelName}-weights_manifest.json`;
@ -2085,7 +2118,7 @@ function drawFaceLandmarks(canvasArg, faceLandmarks) {
}
// package.json
var version = "1.2.4";
var version = "1.2.5";
// src/xception/extractParams.ts
function extractorsFactory2(extractWeights, paramMappings) {
@ -4398,6 +4431,7 @@ export {
fetchJson,
fetchNetWeights,
fetchOrThrow,
fetchVideo,
getContext2dOrThrow,
getMediaDimensions,
imageTensorToCanvas,

File diff suppressed because one or more lines are too long

36
dist/face-api.esm.js vendored
View File

@ -58067,6 +58067,7 @@ function createBrowserEnv() {
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch: fetch3,
readFile
};
@ -58096,6 +58097,7 @@ function createFileSystem(fs) {
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -58106,6 +58108,11 @@ function createNodejsEnv() {
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch3 = global.fetch;
const fileSystem = createFileSystem();
return {
@ -58121,6 +58128,7 @@ function createNodejsEnv() {
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch: fetch3,
...fileSystem
};
@ -58660,6 +58668,31 @@ async function fetchNetWeights(uri) {
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env2.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/common/getModelUris.ts
function getModelUris(uri, defaultModelName) {
const defaultManifestFilename = `${defaultModelName}-weights_manifest.json`;
@ -59364,7 +59397,7 @@ function drawFaceLandmarks(canvasArg, faceLandmarks) {
}
// package.json
var version10 = "1.2.4";
var version10 = "1.2.5";
// src/xception/extractParams.ts
function extractorsFactory2(extractWeights, paramMappings) {
@ -61677,6 +61710,7 @@ export {
fetchJson,
fetchNetWeights,
fetchOrThrow,
fetchVideo,
getContext2dOrThrow,
getMediaDimensions,
imageTensorToCanvas,

File diff suppressed because one or more lines are too long

36
dist/face-api.js vendored
View File

@ -96,6 +96,7 @@ var faceapi = (() => {
fetchJson: () => fetchJson,
fetchNetWeights: () => fetchNetWeights,
fetchOrThrow: () => fetchOrThrow,
fetchVideo: () => fetchVideo,
getContext2dOrThrow: () => getContext2dOrThrow,
getMediaDimensions: () => getMediaDimensions,
imageTensorToCanvas: () => imageTensorToCanvas,
@ -58193,6 +58194,7 @@ return a / b;`;
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch: fetch3,
readFile
};
@ -58222,6 +58224,7 @@ return a / b;`;
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -58232,6 +58235,11 @@ return a / b;`;
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch3 = global.fetch;
const fileSystem = createFileSystem();
return {
@ -58247,6 +58255,7 @@ return a / b;`;
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch: fetch3,
...fileSystem
};
@ -58786,6 +58795,31 @@ return a / b;`;
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env2.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/common/getModelUris.ts
function getModelUris(uri, defaultModelName) {
const defaultManifestFilename = `${defaultModelName}-weights_manifest.json`;
@ -59490,7 +59524,7 @@ return a / b;`;
}
// package.json
var version10 = "1.2.4";
var version10 = "1.2.5";
// src/xception/extractParams.ts
function extractorsFactory2(extractWeights, paramMappings) {

File diff suppressed because one or more lines are too long

View File

@ -136,6 +136,7 @@ __export(exports, {
fetchJson: () => fetchJson,
fetchNetWeights: () => fetchNetWeights,
fetchOrThrow: () => fetchOrThrow,
fetchVideo: () => fetchVideo,
getContext2dOrThrow: () => getContext2dOrThrow,
getMediaDimensions: () => getMediaDimensions,
imageTensorToCanvas: () => imageTensorToCanvas,
@ -940,6 +941,7 @@ function createBrowserEnv() {
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch,
readFile
};
@ -969,6 +971,7 @@ function createFileSystem(fs) {
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -979,6 +982,11 @@ function createNodejsEnv() {
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch = global.fetch;
const fileSystem = createFileSystem();
return {
@ -994,6 +1002,7 @@ function createNodejsEnv() {
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch,
...fileSystem
};
@ -1541,6 +1550,31 @@ async function fetchNetWeights(uri) {
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/dom/loadWeightMap.ts
var tf7 = __toModule(require_tfjs_esm());
@ -2266,7 +2300,7 @@ function drawFaceLandmarks(canvasArg, faceLandmarks) {
}
// package.json
var version = "1.2.4";
var version = "1.2.5";
// src/ageGenderNet/AgeGenderNet.ts
var tf20 = __toModule(require_tfjs_esm());
@ -4625,6 +4659,7 @@ var version2 = {faceapi: version, node, browser: browser3};
fetchJson,
fetchNetWeights,
fetchOrThrow,
fetchVideo,
getContext2dOrThrow,
getMediaDimensions,
imageTensorToCanvas,

File diff suppressed because one or more lines are too long

View File

@ -136,6 +136,7 @@ __export(exports, {
fetchJson: () => fetchJson,
fetchNetWeights: () => fetchNetWeights,
fetchOrThrow: () => fetchOrThrow,
fetchVideo: () => fetchVideo,
getContext2dOrThrow: () => getContext2dOrThrow,
getMediaDimensions: () => getMediaDimensions,
imageTensorToCanvas: () => imageTensorToCanvas,
@ -940,6 +941,7 @@ function createBrowserEnv() {
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch,
readFile
};
@ -969,6 +971,7 @@ function createFileSystem(fs) {
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -979,6 +982,11 @@ function createNodejsEnv() {
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch = global.fetch;
const fileSystem = createFileSystem();
return {
@ -994,6 +1002,7 @@ function createNodejsEnv() {
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch,
...fileSystem
};
@ -1541,6 +1550,31 @@ async function fetchNetWeights(uri) {
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/dom/loadWeightMap.ts
var tf7 = __toModule(require_tfjs_esm());
@ -2266,7 +2300,7 @@ function drawFaceLandmarks(canvasArg, faceLandmarks) {
}
// package.json
var version = "1.2.4";
var version = "1.2.5";
// src/ageGenderNet/AgeGenderNet.ts
var tf20 = __toModule(require_tfjs_esm());
@ -4625,6 +4659,7 @@ var version2 = {faceapi: version, node, browser: browser3};
fetchJson,
fetchNetWeights,
fetchOrThrow,
fetchVideo,
getContext2dOrThrow,
getMediaDimensions,
imageTensorToCanvas,

File diff suppressed because one or more lines are too long

37
dist/face-api.node.js vendored
View File

@ -136,6 +136,7 @@ __export(exports, {
fetchJson: () => fetchJson,
fetchNetWeights: () => fetchNetWeights,
fetchOrThrow: () => fetchOrThrow,
fetchVideo: () => fetchVideo,
getContext2dOrThrow: () => getContext2dOrThrow,
getMediaDimensions: () => getMediaDimensions,
imageTensorToCanvas: () => imageTensorToCanvas,
@ -940,6 +941,7 @@ function createBrowserEnv() {
Video: HTMLVideoElement,
createCanvasElement: () => document.createElement("canvas"),
createImageElement: () => document.createElement("img"),
createVideoElement: () => document.createElement("video"),
fetch,
readFile
};
@ -969,6 +971,7 @@ function createFileSystem(fs) {
function createNodejsEnv() {
const Canvas = global["Canvas"] || global.HTMLCanvasElement;
const Image = global.Image || global.HTMLImageElement;
const Video = global["Video"] || global.HTMLVideoElement;
const createCanvasElement = () => {
if (Canvas)
return new Canvas();
@ -979,6 +982,11 @@ function createNodejsEnv() {
return new Image();
throw new Error("createImageElement - missing Image implementation for nodejs environment");
};
const createVideoElement = () => {
if (Video)
return new Video();
throw new Error("createVideoElement - missing Video implementation for nodejs environment");
};
const fetch = global.fetch;
const fileSystem = createFileSystem();
return {
@ -994,6 +1002,7 @@ function createNodejsEnv() {
},
createCanvasElement,
createImageElement,
createVideoElement,
fetch,
...fileSystem
};
@ -1541,6 +1550,31 @@ async function fetchNetWeights(uri) {
return new Float32Array(await (await fetchOrThrow(uri)).arrayBuffer());
}
// src/dom/bufferToVideo.ts
function bufferToVideo(buf) {
return new Promise((resolve, reject) => {
if (!(buf instanceof Blob))
reject(new Error("bufferToVideo - expected buf to be of type: Blob"));
const video = env.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.playsInline = true;
video.autoplay = true;
video.muted = true;
video.src = URL.createObjectURL(buf);
});
}
// src/dom/fetchVideo.ts
async function fetchVideo(uri) {
const res = await fetchOrThrow(uri);
const blob = await res.blob();
if (!blob.type.startsWith("video/")) {
throw new Error(`fetchVideo - expected blob type to be of type video/*, instead have: ${blob.type}, for url: ${res.url}`);
}
return bufferToVideo(blob);
}
// src/dom/loadWeightMap.ts
var tf7 = __toModule(require_tfjs_esm());
@ -2266,7 +2300,7 @@ function drawFaceLandmarks(canvasArg, faceLandmarks) {
}
// package.json
var version = "1.2.4";
var version = "1.2.5";
// src/ageGenderNet/AgeGenderNet.ts
var tf20 = __toModule(require_tfjs_esm());
@ -4625,6 +4659,7 @@ var version2 = {faceapi: version, node, browser: browser3};
fetchJson,
fetchNetWeights,
fetchOrThrow,
fetchVideo,
getContext2dOrThrow,
getMediaDimensions,
imageTensorToCanvas,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -66,6 +66,6 @@
"simple-git": "^2.39.0",
"tslib": "^2.2.0",
"typedoc": "^0.20.36",
"typescript": "^4.3.2"
"typescript": "4.2.4"
}
}

View File

@ -7,7 +7,7 @@ export function bufferToVideo(buf: Blob): Promise<HTMLVideoElement> {
const video = env.getEnv().createVideoElement();
video.oncanplay = () => resolve(video);
video.onerror = reject;
video.type = buf.type;
// video.type = buf.type;
video.playsInline = true;
video.autoplay = true;
video.muted = true;

File diff suppressed because one or more lines are too long

View File

@ -204,6 +204,7 @@
<li class="tsd-kind-function tsd-has-type-parameter"><a href="index.html#fetchjson" class="tsd-kind-icon">fetch<wbr>Json</a></li>
<li class="tsd-kind-function"><a href="index.html#fetchnetweights" class="tsd-kind-icon">fetch<wbr>Net<wbr>Weights</a></li>
<li class="tsd-kind-function"><a href="index.html#fetchorthrow" class="tsd-kind-icon">fetch<wbr>OrThrow</a></li>
<li class="tsd-kind-function"><a href="index.html#fetchvideo" class="tsd-kind-icon">fetch<wbr>Video</a></li>
<li class="tsd-kind-function"><a href="index.html#getcontext2dorthrow" class="tsd-kind-icon">get<wbr>Context2d<wbr>OrThrow</a></li>
<li class="tsd-kind-function"><a href="index.html#getmediadimensions" class="tsd-kind-icon">get<wbr>Media<wbr>Dimensions</a></li>
<li class="tsd-kind-function"><a href="index.html#imagetensortocanvas" class="tsd-kind-icon">image<wbr>Tensor<wbr>ToCanvas</a></li>
@ -363,7 +364,7 @@
<section class="tsd-panel tsd-member tsd-kind-type-alias">
<a name="environment" class="tsd-anchor"></a>
<h3>Environment</h3>
<div class="tsd-signature tsd-kind-icon">Environment<span class="tsd-signature-symbol">:</span> <a href="index.html#filesystem" class="tsd-signature-type" data-tsd-kind="Type alias">FileSystem</a><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span>Canvas<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol">; </span>CanvasRenderingContext2D<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">CanvasRenderingContext2D</span><span class="tsd-signature-symbol">; </span>Image<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLImageElement</span><span class="tsd-signature-symbol">; </span>ImageData<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">ImageData</span><span class="tsd-signature-symbol">; </span>Video<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol">; </span>createCanvasElement<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol">; </span>createImageElement<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">HTMLImageElement</span><span class="tsd-signature-symbol">; </span>fetch<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, init<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">RequestInit</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> }</span></div>
<div class="tsd-signature tsd-kind-icon">Environment<span class="tsd-signature-symbol">:</span> <a href="index.html#filesystem" class="tsd-signature-type" data-tsd-kind="Type alias">FileSystem</a><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span>Canvas<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol">; </span>CanvasRenderingContext2D<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">CanvasRenderingContext2D</span><span class="tsd-signature-symbol">; </span>Image<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLImageElement</span><span class="tsd-signature-symbol">; </span>ImageData<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">ImageData</span><span class="tsd-signature-symbol">; </span>Video<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol">; </span>createCanvasElement<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol">; </span>createImageElement<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">HTMLImageElement</span><span class="tsd-signature-symbol">; </span>createVideoElement<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol">; </span>fetch<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, init<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">RequestInit</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Response</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/face-api/blob/main/src/env/types.ts#L6">env/types.ts:6</a></li>
@ -1833,6 +1834,29 @@
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-function">
<a name="fetchvideo" class="tsd-anchor"></a>
<h3>fetch<wbr>Video</h3>
<ul class="tsd-signatures tsd-kind-function">
<li class="tsd-signature tsd-kind-icon">fetch<wbr>Video<span class="tsd-signature-symbol">(</span>uri<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/face-api/blob/main/src/dom/fetchVideo.ts#L4">dom/fetchVideo.ts:4</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>uri: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-function">
<a name="getcontext2dorthrow" class="tsd-anchor"></a>
<h3>get<wbr>Context2d<wbr>OrThrow</h3>
@ -3244,6 +3268,9 @@
<li class=" tsd-kind-function">
<a href="index.html#fetchorthrow" class="tsd-kind-icon">fetch<wbr>OrThrow</a>
</li>
<li class=" tsd-kind-function">
<a href="index.html#fetchvideo" class="tsd-kind-icon">fetch<wbr>Video</a>
</li>
<li class=" tsd-kind-function">
<a href="index.html#getcontext2dorthrow" class="tsd-kind-icon">get<wbr>Context2d<wbr>OrThrow</a>
</li>

1
types/dom/bufferToVideo.d.ts vendored Normal file
View File

@ -0,0 +1 @@
export declare function bufferToVideo(buf: Blob): Promise<HTMLVideoElement>;

1
types/dom/fetchVideo.d.ts vendored Normal file
View File

@ -0,0 +1 @@
export declare function fetchVideo(uri: string): Promise<HTMLVideoElement>;

View File

@ -7,6 +7,7 @@ export * from './fetchImage';
export * from './fetchJson';
export * from './fetchNetWeights';
export * from './fetchOrThrow';
export * from './fetchVideo';
export * from './getContext2dOrThrow';
export * from './getMediaDimensions';
export * from './imageTensorToCanvas';

View File

@ -10,5 +10,6 @@ export declare type Environment = FileSystem & {
Video: typeof HTMLVideoElement;
createCanvasElement: () => HTMLCanvasElement;
createImageElement: () => HTMLImageElement;
createVideoElement: () => HTMLVideoElement;
fetch: (url: string, init?: RequestInit) => Promise<Response>;
};