Generic audio class to hold master data types and various useful class encapsulated friend functions as per GNU Common C++ 2 coding standard.
More...
|
enum | Rate {
rateUnknown,
rate6khz = 6000,
rate8khz = 8000,
rate16khz = 16000,
rate32khz = 32000,
rate44khz = 44100
} |
| Audio encoding rate, samples per second. More...
|
|
enum | Mode {
modeRead,
modeReadAny,
modeReadOne,
modeWrite,
modeCache,
modeInfo,
modeFeed,
modeAppend,
modeCreate
} |
| File processing mode, whether to skip missing files, etc. More...
|
|
enum | Encoding {
unknownEncoding = 0,
g721ADPCM,
g722Audio,
g722_7bit,
g722_6bit,
g723_2bit,
g723_3bit,
g723_5bit,
gsmVoice,
msgsmVoice,
mulawAudio,
alawAudio,
mp1Audio,
mp2Audio,
mp3Audio,
okiADPCM,
voxADPCM,
sx73Voice,
sx96Voice,
cdaStereo,
cdaMono,
pcm8Stereo,
pcm8Mono,
pcm16Stereo,
pcm16Mono,
pcm32Stereo,
pcm32Mono,
speexVoice,
speexAudio,
g729Audio,
ilbcAudio,
speexUltra,
speexNarrow = speexVoice,
speexWide = speexAudio,
g723_4bit = g721ADPCM
} |
| Audio encoding formats. More...
|
|
enum | Format {
raw,
snd,
riff,
mpeg,
wave
} |
| Audio container file format. More...
|
|
enum | DeviceMode { PLAY,
RECORD,
PLAYREC
} |
| Audio device access mode. More...
|
|
enum | Error {
errSuccess = 0,
errReadLast,
errNotOpened,
errEndOfFile,
errStartOfFile,
errRateInvalid,
errEncodingInvalid,
errReadInterrupt,
errWriteInterrupt,
errReadFailure,
errWriteFailure,
errReadIncomplete,
errWriteIncomplete,
errRequestInvalid,
errTOCFailed,
errStatFailed,
errInvalidTrack,
errPlaybackFailed,
errNotPlaying,
errNoCodec
} |
| Audio error conditions. More...
|
|
typedef int16_t | snd16_t |
|
typedef int32_t | snd32_t |
|
typedef int16_t | Level |
|
typedef int16_t | Sample |
|
typedef int16_t * | Linear |
|
typedef unsigned long | timeout_t |
|
typedef unsigned char * | Encoded |
|
typedef enum Rate | Rate |
|
typedef enum Mode | Mode |
|
typedef enum Encoding | Encoding |
|
typedef enum Format | Format |
|
typedef enum DeviceMode | DeviceMode |
|
typedef enum Error | Error |
|
|
static Level | tolevel (float dbm) |
| Convert dbm power level to integer value (0-32768). More...
|
|
static float | todbm (Level power) |
| Convert integer power levels to dbm. More...
|
|
static bool | hasDevice (unsigned device=0) |
| Test for the presense of a specified (indexed) audio device. More...
|
|
static AudioDevice * | getDevice (unsigned device=0, DeviceMode mode=PLAY) |
| Get a audio device object that can be used to play or record audio. More...
|
|
static const char * | getCodecPath (void) |
| Get pathname to where loadable codec modules are stored. More...
|
|
static const char * | getMIME (Info &info) |
| Get the mime descriptive type for a given Audio encoding description, usually retrieved from a newly opened audio file. More...
|
|
static const char * | getName (Encoding encoding) |
| Get the short ascii description used for the given audio encoding type. More...
|
|
static const char * | getExtension (Encoding encoding) |
| Get the preferred file extension name to use for a given audio encoding type. More...
|
|
static Encoding | getEncoding (const char *name) |
| Get the audio encoding format that is specified by a short ascii name. More...
|
|
static Encoding | getStereo (Encoding encoding) |
| Get the stereo encoding format associated with the given format. More...
|
|
static Encoding | getMono (Encoding encoding) |
| Get the mono encoding format associated with the given format. More...
|
|
static bool | isLinear (Encoding encoding) |
| Test if the audio encoding format is a linear one. More...
|
|
static bool | isBuffered (Encoding encoding) |
| Test if the audio encoding format must be packetized (that is, has irregular sized frames) and must be processed only through buffered codecs. More...
|
|
static bool | isMono (Encoding encoding) |
| Test if the audio encoding format is a mono format. More...
|
|
static bool | isStereo (Encoding encoding) |
| Test if the audio encoding format is a stereo format. More...
|
|
static Rate | getRate (Encoding encoding) |
| Return default sample rate associated with the specified audio encoding format. More...
|
|
static Rate | getRate (Encoding e, Rate request) |
| Return optional rate setting effect. More...
|
|
static timeout_t | getFraming (Encoding encoding, timeout_t timeout=0) |
| Return frame timing for an audio encoding format. More...
|
|
static timeout_t | getFraming (Info &info, timeout_t timeout=0) |
| Return frame time for an audio source description. More...
|
|
static bool | isEndian (Encoding encoding) |
| Test if the endian byte order of the encoding format is different from the machine's native byte order. More...
|
|
static bool | isEndian (Info &info) |
| Test if the endian byte order of the audio source description is different from the machine's native byte order. More...
|
|
static bool | swapEndian (Encoding encoding, void *buffer, unsigned number) |
| Optionally swap endian of audio data if the encoding format endian byte order is different from the machine's native endian. More...
|
|
static void | swapEncoded (Info &info, Encoded data, size_t bytes) |
| Optionally swap endian of encoded audio data based on the audio encoding type, and relationship to native byte order. More...
|
|
static bool | swapEndian (Info &info, void *buffer, unsigned number) |
| Optionally swap endian of audio data if the audio source description byte order is different from the machine's native endian byte order. More...
|
|
static Level | getImpulse (Encoding encoding, void *buffer, unsigned number) |
| Get the energey impulse level of a frame of audio data. More...
|
|
static Level | getImpulse (Info &info, void *buffer, unsigned number=0) |
| Get the energey impulse level of a frame of audio data. More...
|
|
static Level | getPeak (Encoding encoding, void *buffer, unsigned number) |
| Get the peak (highest energy) level found in a frame of audio data. More...
|
|
static Level | getPeak (Info &info, void *buffer, unsigned number=0) |
| Get the peak (highest energy) level found in a frame of audio data. More...
|
|
static void | toTimestamp (timeout_t duration, char *address, size_t size) |
| Provide ascii timestamp representation of a timeout value. More...
|
|
static timeout_t | toTimeout (const char *timestamp) |
| Convert ascii timestamp representation to a timeout number. More...
|
|
static int | getFrame (Encoding encoding, int samples=0) |
| Returns the number of bytes in a sample frame for the given encoding type, rounded up to the nearest integer. More...
|
|
static int | getCount (Encoding encoding) |
| Returns the number of samples in all channels for a frame in the given encoding. More...
|
|
static unsigned long | toSamples (Encoding encoding, size_t bytes) |
| Compute byte counts of audio data into number of samples based on the audio encoding format used. More...
|
|
static unsigned long | toSamples (Info &info, size_t bytes) |
| Compute byte counts of audio data into number of samples based on the audio source description used. More...
|
|
static size_t | toBytes (Info &info, unsigned long number) |
| Compute the number of bytes a given number of samples in a given audio encoding will occupy. More...
|
|
static size_t | toBytes (Encoding encoding, unsigned long number) |
| Compute the number of bytes a given number of samples in a given audio encoding will occupy. More...
|
|
static void | fill (unsigned char *address, int number, Encoding encoding) |
| Fill an audio buffer with "empty" (silent) audio data, based on the audio encoding format. More...
|
|
static bool | loadPlugin (const char *path) |
| Load a dso plugin (codec plugin), used internally... More...
|
|
static size_t | maxFramesize (Info &info) |
| Maximum framesize for a given coding that may be needed to store a result. More...
|
|
Generic audio class to hold master data types and various useful class encapsulated friend functions as per GNU Common C++ 2 coding standard.
- Author
- David Sugar dyfet.nosp@m.@ost.nosp@m.el.co.nosp@m.m Master audio class.
Definition at line 88 of file audio2.h.