wav 1.4.0 copy "wav: ^1.4.0" to clipboard
wav: ^1.4.0 copied to clipboard

Super simple pure Dart package for reading and writing WAV and raw audio files.

wav #

pub package Build Status Coverage Status

Simple tools for reading and writing WAV and raw audio files. Written in pure Dart, with no dependencies.

This package currently supports reading and writing 8/16/24/32 bit PCM, and 32/64 bit float formats. Other formats can be added as needed (just file a bug).

This package also supports WAVE_FORMAT_EXTENSIBLE, but only for reading. Extensible WAVs are essentially treated as ordinary WAV files, because wValidBitsPerSample and dwChannelMask are ignored. Please file a bug if you have a use case for either of these metadata fields, or for writing extensible WAV files.

Usage #

// Read a WAV file.
final wav = await Wav.readFile(filename);

// Look at its metadata.
print(wav.format);
print(wav.samplesPerSecond);

// Mess with its audio data.
for (final chan in wav.channels) {
  for (int i = 0; i < chan.length; ++i) {
    chan[i] /= 2;  // Decrease the volume.
  }
}

// Write to another WAV file.
await wav.writeFile(otherFilename);
copied to clipboard
31
likes
160
points
11.3k
downloads

Publisher

unverified uploader

Weekly Downloads

2024.09.21 - 2025.04.05

Super simple pure Dart package for reading and writing WAV and raw audio files.

Repository (GitHub)
Contributing

Documentation

API reference

License

Apache-2.0 (license)

More

Packages that depend on wav