wav.datatype Reference¶
BOOPSI datatype class reference for wav.datatype, synthesised from the AmigaOS NDK 3.2 Release 4 (Autodocs/wav).
Class properties¶
| Property | Value |
|---|---|
| Display name | wav.datatype |
| Group ID | GID_SOUND = MAKE_ID('s','o','u','n') (sound) |
| Superclass | sound.datatype |
| File format | RIFF WAVE (Windows audio) |
| Methods declared | 1 |
| Parent class page | sound.datatype |
Description¶
The WAV data type, a sub-class of the sound.datatype, is used to load RIFF WAV sound files.
Methods¶
Each method is declared in the autodoc METHODS block. Method implementations are inherited from the superclass unless noted otherwise in the parent's autodoc.
| Method | Purpose |
|---|---|
OM_NEW |
Create a new sound object from a RIFF WAV. The source may be either a file or the clipboard. |
See also¶
sound.datatype/
Release history (NDK 3.2 R4)¶
Excerpted from ReleaseNotes/wav-dt-RelNotes in the NDK 3.2 R4 distribution.
------------------------ AmigaOS 4 project ---------------------------
wav.datatype 51.1 (7.11.2004)
- initial release.
wav.datatype 51.2 (13.11.2004)
- implemented saving.
wav.datatype 51.3 (3.4.2005)
- fixed decoding of stereo samples.
wav.datatype 51.4 (12.10.2005)
- Now with OS3.x compatible version string.
- The 68k stubs are now in C.
- No longer allocates MEMF_PUBLIC memory.
- Build without support for mpega.library because the necessary
includes are missing in CVS.
- Now builds with gcc 4.0.0 with -Wall -Werror.
- All global data is now read-only.
- Removed empty sections.
wav.datatype 51.5 (14.10.2005)
- Added a new datatype descriptor with a matching version number
and ensured its always automatically rebuild with the same version
number as the datatype itself.
wav.datatype 51.6 (10.11.2005)
- fixed crash with malformed samples. And no new descriptor was
included because Amiga Rexx doesn't run on Linux x86... (beside that
a new descriptor with every new release is IMHO nonsense anyway).
- re-enabled mpeg audio support.
wav.datatype 52.1 (10.12.2006)
- Now builds with -Wwrite-strings.
wav.datatype 52.2 (08.03.2007)
- fixed mpeg decoder.
wav.datatype 52.3 (22.04.2007)
- now support 32bit PCM samples.
wav.datatype 52.4 (23.9.2007)
- FreeVec() could be called with incremented pointers, fixed.
Thanks to Thore Böckelmann for the report.
wav.datatype 53.1 (19.6.2009)
- Bumped to 53.
- Fixed obtain/release vectors.
- Fixed up makefile.os4.
- Refactored library initialization to remove the broken lock
Semaphore code which is common to almost all classes.
- Refactored code to use struct ClassLibrary as a base.
- Added some test files.
- Added mkrelease script.
- Converted to newlib from clib2.
- Compiled with GCC 4.2.4 and fixed all warnings.
- Bumped minimum version requirements to 53.
wav.datatype 53.2 (29.10.2009)
- While basically prepared to handle >8bit WAV-PCM data, the support
was utterly incomplete, broken and never worked.
Completed and fixed support for >8bit WAV-PCM both for loading and
saving. Needs sound.datatype 53.2.
wav.datatype 53.3 (31.10.2009)
- Fixed DVI/IMA-ADPCM decoding to make use of the newly introduced
16bit capabilities. Thanks to Alex Carmona for the report. #5688
- Also fixed Microsoft ADPCM, A-Law and mu-Law decoding while I was at
it ;)
Note: The wav datatype also supports MPEG encoded sound data, but as
I didn't find any program for Amiga or Windows which could
generate such wav files I didn't touch that code. If you have
such files, please let me know (and also if you have wav with
still unsupported sound data encoding). Thanks.
wav.datatype 53.4 (18.11.2009)
- Fixed support for MPEG encoded sound data and made it behave exactly
like the mpega.library docs tell. Now it plays wave-encapsulated MP3
data nicely. Thanks to Thore Böckelmann for providing some testfiles
(Rest assured, I won't doom you for your music taste :-) ).
wav.datatype 53.5 (5.6.2010)
- Removed double buffering scheme which used DOS packets.
- Built with SDK 53.20 toolset.
------------------------ AmigaOS 3.2 project -------------------------
wav.datatype 47.1 (17.5.2020)
- Ported to OS3.2.
wav.datatype 47.2 (3.4.2021)
- Fixed a memory leak.
Cross-references¶
datatypes.libraryReference — DataType API,NewDTObjectA(),DisposeDTObject(),DTA_*tagssound.datatypeReference — superclass; full method implementations live hereiffparse.libraryReference — IFF file format primitives (FORM/LIST/PROP/CAT chunks)
Source: AmigaOS NDK 3.2 Release 4, Autodocs/wav_dtc.doc, Include_H/datatypes/datatypes.h, ReleaseNotes/wav-dt-RelNotes.