factChunk(): Coder<FactChunk>
Creates a coder for fact chunks.
Encodes and decodes fact chunk structures with:
- 4-byte chunk ID ("fact")
- 4-byte chunk size (always 4)
- 4-byte sample length
Basic fact chunk encoding and decoding
Basic fact chunk encoding and decoding
import { assertEquals } from "@std/assert"; import { factChunk } from "@binstruct/wav"; const factCoder = factChunk(); const testFact = { chunkId: "fact", chunkSize: 4, sampleLength: 44100 }; const buffer = new Uint8Array(100); const bytesWritten = factCoder.encode(testFact, buffer); const [decoded, bytesRead] = factCoder.decode(buffer); assertEquals(bytesRead, 12); assertEquals(bytesWritten, 12); assertEquals(decoded.chunkId, "fact"); assertEquals(decoded.chunkSize, 4); assertEquals(decoded.sampleLength, 44100);
Coder<FactChunk>
A coder that can encode/decode FactChunk objects