Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Emscripten 3.1.9 audio worklet #7073

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
494b1bf
Add files via upload
Jonathhhan Aug 21, 2022
baacdf8
Add files via upload
Jonathhhan Aug 21, 2022
38a7b9b
Add files via upload
Jonathhhan Aug 21, 2022
611da25
Add files via upload
Jonathhhan Aug 21, 2022
1e96873
Update config.emscripten.default.mk
Jonathhhan Aug 21, 2022
6aa60b5
Update config.emscripten.default.mk
Jonathhhan Aug 21, 2022
5a7c75c
Update config.emscripten.default.mk
Jonathhhan Aug 23, 2022
d34c5db
Update build-emscripten.yml
Jonathhhan Aug 26, 2022
9e59218
Update library_html5audio.js
Jonathhhan Aug 27, 2022
e64aaa4
Update config.emscripten.default.mk
Jonathhhan Aug 27, 2022
b1797ed
Add files via upload
Jonathhhan Sep 10, 2022
ec28a7b
Add files via upload
Jonathhhan Sep 10, 2022
c69214c
Add files via upload
Jonathhhan Sep 10, 2022
a5e8c07
Update library_html5audio.js
Jonathhhan Sep 10, 2022
31044f7
Add files via upload
Jonathhhan Sep 10, 2022
2b80299
Add files via upload
Jonathhhan Sep 10, 2022
d20158e
Delete examples/audioWorklet/emscriptenOfxPdExample directory
Jonathhhan Sep 10, 2022
434fa11
Add files via upload
Jonathhhan Sep 10, 2022
76cb537
Update library_html5audio.js
Jonathhhan Sep 11, 2022
89b12c6
Update library_html5audio.js
Jonathhhan Sep 11, 2022
4300758
Update library_html5audio.js
Jonathhhan Sep 12, 2022
92ad10c
Update library_html5audio.js
Jonathhhan Sep 12, 2022
d7c2c54
Update library_html5audio.js
Jonathhhan Sep 12, 2022
cf98098
Update build-emscripten.yml
Jonathhhan Sep 12, 2022
ad5f32f
Add files via upload
Jonathhhan Sep 12, 2022
5b77f7f
Update config.emscripten.default.mk
Jonathhhan Sep 12, 2022
848a2b7
Add files via upload
Jonathhhan Sep 13, 2022
bf7b2cd
Add files via upload
Jonathhhan Sep 14, 2022
61e24d3
Add files via upload
Jonathhhan Sep 14, 2022
6b6eae0
Add files via upload
Jonathhhan Sep 14, 2022
e99734d
Add files via upload
Jonathhhan Sep 14, 2022
336c48d
Add files via upload
Jonathhhan Sep 14, 2022
9d0edcf
Add files via upload
Jonathhhan Sep 14, 2022
f248e92
Add files via upload
Jonathhhan Sep 14, 2022
8ab68e1
Add files via upload
Jonathhhan Sep 14, 2022
4131592
Add files via upload
Jonathhhan Sep 14, 2022
9a46e6e
Add files via upload
Jonathhhan Sep 14, 2022
68d75e0
Update audio_worklet.js
Jonathhhan Sep 14, 2022
a5ff344
Update library_webaudio.js
Jonathhhan Sep 14, 2022
33d1744
Merge branch 'openframeworks:master' into emscripten_3.1.9_audioWorklet
Jonathhhan Sep 14, 2022
66ecda1
Merge branch 'openframeworks:master' into emscripten_3.1.9_audioWorklet
Jonathhhan Sep 14, 2022
c1f1771
Add files via upload
Jonathhhan Sep 20, 2022
3471288
Add files via upload
Jonathhhan Sep 20, 2022
7782493
Update config.emscripten.default.mk
Jonathhhan Sep 20, 2022
5ebb715
Add files via upload
Jonathhhan Sep 20, 2022
31f0b0c
Update ofxAppEmscriptenWindow.cpp
Jonathhhan Oct 2, 2022
0666d51
Add files via upload
Jonathhhan Oct 2, 2022
72a8ea9
Add files via upload
Jonathhhan Oct 2, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build-emscripten.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Docker Step
run: "docker run -di --name emscripten -v $PWD:/src emscripten/emsdk:1.40.0 bash"
run: "docker run -di --name emscripten -v $PWD:/src emscripten/emsdk:3.1.21 bash"
- name: Download libs
run: ./scripts/$TARGET/download_libs.sh
- name: Install dependencies
Expand Down
13 changes: 13 additions & 0 deletions addons/ofxEmscripten/emscriptenAVPDEffect/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Attempt to load a config.make file.
# If none is found, project defaults in config.project.make will be used.
ifneq ($(wildcard config.make),)
include config.make
endif

# make sure the the OF_ROOT location is defined
ifndef OF_ROOT
OF_ROOT=$(realpath ../../..)
endif

# call the project makefile!
include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk
1 change: 1 addition & 0 deletions addons/ofxEmscripten/emscriptenAVPDEffect/addons.make
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ofxPd
292 changes: 292 additions & 0 deletions addons/ofxEmscripten/emscriptenAVPDEffect/bin/data/pd/fft.pd
Original file line number Diff line number Diff line change
@@ -0,0 +1,292 @@
#N canvas 72 96 871 715 12;
#X obj 63 584 *~;
#X obj 288 539 *~;
#X obj 259 538 *~;
#X obj 351 540 *~;
#X obj 319 539 *~;
#X obj 319 567 +~;
#X obj 259 568 -~;
#X obj 457 470 *~;
#X obj 183 260 *~;
#X obj 151 260 *~;
#X obj 151 285 +~;
#X obj 275 149 *~;
#X obj 243 149 *~;
#X obj 507 384 *~;
#X obj 475 384 *~;
#X obj 168 113 *~;
#X obj 63 611 outlet~;
#X obj 63 559 *~;
#X obj 205 112 inlet~;
#X obj 168 190 rfft~;
#X obj 63 535 rifft~;
#X obj 475 412 rsqrt~;
#X obj 243 173 +~;
#X obj 397 470 *~;
#X obj 101 583 sig~ 0.0002;
#N canvas 167 161 699 396 decision 0;
#X obj 49 101 inlet~;
#X obj 50 341 outlet~;
#X obj 50 183 -~;
#X obj 50 226 clip~ 0 1;
#X obj 50 204 *~ 1e+20;
#X obj 196 98 inlet~;
#X text 137 213 stronger than;
#X text 139 228 old one;
#X obj 274 202 -~;
#X obj 288 177 lrshift~ 1;
#X obj 274 250 clip~ 0 1;
#X obj 274 228 *~ 1e+20;
#X obj 450 202 -~;
#X obj 450 250 clip~ 0 1;
#X obj 450 228 *~ 1e+20;
#X obj 464 177 lrshift~ -1;
#X obj 50 283 *~;
#X obj 50 312 *~;
#X text 135 199 1 if new signal;
#X text 55 73 new;
#X text 203 70 old;
#X text 51 12 Choose whether to replace the "old" signal with the "new"
one. The "new" one must be stronger than the old one and also must
be stronger than its two neighboring channels;
#X text 267 283 1 if we're louder than neighbor;
#X connect 0 0 2 0;
#X connect 0 0 9 0;
#X connect 0 0 8 0;
#X connect 0 0 12 0;
#X connect 0 0 15 0;
#X connect 2 0 4 0;
#X connect 3 0 16 0;
#X connect 4 0 3 0;
#X connect 5 0 2 1;
#X connect 8 0 11 0;
#X connect 9 0 8 1;
#X connect 10 0 16 1;
#X connect 11 0 10 0;
#X connect 12 0 14 0;
#X connect 13 0 17 1;
#X connect 14 0 13 0;
#X connect 15 0 12 1;
#X connect 16 0 17 0;
#X connect 17 0 1 0;
#X restore 151 312 pd decision;
#X obj 475 434 *~;
#N canvas 352 333 393 308 divide-by-prev 0;
#X obj 204 88 inlet~;
#X obj 266 90 inlet~;
#X obj 204 240 outlet~;
#X obj 267 240 outlet~;
#X obj 70 240 outlet~;
#X obj 138 240 outlet~;
#X obj 171 169 *~;
#X obj 138 169 *~;
#X obj 103 170 *~;
#X obj 70 170 *~;
#X obj 70 198 +~;
#X obj 138 197 -~;
#X obj 89 34 tabreceive~ \$0-last-real;
#X obj 121 61 tabreceive~ \$0-last-imag;
#X connect 0 0 2 0;
#X connect 0 0 9 0;
#X connect 0 0 6 0;
#X connect 1 0 3 0;
#X connect 1 0 8 0;
#X connect 1 0 7 0;
#X connect 6 0 11 1;
#X connect 7 0 11 0;
#X connect 8 0 10 1;
#X connect 9 0 10 0;
#X connect 10 0 4 0;
#X connect 11 0 5 0;
#X connect 12 0 9 1;
#X connect 12 0 7 1;
#X connect 13 0 8 1;
#X connect 13 0 6 1;
#X restore 500 279 pd divide-by-prev;
#N canvas 650 183 602 327 switch 0;
#X obj 61 160 inlet~;
#X obj 149 96 inlet~;
#X obj 211 97 inlet~;
#X obj 315 94 inlet~;
#X obj 375 94 inlet~;
#X obj 409 182 -~;
#X obj 380 228 +~;
#X obj 414 226 *~;
#X obj 292 179 -~;
#X obj 262 225 +~;
#X obj 296 225 *~;
#X obj 261 275 outlet~;
#X obj 380 271 outlet~;
#X text 88 25 switch between two pairs of inputs. If first inlet is
one \, take the left-hand pair \, otherwise the right-hand one.;
#X text 57 137 switch;
#X text 134 73 pass this if one;
#X text 311 74 pass this if zero;
#X connect 0 0 10 1;
#X connect 0 0 7 1;
#X connect 1 0 8 0;
#X connect 2 0 5 0;
#X connect 3 0 9 0;
#X connect 3 0 8 1;
#X connect 4 0 6 0;
#X connect 4 0 5 1;
#X connect 5 0 7 0;
#X connect 6 0 12 0;
#X connect 7 0 6 1;
#X connect 8 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 9 1;
#X restore 277 369 pd switch;
#X obj 442 174 tabreceive~ \$0-inc-real;
#X obj 459 226 tabreceive~ \$0-inc-imag;
#X obj 616 304 tabsend~ \$0-last-imag;
#X obj 577 327 tabsend~ \$0-last-real;
#X obj 457 510 tabsend~ \$0-inc-imag;
#X obj 397 536 tabsend~ \$0-inc-real;
#X msg 558 380 set \$1;
#X obj 558 404 s revtime-set;
#X obj 681 141 loadbang;
#X obj 548 428 expr 1 - 0.2/max(0.2 \, $f1);
#X obj 322 55 tabreceive~ \$0-amp-real;
#X obj 337 107 tabreceive~ \$0-amp-imag;
#X obj 319 621 tabsend~ \$0-amp-imag;
#X obj 259 650 tabsend~ \$0-amp-real;
#X text 314 15 previous output amplitude \, encoding both magnitude
and phase, f 33;
#X text 435 136 previous phase increment (unit-magnitude complex number)
, f 31;
#X obj 442 199 +~ 1e-15;
#X obj 322 81 +~ 1e-15;
#X text 61 635 IFFT and output;
#X text 491 457 normalize increments between 0 and 1 according to revtime.
, f 29;
#X text 352 564 propagate amplitudes by multiplying in the increments
\, which advance the phase and drop magnitude according to revtime.
, f 40;
#X text 31 289 choose whether to punch in new (amplitude \, increment)
pair, f 16;
#N canvas 650 183 602 327 switch 0;
#X obj 61 160 inlet~;
#X obj 149 96 inlet~;
#X obj 211 97 inlet~;
#X obj 315 94 inlet~;
#X obj 375 94 inlet~;
#X obj 409 182 -~;
#X obj 380 228 +~;
#X obj 414 226 *~;
#X obj 292 179 -~;
#X obj 262 225 +~;
#X obj 296 225 *~;
#X obj 261 275 outlet~;
#X obj 380 271 outlet~;
#X text 88 25 switch between two pairs of inputs. If first inlet is
one \, take the left-hand pair \, otherwise the right-hand one.;
#X text 57 137 switch;
#X text 134 73 pass this if one;
#X text 311 74 pass this if zero;
#X connect 0 0 10 1;
#X connect 0 0 7 1;
#X connect 1 0 8 0;
#X connect 2 0 5 0;
#X connect 3 0 9 0;
#X connect 3 0 8 1;
#X connect 4 0 6 0;
#X connect 4 0 5 1;
#X connect 5 0 7 0;
#X connect 6 0 12 0;
#X connect 7 0 6 1;
#X connect 8 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 9 1;
#X restore 397 353 pd switch;
#X obj 680 85 tgl 15 1 empty empty empty 0 -6 0 8 -257985 -1 -1 1 1
;
#X obj 680 110 switch~ 4096 4 1;
#X obj 548 357 r \$0-revtime;
#X msg 681 167 \; window-size 4096 \;;
#N canvas 72 131 526 237 tables 0;
#X obj 52 56 array define \$0-last-real 2048;
#X obj 252 56 array define \$0-last-imag 2048;
#X obj 77 103 array define \$0-amp-real 2048;
#X obj 78 156 array define \$0-inc-real 2048;
#X obj 291 160 array define \$0-inc-imag 2048;
#X obj 267 105 array define \$0-amp-imag 2048;
#X restore 562 70 pd tables;
#X obj 742 60 inlet;
#X obj 742 85 s \$0-revtime;
#X obj 99 560 tabreceive~ hann;
#X obj 168 84 tabreceive~ hann;
#X connect 0 0 16 0;
#X connect 1 0 6 1;
#X connect 2 0 6 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 41 0;
#X connect 6 0 42 0;
#X connect 7 0 1 0;
#X connect 7 0 3 0;
#X connect 7 0 33 0;
#X connect 8 0 10 1;
#X connect 9 0 10 0;
#X connect 10 0 25 0;
#X connect 11 0 22 1;
#X connect 12 0 22 0;
#X connect 13 0 21 0;
#X connect 14 0 21 0;
#X connect 15 0 19 0;
#X connect 17 0 0 0;
#X connect 18 0 15 1;
#X connect 19 0 9 0;
#X connect 19 0 9 1;
#X connect 19 0 27 0;
#X connect 19 0 28 1;
#X connect 19 1 8 0;
#X connect 19 1 8 1;
#X connect 19 1 27 1;
#X connect 19 1 28 2;
#X connect 20 0 17 0;
#X connect 21 0 26 0;
#X connect 22 0 25 1;
#X connect 23 0 2 0;
#X connect 23 0 4 0;
#X connect 23 0 34 0;
#X connect 24 0 0 1;
#X connect 25 0 28 0;
#X connect 25 0 51 0;
#X connect 26 0 23 1;
#X connect 26 0 7 1;
#X connect 27 0 51 1;
#X connect 27 1 51 2;
#X connect 27 2 32 0;
#X connect 27 3 31 0;
#X connect 28 0 20 0;
#X connect 28 0 3 1;
#X connect 28 0 2 1;
#X connect 28 1 20 1;
#X connect 28 1 1 1;
#X connect 28 1 4 1;
#X connect 29 0 45 0;
#X connect 30 0 51 4;
#X connect 35 0 36 0;
#X connect 37 0 55 0;
#X connect 38 0 26 1;
#X connect 39 0 46 0;
#X connect 40 0 11 0;
#X connect 40 0 11 1;
#X connect 40 0 28 4;
#X connect 45 0 51 3;
#X connect 46 0 12 0;
#X connect 46 0 12 1;
#X connect 46 0 28 3;
#X connect 51 0 14 0;
#X connect 51 0 14 1;
#X connect 51 0 23 0;
#X connect 51 1 13 0;
#X connect 51 1 13 1;
#X connect 51 1 7 0;
#X connect 52 0 53 0;
#X connect 54 0 35 0;
#X connect 54 0 38 0;
#X connect 57 0 58 0;
#X connect 59 0 17 1;
#X connect 60 0 15 0;