FLUTTER ECOSYSTEM

liamappelbe/wav

用於讀取和寫入 wav 檔案的 Dart 套件

wav 專案封面
Stars
20
Forks
7
最近推送(UTC)
2025年7月3日
專案狀態
未封存
Liam Appelbe GitHub avatar
GITHUB User

Liam Appelbe ↗

語言Dart

此儲存庫發佈的套件

使用的依賴

依賴清單 2 項
  • lints開發依賴^1.0.0
  • test開發依賴^1.20.2

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

展開 / 收合專案 README

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);