android13/external/oboe/samples/parselib/README.md

53 lines
1.6 KiB
Markdown

**parselib**
==========
Classes for parsing and loading audio data.
## Abstract
(Oboe) **parselib** contains facilities for reading and loading audio data from streams. Streams can be wrapped around either files or memory blocks.
**parselib** is written in C++ and is intended to be called from Android native code. It is implemented as a static library.
## Supported Encodings
* Microsoft WAV format
## **parselib** project structure
* stream
Contains classes related to reading audio data from a stream abstraction
* wav
Contains classes to read/load audio data in WAV format
## **stream** Classes
### InputStream
An abstract class that defines the `InputStream` interface.
### FileInputStream
A concrete implementation of `InputStream` that reads data from a file.
### MemInputStream
A concrete implementation of `InputStream` that reads data from a memory block.
## **wav** Classes
Contains classes to read/load audio data in WAV format. WAV format files are "Microsoft Resource Interchange File Format" (RIFF) files. WAV files contain a variety of RIFF "chunks", but only a few are required (see 'Chunk' classes below)
### Utility
#### AudioEncoding
Defines constants for various audio encodings
### WavTypes
Support for **RIFF** file types and managing FOURCC data.
### WAV Data I/O
#### WavStreamReader
Parses and loads WAV data from an InputStream.
### WAV Data
#### WavChunkHeader
Defines common fields and operations for all WAV format RIFF Chunks.
#### WavFmtChunkHeader
Defines fields and operations for RIFF '`fmt `' chunks
#### WavRIFFChunkHeader
Defines fields and operations for RIFF '`data`' chunks