Writing Wave files
SpessaSynth has a helper function for writing wave files.
audioBufferToWav
Converts an audio buffer into a fully valid wave file.
const file = audioBufferToWav(audioBuffer, normalizeAudio = true, channelOffset = 0, metadata = {}, loop = undefined, channelCount = all);
audioBuffer
- AudioBuffer
- the buffer to write. Multiple channels are allowed. - normalizeAudio
- optional boolean
- if true, the gain of the entire song will be adjusted, so the max sample is always 32,767 or min is always -32,768 (whichever is greater). Recommended. - channelOffset
- optional number
- if the buffer has more than two channels, you can specify the channel offset to use. This is especially useful in one output mode - metadata
- optional Object
described below. All options are string and are optional: - title
- the song’s title - artist
- the song’s artist - album
- the song’s album - genre
- the song’s genre - loop
- optional Object
that will write loop points to the file (using the cue
chunk) - start
- start time in seconds - end
- end time in seconds - channelCount
- optional number
that limits the channel count to a given number. Otherwise, all channels from channelOffset
to the last channel are used. The metadata uses the INFO
chunk to write the information. It is encoded with utf-8