Classes | Macros | Typedefs | Enumerations | Functions
porcupine/demo/c/dr_libs/dr_mp3.h File Reference
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <wchar.h>
#include <errno.h>
Include dependency graph for porcupine/demo/c/dr_libs/dr_mp3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  drmp3
 
struct  drmp3_allocation_callbacks
 
struct  drmp3_config
 
struct  drmp3_seek_point
 
struct  drmp3dec
 
struct  drmp3dec_frame_info
 

Macros

#define DRMP3_ACCESS_DENIED   -6
 
#define DRMP3_ADDRESS_FAMILY_NOT_SUPPORTED   -43
 
#define DRMP3_ALREADY_CONNECTED   -46
 
#define DRMP3_ALREADY_EXISTS   -8
 
#define DRMP3_ALREADY_IN_USE   -23
 
#define DRMP3_API   extern
 
#define DRMP3_AT_END   -53
 
#define DRMP3_BAD_ADDRESS   -24
 
#define DRMP3_BAD_MESSAGE   -31
 
#define DRMP3_BAD_PIPE   -26
 
#define DRMP3_BAD_PROTOCOL   -39
 
#define DRMP3_BAD_SEEK   -25
 
#define DRMP3_BUSY   -19
 
#define DRMP3_CANCELLED   -51
 
#define DRMP3_CONNECTION_REFUSED   -48
 
#define DRMP3_CONNECTION_RESET   -45
 
#define DRMP3_DEADLOCK   -27
 
#define DRMP3_DIRECTORY_NOT_EMPTY   -16
 
#define DRMP3_DOES_NOT_EXIST   -7
 
#define DRMP3_END_OF_FILE   -17
 
#define DRMP3_ERROR   -1 /* A generic error. */
 
#define DRMP3_FALSE   0
 
#define DRMP3_IN_PROGRESS   -50
 
#define DRMP3_INLINE
 
#define DRMP3_INTERRUPT   -21
 
#define DRMP3_INVALID_ARGS   -2
 
#define DRMP3_INVALID_DATA   -33
 
#define DRMP3_INVALID_FILE   -10
 
#define DRMP3_INVALID_OPERATION   -3
 
#define DRMP3_IO_ERROR   -20
 
#define DRMP3_IS_DIRECTORY   -15
 
#define DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME   1152
 
#define DRMP3_MAX_SAMPLES_PER_FRAME   (DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME*2)
 
#define DRMP3_MEMORY_ALREADY_MAPPED   -52
 
#define DRMP3_NAME_TOO_LONG   -13
 
#define DRMP3_NO_ADDRESS   -38
 
#define DRMP3_NO_DATA_AVAILABLE   -32
 
#define DRMP3_NO_HOST   -49
 
#define DRMP3_NO_MESSAGE   -30
 
#define DRMP3_NO_NETWORK   -35
 
#define DRMP3_NO_SPACE   -18
 
#define DRMP3_NOT_CONNECTED   -47
 
#define DRMP3_NOT_DIRECTORY   -14
 
#define DRMP3_NOT_IMPLEMENTED   -29
 
#define DRMP3_NOT_SOCKET   -37
 
#define DRMP3_NOT_UNIQUE   -36
 
#define DRMP3_OUT_OF_MEMORY   -4
 
#define DRMP3_OUT_OF_RANGE   -5
 
#define DRMP3_PATH_TOO_LONG   -12
 
#define DRMP3_PRIVATE   static
 
#define DRMP3_PROTOCOL_FAMILY_NOT_SUPPORTED   -42
 
#define DRMP3_PROTOCOL_NOT_SUPPORTED   -41
 
#define DRMP3_PROTOCOL_UNAVAILABLE   -40
 
#define DRMP3_SOCKET_NOT_SUPPORTED   -44
 
#define DRMP3_STRINGIFY(x)   #x
 
#define DRMP3_SUCCESS   0
 
#define DRMP3_TIMEOUT   -34
 
#define DRMP3_TOO_BIG   -11
 
#define DRMP3_TOO_MANY_LINKS   -28
 
#define DRMP3_TOO_MANY_OPEN_FILES   -9
 
#define DRMP3_TRUE   1
 
#define DRMP3_UNAVAILABLE   -22
 
#define DRMP3_VERSION_MAJOR   0
 
#define DRMP3_VERSION_MINOR   6
 
#define DRMP3_VERSION_REVISION   31
 
#define DRMP3_VERSION_STRING   DRMP3_XSTRINGIFY(DRMP3_VERSION_MAJOR) "." DRMP3_XSTRINGIFY(DRMP3_VERSION_MINOR) "." DRMP3_XSTRINGIFY(DRMP3_VERSION_REVISION)
 
#define DRMP3_XSTRINGIFY(x)   DRMP3_STRINGIFY(x)
 

Typedefs

typedef drmp3_uint32 drmp3_bool32
 
typedef drmp3_uint8 drmp3_bool8
 
typedef signed short drmp3_int16
 
typedef signed int drmp3_int32
 
typedef signed long long drmp3_int64
 
typedef signed char drmp3_int8
 
typedef size_t(* drmp3_read_proc) (void *pUserData, void *pBufferOut, size_t bytesToRead)
 
typedef drmp3_int32 drmp3_result
 
typedef drmp3_bool32(* drmp3_seek_proc) (void *pUserData, int offset, drmp3_seek_origin origin)
 
typedef unsigned short drmp3_uint16
 
typedef unsigned int drmp3_uint32
 
typedef unsigned long long drmp3_uint64
 
typedef unsigned char drmp3_uint8
 
typedef drmp3_uint32 drmp3_uintptr
 

Enumerations

enum  drmp3_seek_origin {
  drmp3_seek_origin_start, drmp3_seek_origin_current, drmp3_seek_origin_start, drmp3_seek_origin_current,
  drmp3_seek_origin_start, drmp3_seek_origin_current, drmp3_seek_origin_start, drmp3_seek_origin_current,
  drmp3_seek_origin_start, drmp3_seek_origin_current, drmp3_seek_origin_start, drmp3_seek_origin_current,
  drmp3_seek_origin_start, drmp3_seek_origin_current, drmp3_seek_origin_start, drmp3_seek_origin_current,
  drmp3_seek_origin_start, drmp3_seek_origin_current, drmp3_seek_origin_start, drmp3_seek_origin_current
}
 

Functions

DRMP3_API drmp3_bool32 drmp3_bind_seek_table (drmp3 *pMP3, drmp3_uint32 seekPointCount, drmp3_seek_point *pSeekPoints)
 
DRMP3_API drmp3_bool32 drmp3_calculate_seek_points (drmp3 *pMP3, drmp3_uint32 *pSeekPointCount, drmp3_seek_point *pSeekPoints)
 
DRMP3_API void drmp3_free (void *p, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_bool32 drmp3_get_mp3_and_pcm_frame_count (drmp3 *pMP3, drmp3_uint64 *pMP3FrameCount, drmp3_uint64 *pPCMFrameCount)
 
DRMP3_API drmp3_uint64 drmp3_get_mp3_frame_count (drmp3 *pMP3)
 
DRMP3_API drmp3_uint64 drmp3_get_pcm_frame_count (drmp3 *pMP3)
 
DRMP3_API drmp3_bool32 drmp3_init (drmp3 *pMP3, drmp3_read_proc onRead, drmp3_seek_proc onSeek, void *pUserData, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_bool32 drmp3_init_file (drmp3 *pMP3, const char *pFilePath, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_bool32 drmp3_init_file_w (drmp3 *pMP3, const wchar_t *pFilePath, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_bool32 drmp3_init_memory (drmp3 *pMP3, const void *pData, size_t dataSize, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API void * drmp3_malloc (size_t sz, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API float * drmp3_open_and_read_pcm_frames_f32 (drmp3_read_proc onRead, drmp3_seek_proc onSeek, void *pUserData, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_int16drmp3_open_and_read_pcm_frames_s16 (drmp3_read_proc onRead, drmp3_seek_proc onSeek, void *pUserData, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API float * drmp3_open_file_and_read_pcm_frames_f32 (const char *filePath, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_int16drmp3_open_file_and_read_pcm_frames_s16 (const char *filePath, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API float * drmp3_open_memory_and_read_pcm_frames_f32 (const void *pData, size_t dataSize, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_int16drmp3_open_memory_and_read_pcm_frames_s16 (const void *pData, size_t dataSize, drmp3_config *pConfig, drmp3_uint64 *pTotalFrameCount, const drmp3_allocation_callbacks *pAllocationCallbacks)
 
DRMP3_API drmp3_uint64 drmp3_read_pcm_frames_f32 (drmp3 *pMP3, drmp3_uint64 framesToRead, float *pBufferOut)
 
DRMP3_API drmp3_uint64 drmp3_read_pcm_frames_s16 (drmp3 *pMP3, drmp3_uint64 framesToRead, drmp3_int16 *pBufferOut)
 
DRMP3_API drmp3_bool32 drmp3_seek_to_pcm_frame (drmp3 *pMP3, drmp3_uint64 frameIndex)
 
DRMP3_API void drmp3_uninit (drmp3 *pMP3)
 
DRMP3_API void drmp3_version (drmp3_uint32 *pMajor, drmp3_uint32 *pMinor, drmp3_uint32 *pRevision)
 
const DRMP3_API char * drmp3_version_string (void)
 
DRMP3_API int drmp3dec_decode_frame (drmp3dec *dec, const drmp3_uint8 *mp3, int mp3_bytes, void *pcm, drmp3dec_frame_info *info)
 
DRMP3_API void drmp3dec_f32_to_s16 (const float *in, drmp3_int16 *out, size_t num_samples)
 
DRMP3_API void drmp3dec_init (drmp3dec *dec)
 

Macro Definition Documentation

◆ DRMP3_ACCESS_DENIED

#define DRMP3_ACCESS_DENIED   -6

Definition at line 174 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_ADDRESS_FAMILY_NOT_SUPPORTED

#define DRMP3_ADDRESS_FAMILY_NOT_SUPPORTED   -43

Definition at line 211 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_ALREADY_CONNECTED

#define DRMP3_ALREADY_CONNECTED   -46

Definition at line 214 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_ALREADY_EXISTS

#define DRMP3_ALREADY_EXISTS   -8

Definition at line 176 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_ALREADY_IN_USE

#define DRMP3_ALREADY_IN_USE   -23

Definition at line 191 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_API

#define DRMP3_API   extern

Definition at line 162 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_AT_END

#define DRMP3_AT_END   -53

Definition at line 221 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BAD_ADDRESS

#define DRMP3_BAD_ADDRESS   -24

Definition at line 192 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BAD_MESSAGE

#define DRMP3_BAD_MESSAGE   -31

Definition at line 199 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BAD_PIPE

#define DRMP3_BAD_PIPE   -26

Definition at line 194 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BAD_PROTOCOL

#define DRMP3_BAD_PROTOCOL   -39

Definition at line 207 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BAD_SEEK

#define DRMP3_BAD_SEEK   -25

Definition at line 193 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_BUSY

#define DRMP3_BUSY   -19

Definition at line 187 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_CANCELLED

#define DRMP3_CANCELLED   -51

Definition at line 219 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_CONNECTION_REFUSED

#define DRMP3_CONNECTION_REFUSED   -48

Definition at line 216 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_CONNECTION_RESET

#define DRMP3_CONNECTION_RESET   -45

Definition at line 213 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_DEADLOCK

#define DRMP3_DEADLOCK   -27

Definition at line 195 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_DIRECTORY_NOT_EMPTY

#define DRMP3_DIRECTORY_NOT_EMPTY   -16

Definition at line 184 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_DOES_NOT_EXIST

#define DRMP3_DOES_NOT_EXIST   -7

Definition at line 175 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_END_OF_FILE

#define DRMP3_END_OF_FILE   -17

Definition at line 185 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_ERROR

#define DRMP3_ERROR   -1 /* A generic error. */

Definition at line 169 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_FALSE

#define DRMP3_FALSE   0

Definition at line 135 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_IN_PROGRESS

#define DRMP3_IN_PROGRESS   -50

Definition at line 218 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INLINE

#define DRMP3_INLINE

Definition at line 245 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INTERRUPT

#define DRMP3_INTERRUPT   -21

Definition at line 189 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INVALID_ARGS

#define DRMP3_INVALID_ARGS   -2

Definition at line 170 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INVALID_DATA

#define DRMP3_INVALID_DATA   -33

Definition at line 201 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INVALID_FILE

#define DRMP3_INVALID_FILE   -10

Definition at line 178 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_INVALID_OPERATION

#define DRMP3_INVALID_OPERATION   -3

Definition at line 171 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_IO_ERROR

#define DRMP3_IO_ERROR   -20

Definition at line 188 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_IS_DIRECTORY

#define DRMP3_IS_DIRECTORY   -15

Definition at line 183 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME

#define DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME   1152

Definition at line 224 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_MAX_SAMPLES_PER_FRAME

#define DRMP3_MAX_SAMPLES_PER_FRAME   (DRMP3_MAX_PCM_FRAMES_PER_MP3_FRAME*2)

Definition at line 225 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_MEMORY_ALREADY_MAPPED

#define DRMP3_MEMORY_ALREADY_MAPPED   -52

Definition at line 220 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NAME_TOO_LONG

#define DRMP3_NAME_TOO_LONG   -13

Definition at line 181 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_ADDRESS

#define DRMP3_NO_ADDRESS   -38

Definition at line 206 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_DATA_AVAILABLE

#define DRMP3_NO_DATA_AVAILABLE   -32

Definition at line 200 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_HOST

#define DRMP3_NO_HOST   -49

Definition at line 217 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_MESSAGE

#define DRMP3_NO_MESSAGE   -30

Definition at line 198 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_NETWORK

#define DRMP3_NO_NETWORK   -35

Definition at line 203 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NO_SPACE

#define DRMP3_NO_SPACE   -18

Definition at line 186 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NOT_CONNECTED

#define DRMP3_NOT_CONNECTED   -47

Definition at line 215 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NOT_DIRECTORY

#define DRMP3_NOT_DIRECTORY   -14

Definition at line 182 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NOT_IMPLEMENTED

#define DRMP3_NOT_IMPLEMENTED   -29

Definition at line 197 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NOT_SOCKET

#define DRMP3_NOT_SOCKET   -37

Definition at line 205 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_NOT_UNIQUE

#define DRMP3_NOT_UNIQUE   -36

Definition at line 204 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_OUT_OF_MEMORY

#define DRMP3_OUT_OF_MEMORY   -4

Definition at line 172 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_OUT_OF_RANGE

#define DRMP3_OUT_OF_RANGE   -5

Definition at line 173 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_PATH_TOO_LONG

#define DRMP3_PATH_TOO_LONG   -12

Definition at line 180 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_PRIVATE

#define DRMP3_PRIVATE   static

Definition at line 163 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_PROTOCOL_FAMILY_NOT_SUPPORTED

#define DRMP3_PROTOCOL_FAMILY_NOT_SUPPORTED   -42

Definition at line 210 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_PROTOCOL_NOT_SUPPORTED

#define DRMP3_PROTOCOL_NOT_SUPPORTED   -41

Definition at line 209 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_PROTOCOL_UNAVAILABLE

#define DRMP3_PROTOCOL_UNAVAILABLE   -40

Definition at line 208 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_SOCKET_NOT_SUPPORTED

#define DRMP3_SOCKET_NOT_SUPPORTED   -44

Definition at line 212 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_STRINGIFY

#define DRMP3_STRINGIFY (   x)    #x

Definition at line 93 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_SUCCESS

#define DRMP3_SUCCESS   0

Definition at line 168 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_TIMEOUT

#define DRMP3_TIMEOUT   -34

Definition at line 202 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_TOO_BIG

#define DRMP3_TOO_BIG   -11

Definition at line 179 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_TOO_MANY_LINKS

#define DRMP3_TOO_MANY_LINKS   -28

Definition at line 196 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_TOO_MANY_OPEN_FILES

#define DRMP3_TOO_MANY_OPEN_FILES   -9

Definition at line 177 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_TRUE

#define DRMP3_TRUE   1

Definition at line 134 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_UNAVAILABLE

#define DRMP3_UNAVAILABLE   -22

Definition at line 190 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_VERSION_MAJOR

#define DRMP3_VERSION_MAJOR   0

Definition at line 96 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_VERSION_MINOR

#define DRMP3_VERSION_MINOR   6

Definition at line 97 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_VERSION_REVISION

#define DRMP3_VERSION_REVISION   31

Definition at line 98 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_VERSION_STRING

Definition at line 99 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ DRMP3_XSTRINGIFY

#define DRMP3_XSTRINGIFY (   x)    DRMP3_STRINGIFY(x)

Definition at line 94 of file porcupine/demo/c/dr_libs/dr_mp3.h.

Typedef Documentation

◆ drmp3_bool32

Definition at line 133 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_bool8

Definition at line 132 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_int16

typedef signed short drmp3_int16

Definition at line 106 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_int32

typedef signed int drmp3_int32

Definition at line 108 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_int64

typedef signed long long drmp3_int64

Definition at line 121 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_int8

typedef signed char drmp3_int8

Definition at line 104 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_read_proc

typedef size_t(* drmp3_read_proc) (void *pUserData, void *pBufferOut, size_t bytesToRead)

Definition at line 310 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_result

Definition at line 167 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_seek_proc

typedef drmp3_bool32(* drmp3_seek_proc) (void *pUserData, int offset, drmp3_seek_origin origin)

Definition at line 324 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_uint16

typedef unsigned short drmp3_uint16

Definition at line 107 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_uint32

typedef unsigned int drmp3_uint32

Definition at line 109 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_uint64

typedef unsigned long long drmp3_uint64

Definition at line 122 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_uint8

typedef unsigned char drmp3_uint8

Definition at line 105 of file porcupine/demo/c/dr_libs/dr_mp3.h.

◆ drmp3_uintptr

Definition at line 130 of file porcupine/demo/c/dr_libs/dr_mp3.h.

Enumeration Type Documentation

◆ drmp3_seek_origin

Enumerator
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 
drmp3_seek_origin_start 
drmp3_seek_origin_current 

Definition at line 284 of file porcupine/demo/c/dr_libs/dr_mp3.h.

Function Documentation

◆ drmp3_bind_seek_table()

DRMP3_API drmp3_bool32 drmp3_bind_seek_table ( drmp3 pMP3,
drmp3_uint32  seekPointCount,
drmp3_seek_point pSeekPoints 
)

◆ drmp3_calculate_seek_points()

DRMP3_API drmp3_bool32 drmp3_calculate_seek_points ( drmp3 pMP3,
drmp3_uint32 pSeekPointCount,
drmp3_seek_point pSeekPoints 
)

◆ drmp3_free()

DRMP3_API void drmp3_free ( void *  p,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_get_mp3_and_pcm_frame_count()

DRMP3_API drmp3_bool32 drmp3_get_mp3_and_pcm_frame_count ( drmp3 pMP3,
drmp3_uint64 pMP3FrameCount,
drmp3_uint64 pPCMFrameCount 
)

◆ drmp3_get_mp3_frame_count()

DRMP3_API drmp3_uint64 drmp3_get_mp3_frame_count ( drmp3 pMP3)

◆ drmp3_get_pcm_frame_count()

DRMP3_API drmp3_uint64 drmp3_get_pcm_frame_count ( drmp3 pMP3)

◆ drmp3_init()

DRMP3_API drmp3_bool32 drmp3_init ( drmp3 pMP3,
drmp3_read_proc  onRead,
drmp3_seek_proc  onSeek,
void *  pUserData,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_init_file()

DRMP3_API drmp3_bool32 drmp3_init_file ( drmp3 pMP3,
const char *  pFilePath,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_init_file_w()

DRMP3_API drmp3_bool32 drmp3_init_file_w ( drmp3 pMP3,
const wchar_t *  pFilePath,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_init_memory()

DRMP3_API drmp3_bool32 drmp3_init_memory ( drmp3 pMP3,
const void *  pData,
size_t  dataSize,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_malloc()

DRMP3_API void * drmp3_malloc ( size_t  sz,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_and_read_pcm_frames_f32()

DRMP3_API float * drmp3_open_and_read_pcm_frames_f32 ( drmp3_read_proc  onRead,
drmp3_seek_proc  onSeek,
void *  pUserData,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_and_read_pcm_frames_s16()

DRMP3_API drmp3_int16 * drmp3_open_and_read_pcm_frames_s16 ( drmp3_read_proc  onRead,
drmp3_seek_proc  onSeek,
void *  pUserData,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_file_and_read_pcm_frames_f32()

DRMP3_API float * drmp3_open_file_and_read_pcm_frames_f32 ( const char *  filePath,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_file_and_read_pcm_frames_s16()

DRMP3_API drmp3_int16 * drmp3_open_file_and_read_pcm_frames_s16 ( const char *  filePath,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_memory_and_read_pcm_frames_f32()

DRMP3_API float * drmp3_open_memory_and_read_pcm_frames_f32 ( const void *  pData,
size_t  dataSize,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_open_memory_and_read_pcm_frames_s16()

DRMP3_API drmp3_int16 * drmp3_open_memory_and_read_pcm_frames_s16 ( const void *  pData,
size_t  dataSize,
drmp3_config pConfig,
drmp3_uint64 pTotalFrameCount,
const drmp3_allocation_callbacks pAllocationCallbacks 
)

◆ drmp3_read_pcm_frames_f32()

DRMP3_API drmp3_uint64 drmp3_read_pcm_frames_f32 ( drmp3 pMP3,
drmp3_uint64  framesToRead,
float *  pBufferOut 
)

◆ drmp3_read_pcm_frames_s16()

DRMP3_API drmp3_uint64 drmp3_read_pcm_frames_s16 ( drmp3 pMP3,
drmp3_uint64  framesToRead,
drmp3_int16 pBufferOut 
)

◆ drmp3_seek_to_pcm_frame()

DRMP3_API drmp3_bool32 drmp3_seek_to_pcm_frame ( drmp3 pMP3,
drmp3_uint64  frameIndex 
)

◆ drmp3_uninit()

DRMP3_API void drmp3_uninit ( drmp3 pMP3)

◆ drmp3_version()

DRMP3_API void drmp3_version ( drmp3_uint32 pMajor,
drmp3_uint32 pMinor,
drmp3_uint32 pRevision 
)

◆ drmp3_version_string()

const DRMP3_API char * drmp3_version_string ( void  )

◆ drmp3dec_decode_frame()

DRMP3_API int drmp3dec_decode_frame ( drmp3dec dec,
const drmp3_uint8 mp3,
int  mp3_bytes,
void *  pcm,
drmp3dec_frame_info info 
)

◆ drmp3dec_f32_to_s16()

DRMP3_API void drmp3dec_f32_to_s16 ( const float *  in,
drmp3_int16 out,
size_t  num_samples 
)

◆ drmp3dec_init()

DRMP3_API void drmp3dec_init ( drmp3dec dec)


picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:14:57