interface microphone component with rust wasm

This commit is contained in:
Enrique Hernandez 2020-10-12 12:22:03 -05:00
commit fe5a5aae93
7 changed files with 1275 additions and 25 deletions

1025
crate/.log/ti-1932.log Normal file

File diff suppressed because one or more lines are too long

176
crate/.log/tsserver.log Normal file
View file

@ -0,0 +1,176 @@
Info 0 [17:26:0.486] Starting TS Server
Info 1 [17:26:0.488] Version: 3.9.7
Info 2 [17:26:0.488] Arguments: /Users/enrique/.nvm/versions/node/v14.8.0/bin/node /Users/enrique/Developer/crimata/crimata-electron/node_modules/.bin/tsserver --logFile /Users/enrique/Developer/crimata/crimata-electron/crate/.log/tsserver.log --logVerbosity info --cancellationPipeName /private/var/folders/g7/q0j3w9bj37jgdl0cd5m14glr0000gn/T/527246273c44e30a9897ec07146613b1/tscancellation*
Info 3 [17:26:0.488] Platform: darwin NodeVersion: 14 CaseSensitive: false
Info 4 [17:26:0.504] Search path: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg
Info 5 [17:26:0.506] For info: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts :: No config files found.
Info 6 [17:26:0.512] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 7 [17:26:3.434] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 1 structureChanged: true Elapsed: 2922ms
Info 8 [17:26:3.434] Project '/dev/null/inferredProject1*' (Inferred)
Info 9 [17:26:3.434] Files (213)
Info 10 [17:26:3.434] -----------------------------------------------
Info 11 [17:26:8.336] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 12 [17:26:8.343] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 2 structureChanged: false Elapsed: 5ms
Info 13 [17:26:10.590] Before ensureProjectForOpenFiles:
Info 14 [17:26:10.590] After ensureProjectForOpenFiles:
Info 15 [17:26:10.591] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts
Info 16 [17:26:14.862] Search path: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg
Info 17 [17:26:14.862] For info: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts :: No config files found.
Info 18 [17:26:14.862] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 19 [17:26:15.303] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 1 structureChanged: true Elapsed: 440ms
Info 20 [17:26:15.303] Project '/dev/null/inferredProject2*' (Inferred)
Info 21 [17:26:15.303] Files (213)
Info 22 [17:26:15.303] -----------------------------------------------
Info 23 [17:26:15.485] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 24 [17:26:15.488] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 2 structureChanged: false Elapsed: 3ms
Info 25 [17:26:17.944] Before ensureProjectForOpenFiles:
Info 26 [17:26:17.944] After ensureProjectForOpenFiles:
Info 27 [17:26:17.944] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts
Info 28 [17:27:15.680] Search path: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg
Info 29 [17:27:15.680] For info: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts :: No config files found.
Info 30 [17:27:15.681] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 31 [17:27:16.132] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 1 structureChanged: true Elapsed: 451ms
Info 32 [17:27:16.132] Project '/dev/null/inferredProject3*' (Inferred)
Info 33 [17:27:16.132] Files (213)
Info 34 [17:27:16.132] -----------------------------------------------
Info 35 [17:27:16.278] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 36 [17:27:16.281] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 2 structureChanged: false Elapsed: 3ms
Info 37 [17:27:18.741] Before ensureProjectForOpenFiles:
Info 38 [17:27:18.741] After ensureProjectForOpenFiles:
Info 39 [17:27:18.741] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts
Info 40 [17:27:39.429] Search path: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg
Info 41 [17:27:39.429] For info: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts :: No config files found.
Info 42 [17:27:39.430] Starting updateGraphWorker: Project: /dev/null/inferredProject4*
Info 43 [17:27:39.850] Finishing updateGraphWorker: Project: /dev/null/inferredProject4* Version: 1 structureChanged: true Elapsed: 420ms
Info 44 [17:27:39.850] Project '/dev/null/inferredProject4*' (Inferred)
Info 45 [17:27:39.850] Files (213)
Info 46 [17:27:39.850] -----------------------------------------------
Info 47 [17:27:40.38] Starting updateGraphWorker: Project: /dev/null/inferredProject4*
Info 48 [17:27:40.40] Finishing updateGraphWorker: Project: /dev/null/inferredProject4* Version: 2 structureChanged: false Elapsed: 2ms
Info 49 [17:27:42.460] Before ensureProjectForOpenFiles:
Info 50 [17:27:42.460] After ensureProjectForOpenFiles:
Info 51 [17:27:42.460] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts
Info 52 [18:0:20.659] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 53 [18:0:20.663] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 3 structureChanged: false Elapsed: 4ms
Info 54 [18:0:20.664] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 55 [18:0:20.667] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 3 structureChanged: false Elapsed: 3ms
Info 56 [18:0:20.667] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 57 [18:0:20.671] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 3 structureChanged: false Elapsed: 4ms
Info 58 [18:0:20.671] Starting updateGraphWorker: Project: /dev/null/inferredProject4*
Info 59 [18:0:20.674] Finishing updateGraphWorker: Project: /dev/null/inferredProject4* Version: 3 structureChanged: false Elapsed: 3ms
Info 60 [18:0:22.914] Before ensureProjectForOpenFiles:
Info 61 [18:0:22.914] After ensureProjectForOpenFiles:
Info 62 [18:0:22.914] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts
Info 63 [18:0:46.478] Search path: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg
Info 64 [18:0:46.479] For info: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js :: No config files found.
Info 65 [18:0:46.480] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 66 [18:0:48.467] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 1 structureChanged: true Elapsed: 1987ms
Info 67 [18:0:48.467] Project '/dev/null/inferredProject5*' (Inferred)
Info 68 [18:0:48.467] Files (215)
Info 69 [18:0:48.467] -----------------------------------------------
Info 70 [18:0:48.469] `remove Project::
Info 71 [18:0:48.469] Project '/dev/null/inferredProject4*' (Inferred)
Info 72 [18:0:48.469] Files (213)
Info 73 [18:0:48.469] -----------------------------------------------
Info 74 [18:0:48.606] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 75 [18:0:48.628] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 2 structureChanged: false Elapsed: 22ms
Info 76 [18:0:51.111] Before ensureProjectForOpenFiles:
Info 77 [18:0:51.111] After ensureProjectForOpenFiles:
Info 78 [18:0:51.111] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 79 [18:1:4.933] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 80 [18:1:5.19] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 4 structureChanged: false Elapsed: 84ms
Info 81 [18:1:5.19] Different program with same set of files:: oldProgram.structureIsReused:: 2
Info 82 [18:1:43.139] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 83 [18:1:43.142] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 5 structureChanged: false Elapsed: 3ms
Info 84 [18:1:43.144] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 85 [18:1:43.147] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 4 structureChanged: false Elapsed: 3ms
Info 86 [18:1:43.147] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 87 [18:1:43.150] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 4 structureChanged: false Elapsed: 3ms
Info 88 [18:1:43.153] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 89 [18:1:43.156] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 3 structureChanged: false Elapsed: 3ms
Info 90 [18:1:43.545] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 91 [18:1:43.545] Elapsed:: 0ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 92 [18:1:43.798] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 93 [18:1:43.887] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 4 structureChanged: false Elapsed: 89ms
Info 94 [18:1:43.888] Different program with same set of files:: oldProgram.structureIsReused:: 2
Info 95 [18:1:46.46] Before ensureProjectForOpenFiles:
Info 96 [18:1:46.46] After ensureProjectForOpenFiles:
Info 97 [18:1:46.46] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 98 [20:9:28.691] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 99 [20:9:28.694] Elapsed:: 1ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 100 [20:9:29.124] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 101 [20:9:29.130] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 6 structureChanged: false Elapsed: 6ms
Info 102 [20:9:29.130] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 103 [20:9:29.133] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 5 structureChanged: false Elapsed: 3ms
Info 104 [20:9:29.133] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 105 [20:9:29.137] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 5 structureChanged: false Elapsed: 4ms
Info 106 [20:9:29.140] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 107 [20:9:29.146] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 5 structureChanged: false Elapsed: 5ms
Info 108 [20:9:31.382] Before ensureProjectForOpenFiles:
Info 109 [20:9:31.383] After ensureProjectForOpenFiles:
Info 110 [20:9:31.383] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 111 [20:18:28.131] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 112 [20:18:28.140] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 7 structureChanged: false Elapsed: 9ms
Info 113 [20:18:28.140] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 114 [20:18:28.143] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 6 structureChanged: false Elapsed: 3ms
Info 115 [20:18:28.143] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 116 [20:18:28.147] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 6 structureChanged: false Elapsed: 4ms
Info 117 [20:18:28.147] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 118 [20:18:28.151] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 6 structureChanged: false Elapsed: 4ms
Info 119 [20:18:29.376] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 120 [20:18:29.376] Elapsed:: 0ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 121 [20:18:29.629] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 122 [20:18:29.769] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 7 structureChanged: false Elapsed: 139ms
Info 123 [20:18:29.770] Different program with same set of files:: oldProgram.structureIsReused:: 2
Info 124 [20:18:31.878] Before ensureProjectForOpenFiles:
Info 125 [20:18:31.878] After ensureProjectForOpenFiles:
Info 126 [20:18:31.878] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 127 [20:18:39.381] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 128 [20:18:39.381] Elapsed:: 0ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 129 [20:18:39.727] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 130 [20:18:39.730] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 8 structureChanged: false Elapsed: 3ms
Info 131 [20:18:39.732] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 132 [20:18:39.735] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 7 structureChanged: false Elapsed: 3ms
Info 133 [20:18:39.735] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 134 [20:18:39.739] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 7 structureChanged: false Elapsed: 4ms
Info 135 [20:18:39.740] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 136 [20:18:39.745] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 8 structureChanged: false Elapsed: 5ms
Info 137 [20:18:41.985] Before ensureProjectForOpenFiles:
Info 138 [20:18:41.985] After ensureProjectForOpenFiles:
Info 139 [20:18:41.985] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 140 [20:19:47.774] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 141 [20:19:47.777] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 9 structureChanged: false Elapsed: 3ms
Info 142 [20:19:47.778] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 143 [20:19:47.781] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 8 structureChanged: false Elapsed: 3ms
Info 144 [20:19:47.781] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 145 [20:19:47.783] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 8 structureChanged: false Elapsed: 2ms
Info 146 [20:19:47.784] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 147 [20:19:47.789] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 9 structureChanged: false Elapsed: 5ms
Info 148 [20:19:49.453] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 149 [20:19:49.453] Elapsed:: 0ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 150 [20:19:49.707] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 151 [20:19:49.709] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 10 structureChanged: false Elapsed: 2ms
Info 152 [20:19:51.955] Before ensureProjectForOpenFiles:
Info 153 [20:19:51.955] After ensureProjectForOpenFiles:
Info 154 [20:19:51.955] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js
Info 155 [12:20:50.170] Starting updateGraphWorker: Project: /dev/null/inferredProject1*
Info 156 [12:20:50.204] Finishing updateGraphWorker: Project: /dev/null/inferredProject1* Version: 10 structureChanged: false Elapsed: 27ms
Info 157 [12:20:50.212] Starting updateGraphWorker: Project: /dev/null/inferredProject2*
Info 158 [12:20:50.214] Finishing updateGraphWorker: Project: /dev/null/inferredProject2* Version: 9 structureChanged: false Elapsed: 2ms
Info 159 [12:20:50.214] Starting updateGraphWorker: Project: /dev/null/inferredProject3*
Info 160 [12:20:50.220] Finishing updateGraphWorker: Project: /dev/null/inferredProject3* Version: 9 structureChanged: false Elapsed: 6ms
Info 161 [12:20:50.220] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 162 [12:20:50.235] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 11 structureChanged: false Elapsed: 15ms
Info 163 [12:20:51.334] FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 164 [12:20:51.334] Elapsed:: 0ms FileWatcher:: Triggered with /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 1:: WatchInfo: /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.js 500 undefined Project: WatchType: Closed Script info
Info 165 [12:20:51.589] Starting updateGraphWorker: Project: /dev/null/inferredProject5*
Info 166 [12:20:51.592] Finishing updateGraphWorker: Project: /dev/null/inferredProject5* Version: 12 structureChanged: false Elapsed: 3ms
Info 167 [12:20:53.838] Before ensureProjectForOpenFiles:
Info 168 [12:20:53.839] After ensureProjectForOpenFiles:
Info 169 [12:20:53.841] got projects updated in background, updating diagnostics for /Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/crimata_wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index_bg.wasm.d.ts,/Users/enrique/Developer/crimata/crimata-electron/crate/pkg/index.js

20
crate/Cargo.lock generated
View file

@ -15,6 +15,16 @@ checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
[[package]]
name = "crimata_wasm"
version = "0.1.0"
dependencies = [
"wasm-bindgen",
"web-sys",
]
[[package]]
name = "js-sys"
version = "0.3.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca059e81d9486668f12d455a4ea6daa600bd408134cd17e3d3fb5a32d1f016f8"
dependencies = [
"wasm-bindgen",
]
@ -122,3 +132,13 @@ name = "wasm-bindgen-shared"
version = "0.2.68"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d649a3145108d7d3fbcde896a468d1bd636791823c9921135218ad89be08307"
[[package]]
name = "web-sys"
version = "0.3.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4bf6ef87ad7ae8008e15a355ce696bed26012b7caa21605188cfd8214ab51e2d"
dependencies = [
"js-sys",
"wasm-bindgen",
]

View file

@ -11,3 +11,12 @@ crate-type = ["cdylib"]
[dependencies]
wasm-bindgen = "0.2.63"
[dependencies.web-sys]
version = "0.3.4"
features = [
'console',
'AudioContext',
'AudioNode',
'MediaStream'
]

View file

@ -1,6 +1,30 @@
use wasm_bindgen::prelude::*;
use web_sys::console;
#[wasm_bindgen(start)]
pub fn run() {
using_web_sys();
testing();
}
fn using_web_sys() {
console::log_1(&"Hello using web-sys".into());
let js: JsValue = 4.into();
console::log_2(&"Logging arbitrary values looks like".into(), &js);
}
fn testing() {
console::log_1(&"Testing function".into());
}
#[wasm_bindgen]
pub fn add(n1: i32, n2: i32) -> i32 {
n1 + n2
pub fn handle_audio(n1: f32) -> () {
console::log_2(&"{}".into(), &n1.into());
}
#[wasm_bindgen]
pub fn foo(a: &JsValue) {
// ...
console::log_2(&"From Rust{}".into(), &a.into());
}

View file

@ -3,6 +3,7 @@
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "yarn electron:serve",
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"test:unit": "vue-cli-service test:unit",
@ -53,9 +54,6 @@
"pre-commit": "lint-staged"
},
"lint-staged": {
"*.{js,jsx,vue,ts,tsx}": [
"vue-cli-service lint",
"git add"
]
"*.{js,jsx,vue,ts,tsx}": ["vue-cli-service lint", "git add"]
}
}

View file

@ -8,20 +8,20 @@
import { defineComponent } from 'vue';
export default defineComponent({
name: 'Microphone',
setup() {
async setup() {
const bufferLen = 4096;
const numChannels = 1;
window.AudioContext = window.AudioContext || window.webkitAudioContext;
const audioContext = new AudioContext();
let result;
let cWasm;
const getCwasm = async () => {
await import('../../../crate/pkg').then(async module => {
result = await module.add(1, 2);
console.log(result);
cWasm = module;
});
}
getCwasm();
await getCwasm();
function handleStream(stream) {
const source = audioContext.createMediaStreamSource(stream);
@ -36,12 +36,12 @@
numChannels
);
node.onaudioprocess = (e) => {
const inputBuffer = new Float32Array(bufferLen);
e.inputBuffer.copyFromChannel(inputBuffer, 0);
// const int16 = new Int16Array(inputBuffer.buffer);
node.onaudioprocess = async e => {
const inputBuff = new Float32Array(bufferLen);
// get data from audio event and copy into inputBuff
e.inputBuffer.copyFromChannel(inputBuff, 0);
const int16 = new Int16Array(inputBuff.buffer);
result = await cWasm.foo(int16);
// TODO add handle audio stream to main process?
// window.postMessage(
@ -56,16 +56,14 @@
node.connect(context.destination);
}
navigator.mediaDevices
.getUserMedia({ audio: true })
.then((stream) => {
handleStream(stream)
})
.catch((error) => {
throw error;
});
navigator.mediaDevices
.getUserMedia({ audio: true })
.then(s => {
handleStream(s);
}).catch(error => {
throw error;
});
}
})