node-web-audio-api 1.0.0 → 1.0.2
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.
- package/CHANGELOG.md +35 -27
- package/README.md +24 -12
- package/js/AudioBufferSourceNode.js +1 -1
- package/js/ConvolverNode.js +1 -1
- package/node-web-audio-api.darwin-arm64.node +0 -0
- package/node-web-audio-api.darwin-x64.node +0 -0
- package/node-web-audio-api.linux-arm-gnueabihf.node +0 -0
- package/node-web-audio-api.linux-arm64-gnu.node +0 -0
- package/node-web-audio-api.linux-x64-gnu.node +0 -0
- package/node-web-audio-api.win32-arm64-msvc.node +0 -0
- package/node-web-audio-api.win32-x64-msvc.node +0 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,127 +1,135 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
-
## v1.0.
|
|
3
|
+
## v1.0.2 - 2025-03-01
|
|
4
4
|
|
|
5
|
-
-
|
|
5
|
+
- Fix error handling when setting buffer in ABSN and Convolver
|
|
6
|
+
|
|
7
|
+
## v1.0.1 - 2025-01-17
|
|
8
|
+
|
|
9
|
+
- Update upstream crate to [v1.2.0](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-120-2025-01-16)
|
|
10
|
+
|
|
11
|
+
## v1.0.0 - 2025-01-11
|
|
12
|
+
|
|
13
|
+
- Align version with upstream crate
|
|
6
14
|
- Refactor CI
|
|
7
15
|
|
|
8
|
-
## v0.21.5
|
|
16
|
+
## v0.21.5 - 2024-12-23
|
|
9
17
|
|
|
10
18
|
- Fix: Use module import for `AudioWorklet#addModule`
|
|
11
19
|
- Feat: Resolve `AudioWorkletNode` when installed in `node_modules`
|
|
12
20
|
- Ensure support of `AudioWorkletNode` that use Web Assembly
|
|
13
21
|
|
|
14
|
-
## v0.21.4
|
|
22
|
+
## v0.21.4 - 2024-12-16
|
|
15
23
|
|
|
16
24
|
- Update upstream crate to [v1.1.0](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-110-2024-12-11)
|
|
17
25
|
|
|
18
|
-
## v0.21.3
|
|
26
|
+
## v0.21.3 - 2024-10-06
|
|
19
27
|
|
|
20
28
|
- Fix typescript export
|
|
21
29
|
|
|
22
|
-
## v0.21.2
|
|
30
|
+
## v0.21.2 - 2024-09-20
|
|
23
31
|
|
|
24
32
|
- Update upstream crate to [v1.0.1](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-101-2024-09-18)
|
|
25
33
|
- Fix: Make sure `AudioBuffer` returned by `OfflineContext` is valid
|
|
26
34
|
- Fix: Allow contexts to be properly garbage collected
|
|
27
35
|
|
|
28
|
-
## v0.21.1
|
|
36
|
+
## v0.21.1 - 2024-06-10
|
|
29
37
|
|
|
30
38
|
- Feat: Buffer pool for AudioWorketProcessor
|
|
31
39
|
- Fix: Propagate `addModule` errors to main thread
|
|
32
40
|
- Fix: Memory leak due to `onended` events
|
|
33
41
|
|
|
34
|
-
## v0.21.0
|
|
42
|
+
## v0.21.0 - 2024-05-17
|
|
35
43
|
|
|
36
44
|
- Feat: Implement AudioWorkletNode
|
|
37
45
|
|
|
38
|
-
## v0.20.0
|
|
46
|
+
## v0.20.0 - 2024-04-29
|
|
39
47
|
|
|
40
48
|
- Update upstream crate to [v0.44.0](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0440-2024-04-22)
|
|
41
49
|
- Implement ScriptProcessorNode
|
|
42
50
|
- Fix memory leak introduced in v0.19.0
|
|
43
51
|
- Improve events compliance
|
|
44
52
|
|
|
45
|
-
## v0.19.0
|
|
53
|
+
## v0.19.0 - 2024-04-17
|
|
46
54
|
|
|
47
55
|
- Update upstream crate to [1.0.0-rc.5](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0430--100-rc5-2024-04-15)
|
|
48
56
|
- Provide JS facades with proper inheritance chain for all exposed interfaces
|
|
49
57
|
- Implement all AudioNode connect / disconnect alternatives
|
|
50
58
|
- Improve compliance and error handling
|
|
51
59
|
|
|
52
|
-
## v0.18.0
|
|
60
|
+
## v0.18.0 - 2024-03-13
|
|
53
61
|
|
|
54
62
|
- Fix `MediaStreamAudioSourceNode`
|
|
55
63
|
|
|
56
|
-
## v0.17.0
|
|
64
|
+
## v0.17.0 - 2024-03-08
|
|
57
65
|
|
|
58
66
|
- Update upstream crate to [1.0.0-rc.2](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-100-rc2-2024-03-07)
|
|
59
67
|
- Improve compliance and error handling
|
|
60
68
|
|
|
61
|
-
## v0.16.0
|
|
69
|
+
## v0.16.0 - 2024-02-09
|
|
62
70
|
|
|
63
71
|
- Update upstream create to [v0.42.0](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0420-2024-02-05)
|
|
64
72
|
- Improve Error handling
|
|
65
|
-
- Add
|
|
73
|
+
- Add channelCount to media constraints
|
|
66
74
|
|
|
67
|
-
## v0.15.0
|
|
75
|
+
## v0.15.0 - 2024-01-16
|
|
68
76
|
|
|
69
77
|
- Update upstream create to [v0.41.1](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0411-2024-01-11)
|
|
70
78
|
- Better error handling
|
|
71
79
|
- Implement online AudioContext and AudioScheduledSourceNode events
|
|
72
80
|
- Test against wpt
|
|
73
81
|
|
|
74
|
-
## v0.14.0
|
|
82
|
+
## v0.14.0 - 2023-12-06
|
|
75
83
|
|
|
76
84
|
- Update upstream create to [v0.38.0](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0380-2023-12-03)
|
|
77
85
|
- Implement AudioListener
|
|
78
86
|
|
|
79
|
-
## v0.13.0
|
|
87
|
+
## v0.13.0 - 2023-11-08
|
|
80
88
|
|
|
81
89
|
- Update upstream crate to [v0.36.1](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0361-2023-11-08)
|
|
82
90
|
- Ship build for linux arm64
|
|
83
91
|
- Typescript support
|
|
84
92
|
|
|
85
|
-
## v0.12.0
|
|
93
|
+
## v0.12.0 - 2023-09-04
|
|
86
94
|
|
|
87
95
|
- Update upstream crate to [v0.33](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0330-2023-07-27)
|
|
88
96
|
|
|
89
|
-
## v0.11.0
|
|
97
|
+
## v0.11.0 - 2023-07-21
|
|
90
98
|
|
|
91
99
|
- Update upstream crate to [v0.32](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0320-2023-07-16)
|
|
92
100
|
- Implement AudioDestination API
|
|
93
101
|
- Make decodeAudioData(arrayBuffer) API compliant (drop `load` helper)
|
|
94
102
|
|
|
95
|
-
## v0.10.0
|
|
103
|
+
## v0.10.0 - 2023-05-26
|
|
96
104
|
|
|
97
105
|
- Update upstream crate to [v0.31](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0310-2023-06-25)
|
|
98
106
|
|
|
99
|
-
## v0.9.0
|
|
107
|
+
## v0.9.0 - 2023-06-08
|
|
100
108
|
|
|
101
109
|
- Update upstream crate to [v0.30](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0300-2023-06-07)
|
|
102
110
|
|
|
103
|
-
## v0.8.0
|
|
111
|
+
## v0.8.0 - 2023-05-19
|
|
104
112
|
|
|
105
|
-
- Implement MediaDevices
|
|
113
|
+
- Implement MediaDevices enumerateDevices and getUserMedia
|
|
106
114
|
- Use jack as default output if exists on linux
|
|
107
115
|
|
|
108
|
-
## v0.7.0
|
|
116
|
+
## v0.7.0 - 2023-02-23
|
|
109
117
|
|
|
110
118
|
- Improve readme & doc
|
|
111
119
|
- Fix AudioParam method names
|
|
112
120
|
|
|
113
|
-
## v0.6.0
|
|
121
|
+
## v0.6.0 - 2023-02-01
|
|
114
122
|
|
|
115
123
|
- Basic support for mediaDevices & MediaStreamAudioSourceNode
|
|
116
124
|
- Add bindings to ConvolverNode, AnalyserNode & Panner nodes
|
|
117
125
|
- Update upstream crate to [v0.26](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0250-2022-11-06)
|
|
118
126
|
|
|
119
|
-
## v0.5.0
|
|
127
|
+
## v0.5.0 - 2022-12-19
|
|
120
128
|
|
|
121
129
|
- Implement AudioParam#setValueCurveAtTime
|
|
122
130
|
- Offline context constructor
|
|
123
131
|
|
|
124
|
-
## v0.4.0
|
|
132
|
+
## v0.4.0 - 2022-11-07
|
|
125
133
|
|
|
126
134
|
- Implement offline audio context
|
|
127
135
|
- Update upstream crate to [v0.24](https://github.com/orottier/web-audio-api-rs/blob/main/CHANGELOG.md#version-0240-2022-09-10)
|
package/README.md
CHANGED
|
@@ -60,24 +60,36 @@ npm run build
|
|
|
60
60
|
|
|
61
61
|
3. Run the examples from the project's root directory
|
|
62
62
|
```sh
|
|
63
|
-
node examples/granular-scrub.
|
|
63
|
+
node examples/granular-scrub.js
|
|
64
64
|
```
|
|
65
65
|
|
|
66
66
|
## Caveats
|
|
67
67
|
|
|
68
|
+
- `AudioBuffer#getChannelData` is implemented but not reliable in some situations. Your should prefer `AudioBuffer#copyToChannel` and `AudioBuffer#copyFromChannel` when you want to access or manipulate the underlying samples in a safe way.
|
|
68
69
|
- `Streams`: only a minimal audio input stream and the `MediaStreamSourceNode` are provided. All other `MediaStream` features are left on the side for now as they principally concern a different API specification, which is not a trivial problem.
|
|
69
70
|
|
|
70
|
-
## Supported Platforms
|
|
71
|
+
## Supported Platforms - Prebuilt Binaries
|
|
72
|
+
|
|
73
|
+
We provide prebuilt binaries for the following platforms:
|
|
74
|
+
|
|
75
|
+
| | binaries |
|
|
76
|
+
|-----------------------------------------------------|:--------:|
|
|
77
|
+
| Windows x64 | ✓ |
|
|
78
|
+
| Windows arm64 | ✓ |
|
|
79
|
+
| macOS x64 | ✓ |
|
|
80
|
+
| macOS aarch64 | ✓ |
|
|
81
|
+
| Linux x64 gnu (jack / pipewire-jack) | ✓ |
|
|
82
|
+
| Linux arm gnueabihf (jack / pipewire-jack) | ✓ |
|
|
83
|
+
| Linux arm64 gnu (jack / pipewire-jack) | ✓ |
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
### Important notes
|
|
88
|
+
|
|
89
|
+
- If you need support for another platform, please fill an [issue](https://github.com/ircam-ismm/node-web-audio-api/issues) and we will see what we can do.
|
|
90
|
+
|
|
91
|
+
- All provided Linux binaries are built with the `jack` flag, which should work either with properly configured [Jack](https://jackaudio.org/) or [pipewire-jack](https://pipewire.org/) backends. If this is a limitation for you, please fill an [issue](https://github.com/ircam-ismm/node-web-audio-api/issues) and we will see what we can do.
|
|
71
92
|
|
|
72
|
-
| | binaries | tested |
|
|
73
|
-
| --------------------------- | ------ | ------ |
|
|
74
|
-
| Windows x64 | ✓ | |
|
|
75
|
-
| Windows arm64 | ✓ | |
|
|
76
|
-
| macOS x64 | ✓ | ✓ |
|
|
77
|
-
| macOS aarch64 | ✓ | ✓ |
|
|
78
|
-
| Linux x64 gnu | ✓ | |
|
|
79
|
-
| Linux arm gnueabihf (RPi) | ✓ | ✓ |
|
|
80
|
-
| Linux arm64 gnu (RPi) | ✓ | ✓ |
|
|
81
93
|
|
|
82
94
|
## Manual Build
|
|
83
95
|
|
|
@@ -161,7 +173,7 @@ Then run:
|
|
|
161
173
|
npm run wpt # build in debug mode and run all wpt test
|
|
162
174
|
npm run wpt:only # run all wpt test without build
|
|
163
175
|
npm run wpt -- --list # list all wpt test files
|
|
164
|
-
npm run wpt -- --filter <string> # apply <string> filter on executed/listed wpt tests
|
|
176
|
+
npm run wpt -- --filter <string> # apply <string> filter on executed/listed wpt tests
|
|
165
177
|
```
|
|
166
178
|
|
|
167
179
|
## License
|
|
@@ -179,7 +179,7 @@ module.exports = (jsExport, nativeBinding) => {
|
|
|
179
179
|
if (value === null) {
|
|
180
180
|
console.warn('Setting the \'buffer\' property on \'AudioBufferSourceNode\' to \'null\' is not supported yet');
|
|
181
181
|
return;
|
|
182
|
-
} else if (!(
|
|
182
|
+
} else if (!(value instanceof jsExport.AudioBuffer)) {
|
|
183
183
|
throw new TypeError('Failed to set the \'buffer\' property on \'AudioBufferSourceNode\': Failed to convert value to \'AudioBuffer\'');
|
|
184
184
|
}
|
|
185
185
|
|
package/js/ConvolverNode.js
CHANGED
|
@@ -141,7 +141,7 @@ module.exports = (jsExport, nativeBinding) => {
|
|
|
141
141
|
if (value === null) {
|
|
142
142
|
console.warn('Setting the \'buffer\' property on \'ConvolverNode\' to \'null\' is not supported yet');
|
|
143
143
|
return;
|
|
144
|
-
} else if (!(
|
|
144
|
+
} else if (!(value instanceof jsExport.AudioBuffer)) {
|
|
145
145
|
throw new TypeError('Failed to set the \'buffer\' property on \'ConvolverNode\': Failed to convert value to \'AudioBuffer\'');
|
|
146
146
|
}
|
|
147
147
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|