(buffer: AudioBuffer)
| 173 | // ============================================================================ |
| 174 | |
| 175 | export function serializeAudioBuffer(buffer: AudioBuffer): { |
| 176 | channels: Float32Array[]; |
| 177 | sampleRate: number; |
| 178 | length: number; |
| 179 | numberOfChannels: number; |
| 180 | } { |
| 181 | const channels: Float32Array[] = []; |
| 182 | |
| 183 | for (let i = 0; i < buffer.numberOfChannels; i++) { |
| 184 | // Create a copy of the channel data |
| 185 | channels.push(new Float32Array(buffer.getChannelData(i))); |
| 186 | } |
| 187 | |
| 188 | return { |
| 189 | channels, |
| 190 | sampleRate: buffer.sampleRate, |
| 191 | length: buffer.length, |
| 192 | numberOfChannels: buffer.numberOfChannels |
| 193 | }; |
| 194 | } |
| 195 | |
| 196 | export function deserializeAudioBuffer( |
| 197 | data: { channels: ArrayLike<number>[]; sampleRate: number; length: number; numberOfChannels: number }, |
no outgoing calls
no test coverage detected