Package com.tino1b2be.dtmf.io.wav
AudioSourceProvider implementation for DTMF-Decoder v2.
This package hosts the public surface of the dtmf-io-wav
module: WavAudioSourceProvider, the content-based WAV provider
that the dtmf-io facade discovers via
ServiceLoader, and WavAudioSource, the
com.tino1b2be.dtmf.io.AudioSource implementation it returns from
open(...). The provider is registered through
META-INF/services/com.tino1b2be.dtmf.io.AudioSourceProvider so
simply adding dtmf-io-wav to a consumer's runtime classpath
enables AudioSources.open(wavFile) against PCM and IEEE float WAV
files without any additional wiring.
The reader is a clean-room RIFF parser (Requirement 9.12): it does
not delegate format decoding to javax.sound.sampled and it
declares zero external runtime dependencies (Requirement 1.3). Supported
payloads are PCM integer at 16, 24, or 32 bits and IEEE float at 32 or
64 bits, each at mono or stereo channel counts (Requirements 9.7 through
9.9); WAVEFORMATEXTENSIBLE headers whose SubFormat GUID
resolves to one of those cases are opened transparently, and compressed
codecs (μ-law, A-law, ADPCM, etc.) are rejected with an
UnsupportedAudioFormatException identifying the compression code
(Requirement 9.10). All production classes in the dtmf-io-wav
module live under this package root (Requirement 2.5); parsing utilities
that are not part of the public surface live under
com.tino1b2be.dtmf.io.wav.internal.
The concrete types are introduced starting at Stage 6 of the
dtmf-io spec; this package-info.java is present from
Stage 1 so the source tree exists for the build-shape smoke tests in
Task 1.8.
- Since:
- 2.1.0
-
ClassesClassDescription
AudioSourceProviderimplementation for theRIFF/WAVE(andRF64/WAVE) container formats.