diff --git a/index.html b/index.html index 221b1e3..4d162b2 100644 --- a/index.html +++ b/index.html @@ -5,57 +5,51 @@ Audio Visualizer +
+
Loading model: 0%
+ +
- Loading model: 0% -
- + >
+
-
-
- "Low Poly Human Hands (All Quads)" (https://skfb.ly/WuXz) by Jeremy E. - Grayson is licensed under Creative Commons Attribution - (http://creativecommons.org/licenses/by/4.0/). + diff --git a/package-lock.json b/package-lock.json index 26bf026..c59f5f2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,10 +9,13 @@ "version": "1.0.0", "license": "MIT", "devDependencies": { + "@types/three": "^0.138.0", "@typescript-eslint/eslint-plugin": "^5.14.0", "@typescript-eslint/parser": "^5.14.0", "esbuild": "^0.14.25", "eslint": "^8.10.0", + "esm-seedrandom": "^3.0.5", + "parse-srt": "^1.0.0-alpha", "three": "^0.138.3" } }, @@ -106,6 +109,12 @@ "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, + "node_modules/@types/three": { + "version": "0.138.0", + "resolved": "https://registry.npmjs.org/@types/three/-/three-0.138.0.tgz", + "integrity": "sha512-D8AoV7h2kbCfrv/DcebHOFh1WDwyus3HdooBkAwcBikXArdqnsQ38PQ85JCunnvun160oA9jz53GszF3zch3tg==", + "dev": true + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.14.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.14.0.tgz", @@ -994,6 +1003,12 @@ "node": ">=4.0" } }, + "node_modules/esm-seedrandom": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/esm-seedrandom/-/esm-seedrandom-3.0.5.tgz", + "integrity": "sha512-pMAq0mFIr5JQ3Ihbng7EBLMJ+llMbaDKkiG44pqbSXS0NIZWtEANpOpxb5s6Q8Q2R562P26qMHPv8YtP/NHh9g==", + "dev": true + }, "node_modules/espree": { "version": "9.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", @@ -1479,6 +1494,12 @@ "node": ">=6" } }, + "node_modules/parse-srt": { + "version": "1.0.0-alpha", + "resolved": "https://registry.npmjs.org/parse-srt/-/parse-srt-1.0.0-alpha.tgz", + "integrity": "sha1-hePGDTHk3Qkk+vVB6oWhiPw0T2E=", + "dev": true + }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -1916,6 +1937,12 @@ "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, + "@types/three": { + "version": "0.138.0", + "resolved": "https://registry.npmjs.org/@types/three/-/three-0.138.0.tgz", + "integrity": "sha512-D8AoV7h2kbCfrv/DcebHOFh1WDwyus3HdooBkAwcBikXArdqnsQ38PQ85JCunnvun160oA9jz53GszF3zch3tg==", + "dev": true + }, "@typescript-eslint/eslint-plugin": { "version": "5.14.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.14.0.tgz", @@ -2437,6 +2464,12 @@ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", "dev": true }, + "esm-seedrandom": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/esm-seedrandom/-/esm-seedrandom-3.0.5.tgz", + "integrity": "sha512-pMAq0mFIr5JQ3Ihbng7EBLMJ+llMbaDKkiG44pqbSXS0NIZWtEANpOpxb5s6Q8Q2R562P26qMHPv8YtP/NHh9g==", + "dev": true + }, "espree": { "version": "9.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", @@ -2823,6 +2856,12 @@ "callsites": "^3.0.0" } }, + "parse-srt": { + "version": "1.0.0-alpha", + "resolved": "https://registry.npmjs.org/parse-srt/-/parse-srt-1.0.0-alpha.tgz", + "integrity": "sha1-hePGDTHk3Qkk+vVB6oWhiPw0T2E=", + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", diff --git a/package.json b/package.json index cb789f5..361013d 100644 --- a/package.json +++ b/package.json @@ -12,10 +12,13 @@ "author": "Silas", "license": "MIT", "devDependencies": { + "@types/three": "^0.138.0", "@typescript-eslint/eslint-plugin": "^5.14.0", "@typescript-eslint/parser": "^5.14.0", "esbuild": "^0.14.25", "eslint": "^8.10.0", + "esm-seedrandom": "^3.0.5", + "parse-srt": "^1.0.0-alpha", "three": "^0.138.3" } } diff --git a/src/audio.ts b/src/audio.ts index 404863f..0862e7a 100644 --- a/src/audio.ts +++ b/src/audio.ts @@ -1,19 +1,25 @@ -import { Audio, AudioLoader } from "three"; +import { Audio, AudioAnalyser, AudioListener, AudioLoader } from "three"; +import { SoundAverages } from "./types"; +import { avg } from "./utils"; const loader = new AudioLoader(); -export function LoadAudio(listener): Promise