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

Go to the source code of this file.

Classes

struct  drwav
 
struct  drwav__memory_stream
 
struct  drwav__memory_stream_write
 
struct  drwav_acid
 
struct  drwav_allocation_callbacks
 
struct  drwav_bext
 
struct  drwav_chunk_header
 
struct  drwav_cue
 
struct  drwav_cue_point
 
struct  drwav_data_format
 
struct  drwav_fmt
 
struct  drwav_inst
 
struct  drwav_list_info_text
 
struct  drwav_list_label_or_note
 
struct  drwav_list_labelled_cue_region
 
struct  drwav_metadata
 
struct  drwav_smpl
 
struct  drwav_smpl_loop
 
struct  drwav_unknown_metadata
 

Macros

#define DR_WAVE_FORMAT_ADPCM   0x2
 
#define DR_WAVE_FORMAT_ALAW   0x6
 
#define DR_WAVE_FORMAT_DVI_ADPCM   0x11
 
#define DR_WAVE_FORMAT_EXTENSIBLE   0xFFFE
 
#define DR_WAVE_FORMAT_IEEE_FLOAT   0x3
 
#define DR_WAVE_FORMAT_MULAW   0x7
 
#define DR_WAVE_FORMAT_PCM   0x1
 
#define DRWAV_ACCESS_DENIED   -6
 
#define DRWAV_ADDRESS_FAMILY_NOT_SUPPORTED   -43
 
#define DRWAV_ALREADY_CONNECTED   -46
 
#define DRWAV_ALREADY_EXISTS   -8
 
#define DRWAV_ALREADY_IN_USE   -23
 
#define DRWAV_API   extern
 
#define DRWAV_AT_END   -53
 
#define DRWAV_BAD_ADDRESS   -24
 
#define DRWAV_BAD_MESSAGE   -31
 
#define DRWAV_BAD_PIPE   -26
 
#define DRWAV_BAD_PROTOCOL   -39
 
#define DRWAV_BAD_SEEK   -25
 
#define DRWAV_BUSY   -19
 
#define DRWAV_CANCELLED   -51
 
#define DRWAV_CONNECTION_REFUSED   -48
 
#define DRWAV_CONNECTION_RESET   -45
 
#define DRWAV_DEADLOCK   -27
 
#define DRWAV_DIRECTORY_NOT_EMPTY   -16
 
#define DRWAV_DOES_NOT_EXIST   -7
 
#define DRWAV_END_OF_FILE   -17
 
#define DRWAV_ERROR   -1 /* A generic error. */
 
#define DRWAV_FALSE   0
 
#define DRWAV_IN_PROGRESS   -50
 
#define DRWAV_INTERRUPT   -21
 
#define DRWAV_INVALID_ARGS   -2
 
#define DRWAV_INVALID_DATA   -33
 
#define DRWAV_INVALID_FILE   -10
 
#define DRWAV_INVALID_OPERATION   -3
 
#define DRWAV_IO_ERROR   -20
 
#define DRWAV_IS_DIRECTORY   -15
 
#define DRWAV_MEMORY_ALREADY_MAPPED   -52
 
#define DRWAV_NAME_TOO_LONG   -13
 
#define DRWAV_NO_ADDRESS   -38
 
#define DRWAV_NO_DATA_AVAILABLE   -32
 
#define DRWAV_NO_HOST   -49
 
#define DRWAV_NO_MESSAGE   -30
 
#define DRWAV_NO_NETWORK   -35
 
#define DRWAV_NO_SPACE   -18
 
#define DRWAV_NOT_CONNECTED   -47
 
#define DRWAV_NOT_DIRECTORY   -14
 
#define DRWAV_NOT_IMPLEMENTED   -29
 
#define DRWAV_NOT_SOCKET   -37
 
#define DRWAV_NOT_UNIQUE   -36
 
#define DRWAV_OUT_OF_MEMORY   -4
 
#define DRWAV_OUT_OF_RANGE   -5
 
#define DRWAV_PATH_TOO_LONG   -12
 
#define DRWAV_PRIVATE   static
 
#define DRWAV_PROTOCOL_FAMILY_NOT_SUPPORTED   -42
 
#define DRWAV_PROTOCOL_NOT_SUPPORTED   -41
 
#define DRWAV_PROTOCOL_UNAVAILABLE   -40
 
#define DRWAV_SEQUENTIAL   0x00000001
 
#define DRWAV_SOCKET_NOT_SUPPORTED   -44
 
#define DRWAV_STRINGIFY(x)   #x
 
#define DRWAV_SUCCESS   0
 
#define DRWAV_TIMEOUT   -34
 
#define DRWAV_TOO_BIG   -11
 
#define DRWAV_TOO_MANY_LINKS   -28
 
#define DRWAV_TOO_MANY_OPEN_FILES   -9
 
#define DRWAV_TRUE   1
 
#define DRWAV_UNAVAILABLE   -22
 
#define DRWAV_VERSION_MAJOR   0
 
#define DRWAV_VERSION_MINOR   13
 
#define DRWAV_VERSION_REVISION   2
 
#define DRWAV_VERSION_STRING   DRWAV_XSTRINGIFY(DRWAV_VERSION_MAJOR) "." DRWAV_XSTRINGIFY(DRWAV_VERSION_MINOR) "." DRWAV_XSTRINGIFY(DRWAV_VERSION_REVISION)
 
#define DRWAV_XSTRINGIFY(x)   DRWAV_STRINGIFY(x)
 

Typedefs

typedef drwav_uint32 drwav_bool32
 
typedef drwav_uint8 drwav_bool8
 
typedef drwav_uint64(* drwav_chunk_proc) (void *pChunkUserData, drwav_read_proc onRead, drwav_seek_proc onSeek, void *pReadSeekUserData, const drwav_chunk_header *pChunkHeader, drwav_container container, const drwav_fmt *pFMT)
 
typedef signed short drwav_int16
 
typedef signed int drwav_int32
 
typedef signed long long drwav_int64
 
typedef signed char drwav_int8
 
typedef size_t(* drwav_read_proc) (void *pUserData, void *pBufferOut, size_t bytesToRead)
 
typedef drwav_int32 drwav_result
 
typedef drwav_bool32(* drwav_seek_proc) (void *pUserData, int offset, drwav_seek_origin origin)
 
typedef unsigned short drwav_uint16
 
typedef unsigned int drwav_uint32
 
typedef unsigned long long drwav_uint64
 
typedef unsigned char drwav_uint8
 
typedef drwav_uint32 drwav_uintptr
 
typedef size_t(* drwav_write_proc) (void *pUserData, const void *pData, size_t bytesToWrite)
 

Enumerations

enum  drwav_acid_flag {
  drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8,
  drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4,
  drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2,
  drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1,
  drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16,
  drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8,
  drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4,
  drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1, drwav_acid_flag_root_note_set = 2,
  drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16, drwav_acid_flag_one_shot = 1,
  drwav_acid_flag_root_note_set = 2, drwav_acid_flag_stretch = 4, drwav_acid_flag_disk_based = 8, drwav_acid_flag_acidizer = 16
}
 
enum  drwav_container {
  drwav_container_riff, drwav_container_w64, drwav_container_rf64, drwav_container_riff,
  drwav_container_w64, drwav_container_riff, drwav_container_w64, drwav_container_rf64,
  drwav_container_riff, drwav_container_w64, drwav_container_rf64, drwav_container_riff,
  drwav_container_w64, drwav_container_rf64, drwav_container_riff, drwav_container_w64,
  drwav_container_rf64, drwav_container_riff, drwav_container_w64, drwav_container_rf64,
  drwav_container_riff, drwav_container_w64, drwav_container_riff, drwav_container_w64,
  drwav_container_rf64, drwav_container_riff, drwav_container_w64, drwav_container_rf64
}
 
enum  drwav_metadata_location {
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list,
  drwav_metadata_location_invalid, drwav_metadata_location_top_level, drwav_metadata_location_inside_info_list, drwav_metadata_location_inside_adtl_list
}
 
enum  drwav_metadata_type {
  drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2,
  drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6,
  drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10,
  drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14,
  drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings,
  drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0,
  drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3,
  drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7,
  drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11,
  drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15,
  drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl,
  drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0,
  drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4,
  drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8,
  drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12,
  drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16,
  drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2,
  drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1,
  drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5,
  drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9,
  drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13,
  drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17,
  drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1,
  drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2,
  drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6,
  drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10,
  drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14,
  drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings,
  drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0,
  drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3,
  drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7,
  drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11,
  drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15,
  drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl,
  drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0,
  drwav_metadata_type_smpl = 1 << 1, drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4,
  drwav_metadata_type_bext = 1 << 5, drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8,
  drwav_metadata_type_list_info_software = 1 << 9, drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12,
  drwav_metadata_type_list_info_comment = 1 << 13, drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16,
  drwav_metadata_type_list_info_tracknumber = 1 << 17, drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2,
  drwav_metadata_type_all_including_unknown = -1, drwav_metadata_type_none = 0, drwav_metadata_type_unknown = 1 << 0, drwav_metadata_type_smpl = 1 << 1,
  drwav_metadata_type_inst = 1 << 2, drwav_metadata_type_cue = 1 << 3, drwav_metadata_type_acid = 1 << 4, drwav_metadata_type_bext = 1 << 5,
  drwav_metadata_type_list_label = 1 << 6, drwav_metadata_type_list_note = 1 << 7, drwav_metadata_type_list_labelled_cue_region = 1 << 8, drwav_metadata_type_list_info_software = 1 << 9,
  drwav_metadata_type_list_info_copyright = 1 << 10, drwav_metadata_type_list_info_title = 1 << 11, drwav_metadata_type_list_info_artist = 1 << 12, drwav_metadata_type_list_info_comment = 1 << 13,
  drwav_metadata_type_list_info_date = 1 << 14, drwav_metadata_type_list_info_genre = 1 << 15, drwav_metadata_type_list_info_album = 1 << 16, drwav_metadata_type_list_info_tracknumber = 1 << 17,
  drwav_metadata_type_list_all_info_strings, drwav_metadata_type_list_all_adtl, drwav_metadata_type_all = -2, drwav_metadata_type_all_including_unknown = -1
}
 
enum  drwav_seek_origin {
  drwav_seek_origin_start, drwav_seek_origin_current, drwav_seek_origin_start, drwav_seek_origin_current,
  drwav_seek_origin_start, drwav_seek_origin_current, drwav_seek_origin_start, drwav_seek_origin_current,
  drwav_seek_origin_start, drwav_seek_origin_current, drwav_seek_origin_start, drwav_seek_origin_current,
  drwav_seek_origin_start, drwav_seek_origin_current, drwav_seek_origin_start, drwav_seek_origin_current,
  drwav_seek_origin_start, drwav_seek_origin_current, drwav_seek_origin_start, drwav_seek_origin_current
}
 
enum  drwav_smpl_loop_type {
  drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0,
  drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1,
  drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2,
  drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0,
  drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1,
  drwav_smpl_loop_type_backward = 2, drwav_smpl_loop_type_forward = 0, drwav_smpl_loop_type_pingpong = 1, drwav_smpl_loop_type_backward = 2
}
 

Functions

DRWAV_API void drwav_alaw_to_f32 (float *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_alaw_to_s16 (drwav_int16 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_alaw_to_s32 (drwav_int32 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API float drwav_bytes_to_f32 (const drwav_uint8 *data)
 
DRWAV_API drwav_int16 drwav_bytes_to_s16 (const drwav_uint8 *data)
 
DRWAV_API drwav_int32 drwav_bytes_to_s32 (const drwav_uint8 *data)
 
DRWAV_API drwav_int64 drwav_bytes_to_s64 (const drwav_uint8 *data)
 
DRWAV_API drwav_uint16 drwav_bytes_to_u16 (const drwav_uint8 *data)
 
DRWAV_API drwav_uint32 drwav_bytes_to_u32 (const drwav_uint8 *data)
 
DRWAV_API drwav_uint64 drwav_bytes_to_u64 (const drwav_uint8 *data)
 
DRWAV_API void drwav_f32_to_s16 (drwav_int16 *pOut, const float *pIn, size_t sampleCount)
 
DRWAV_API void drwav_f32_to_s32 (drwav_int32 *pOut, const float *pIn, size_t sampleCount)
 
DRWAV_API void drwav_f64_to_f32 (float *pOut, const double *pIn, size_t sampleCount)
 
DRWAV_API void drwav_f64_to_s16 (drwav_int16 *pOut, const double *pIn, size_t sampleCount)
 
DRWAV_API void drwav_f64_to_s32 (drwav_int32 *pOut, const double *pIn, size_t sampleCount)
 
DRWAV_API drwav_uint16 drwav_fmt_get_format (const drwav_fmt *pFMT)
 
DRWAV_API drwav_bool32 drwav_fourcc_equal (const drwav_uint8 *a, const char *b)
 
DRWAV_API void drwav_free (void *p, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_result drwav_get_cursor_in_pcm_frames (drwav *pWav, drwav_uint64 *pCursor)
 
DRWAV_API drwav_result drwav_get_length_in_pcm_frames (drwav *pWav, drwav_uint64 *pLength)
 
DRWAV_API drwav_bool32 drwav_guid_equal (const drwav_uint8 a[16], const drwav_uint8 b[16])
 
DRWAV_API drwav_bool32 drwav_init (drwav *pWav, drwav_read_proc onRead, drwav_seek_proc onSeek, void *pUserData, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_ex (drwav *pWav, drwav_read_proc onRead, drwav_seek_proc onSeek, drwav_chunk_proc onChunk, void *pReadSeekUserData, void *pChunkUserData, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file (drwav *pWav, const char *filename, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_ex (drwav *pWav, const char *filename, drwav_chunk_proc onChunk, void *pChunkUserData, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_ex_w (drwav *pWav, const wchar_t *filename, drwav_chunk_proc onChunk, void *pChunkUserData, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_w (drwav *pWav, const wchar_t *filename, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_with_metadata (drwav *pWav, const char *filename, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_with_metadata_w (drwav *pWav, const wchar_t *filename, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write (drwav *pWav, const char *filename, const drwav_data_format *pFormat, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write_sequential (drwav *pWav, const char *filename, const drwav_data_format *pFormat, drwav_uint64 totalSampleCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write_sequential_pcm_frames (drwav *pWav, const char *filename, const drwav_data_format *pFormat, drwav_uint64 totalPCMFrameCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write_sequential_pcm_frames_w (drwav *pWav, const wchar_t *filename, const drwav_data_format *pFormat, drwav_uint64 totalPCMFrameCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write_sequential_w (drwav *pWav, const wchar_t *filename, const drwav_data_format *pFormat, drwav_uint64 totalSampleCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_file_write_w (drwav *pWav, const wchar_t *filename, const drwav_data_format *pFormat, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory (drwav *pWav, const void *data, size_t dataSize, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory_ex (drwav *pWav, const void *data, size_t dataSize, drwav_chunk_proc onChunk, void *pChunkUserData, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory_with_metadata (drwav *pWav, const void *data, size_t dataSize, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory_write (drwav *pWav, void **ppData, size_t *pDataSize, const drwav_data_format *pFormat, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory_write_sequential (drwav *pWav, void **ppData, size_t *pDataSize, const drwav_data_format *pFormat, drwav_uint64 totalSampleCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_memory_write_sequential_pcm_frames (drwav *pWav, void **ppData, size_t *pDataSize, const drwav_data_format *pFormat, drwav_uint64 totalPCMFrameCount, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_with_metadata (drwav *pWav, drwav_read_proc onRead, drwav_seek_proc onSeek, void *pUserData, drwav_uint32 flags, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_write (drwav *pWav, const drwav_data_format *pFormat, drwav_write_proc onWrite, drwav_seek_proc onSeek, void *pUserData, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_write_sequential (drwav *pWav, const drwav_data_format *pFormat, drwav_uint64 totalSampleCount, drwav_write_proc onWrite, void *pUserData, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_write_sequential_pcm_frames (drwav *pWav, const drwav_data_format *pFormat, drwav_uint64 totalPCMFrameCount, drwav_write_proc onWrite, void *pUserData, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_bool32 drwav_init_write_with_metadata (drwav *pWav, const drwav_data_format *pFormat, drwav_write_proc onWrite, drwav_seek_proc onSeek, void *pUserData, const drwav_allocation_callbacks *pAllocationCallbacks, drwav_metadata *pMetadata, drwav_uint32 metadataCount)
 
DRWAV_API void drwav_mulaw_to_f32 (float *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_mulaw_to_s16 (drwav_int16 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_mulaw_to_s32 (drwav_int32 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API float * drwav_open_and_read_pcm_frames_f32 (drwav_read_proc onRead, drwav_seek_proc onSeek, void *pUserData, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int16drwav_open_and_read_pcm_frames_s16 (drwav_read_proc onRead, drwav_seek_proc onSeek, void *pUserData, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int32drwav_open_and_read_pcm_frames_s32 (drwav_read_proc onRead, drwav_seek_proc onSeek, void *pUserData, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API float * drwav_open_file_and_read_pcm_frames_f32 (const char *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API float * drwav_open_file_and_read_pcm_frames_f32_w (const wchar_t *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int16drwav_open_file_and_read_pcm_frames_s16 (const char *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int16drwav_open_file_and_read_pcm_frames_s16_w (const wchar_t *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int32drwav_open_file_and_read_pcm_frames_s32 (const char *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int32drwav_open_file_and_read_pcm_frames_s32_w (const wchar_t *filename, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API float * drwav_open_memory_and_read_pcm_frames_f32 (const void *data, size_t dataSize, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int16drwav_open_memory_and_read_pcm_frames_s16 (const void *data, size_t dataSize, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_int32drwav_open_memory_and_read_pcm_frames_s32 (const void *data, size_t dataSize, unsigned int *channelsOut, unsigned int *sampleRateOut, drwav_uint64 *totalFrameCountOut, const drwav_allocation_callbacks *pAllocationCallbacks)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames (drwav *pWav, drwav_uint64 framesToRead, void *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_be (drwav *pWav, drwav_uint64 framesToRead, void *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32 (drwav *pWav, drwav_uint64 framesToRead, float *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32be (drwav *pWav, drwav_uint64 framesToRead, float *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32le (drwav *pWav, drwav_uint64 framesToRead, float *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_le (drwav *pWav, drwav_uint64 framesToRead, void *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16 (drwav *pWav, drwav_uint64 framesToRead, drwav_int16 *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16be (drwav *pWav, drwav_uint64 framesToRead, drwav_int16 *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16le (drwav *pWav, drwav_uint64 framesToRead, drwav_int16 *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32 (drwav *pWav, drwav_uint64 framesToRead, drwav_int32 *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32be (drwav *pWav, drwav_uint64 framesToRead, drwav_int32 *pBufferOut)
 
DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32le (drwav *pWav, drwav_uint64 framesToRead, drwav_int32 *pBufferOut)
 
DRWAV_API size_t drwav_read_raw (drwav *pWav, size_t bytesToRead, void *pBufferOut)
 
DRWAV_API void drwav_s16_to_f32 (float *pOut, const drwav_int16 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s16_to_s32 (drwav_int32 *pOut, const drwav_int16 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s24_to_f32 (float *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s24_to_s16 (drwav_int16 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s24_to_s32 (drwav_int32 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s32_to_f32 (float *pOut, const drwav_int32 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_s32_to_s16 (drwav_int16 *pOut, const drwav_int32 *pIn, size_t sampleCount)
 
DRWAV_API drwav_bool32 drwav_seek_to_pcm_frame (drwav *pWav, drwav_uint64 targetFrameIndex)
 
DRWAV_API drwav_metadatadrwav_take_ownership_of_metadata (drwav *pWav)
 
DRWAV_API drwav_uint64 drwav_target_write_size_bytes (const drwav_data_format *pFormat, drwav_uint64 totalFrameCount, drwav_metadata *pMetadata, drwav_uint32 metadataCount)
 
DRWAV_API void drwav_u8_to_f32 (float *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_u8_to_s16 (drwav_int16 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API void drwav_u8_to_s32 (drwav_int32 *pOut, const drwav_uint8 *pIn, size_t sampleCount)
 
DRWAV_API drwav_result drwav_uninit (drwav *pWav)
 
DRWAV_API void drwav_version (drwav_uint32 *pMajor, drwav_uint32 *pMinor, drwav_uint32 *pRevision)
 
const DRWAV_API char * drwav_version_string (void)
 
DRWAV_API drwav_uint64 drwav_write_pcm_frames (drwav *pWav, drwav_uint64 framesToWrite, const void *pData)
 
DRWAV_API drwav_uint64 drwav_write_pcm_frames_be (drwav *pWav, drwav_uint64 framesToWrite, const void *pData)
 
DRWAV_API drwav_uint64 drwav_write_pcm_frames_le (drwav *pWav, drwav_uint64 framesToWrite, const void *pData)
 
DRWAV_API size_t drwav_write_raw (drwav *pWav, size_t bytesToWrite, const void *pData)
 

Macro Definition Documentation

◆ DR_WAVE_FORMAT_ADPCM

#define DR_WAVE_FORMAT_ADPCM   0x2

Definition at line 255 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_ALAW

#define DR_WAVE_FORMAT_ALAW   0x6

Definition at line 257 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_DVI_ADPCM

#define DR_WAVE_FORMAT_DVI_ADPCM   0x11

Definition at line 259 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_EXTENSIBLE

#define DR_WAVE_FORMAT_EXTENSIBLE   0xFFFE

Definition at line 260 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_IEEE_FLOAT

#define DR_WAVE_FORMAT_IEEE_FLOAT   0x3

Definition at line 256 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_MULAW

#define DR_WAVE_FORMAT_MULAW   0x7

Definition at line 258 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DR_WAVE_FORMAT_PCM

#define DR_WAVE_FORMAT_PCM   0x1

Definition at line 254 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_ACCESS_DENIED

#define DRWAV_ACCESS_DENIED   -6

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

◆ DRWAV_ADDRESS_FAMILY_NOT_SUPPORTED

#define DRWAV_ADDRESS_FAMILY_NOT_SUPPORTED   -43

Definition at line 241 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_ALREADY_CONNECTED

#define DRWAV_ALREADY_CONNECTED   -46

Definition at line 244 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_ALREADY_EXISTS

#define DRWAV_ALREADY_EXISTS   -8

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

◆ DRWAV_ALREADY_IN_USE

#define DRWAV_ALREADY_IN_USE   -23

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

◆ DRWAV_API

#define DRWAV_API   extern

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

◆ DRWAV_AT_END

#define DRWAV_AT_END   -53

Definition at line 251 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_BAD_ADDRESS

#define DRWAV_BAD_ADDRESS   -24

Definition at line 222 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_BAD_MESSAGE

#define DRWAV_BAD_MESSAGE   -31

Definition at line 229 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_BAD_PIPE

#define DRWAV_BAD_PIPE   -26

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

◆ DRWAV_BAD_PROTOCOL

#define DRWAV_BAD_PROTOCOL   -39

Definition at line 237 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_BAD_SEEK

#define DRWAV_BAD_SEEK   -25

Definition at line 223 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_BUSY

#define DRWAV_BUSY   -19

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

◆ DRWAV_CANCELLED

#define DRWAV_CANCELLED   -51

Definition at line 249 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_CONNECTION_REFUSED

#define DRWAV_CONNECTION_REFUSED   -48

Definition at line 246 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_CONNECTION_RESET

#define DRWAV_CONNECTION_RESET   -45

Definition at line 243 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_DEADLOCK

#define DRWAV_DEADLOCK   -27

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

◆ DRWAV_DIRECTORY_NOT_EMPTY

#define DRWAV_DIRECTORY_NOT_EMPTY   -16

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

◆ DRWAV_DOES_NOT_EXIST

#define DRWAV_DOES_NOT_EXIST   -7

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

◆ DRWAV_END_OF_FILE

#define DRWAV_END_OF_FILE   -17

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

◆ DRWAV_ERROR

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

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

◆ DRWAV_FALSE

#define DRWAV_FALSE   0

Definition at line 165 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_IN_PROGRESS

#define DRWAV_IN_PROGRESS   -50

Definition at line 248 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_INTERRUPT

#define DRWAV_INTERRUPT   -21

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

◆ DRWAV_INVALID_ARGS

#define DRWAV_INVALID_ARGS   -2

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

◆ DRWAV_INVALID_DATA

#define DRWAV_INVALID_DATA   -33

Definition at line 231 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_INVALID_FILE

#define DRWAV_INVALID_FILE   -10

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

◆ DRWAV_INVALID_OPERATION

#define DRWAV_INVALID_OPERATION   -3

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

◆ DRWAV_IO_ERROR

#define DRWAV_IO_ERROR   -20

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

◆ DRWAV_IS_DIRECTORY

#define DRWAV_IS_DIRECTORY   -15

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

◆ DRWAV_MEMORY_ALREADY_MAPPED

#define DRWAV_MEMORY_ALREADY_MAPPED   -52

Definition at line 250 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NAME_TOO_LONG

#define DRWAV_NAME_TOO_LONG   -13

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

◆ DRWAV_NO_ADDRESS

#define DRWAV_NO_ADDRESS   -38

Definition at line 236 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NO_DATA_AVAILABLE

#define DRWAV_NO_DATA_AVAILABLE   -32

Definition at line 230 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NO_HOST

#define DRWAV_NO_HOST   -49

Definition at line 247 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NO_MESSAGE

#define DRWAV_NO_MESSAGE   -30

Definition at line 228 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NO_NETWORK

#define DRWAV_NO_NETWORK   -35

Definition at line 233 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NO_SPACE

#define DRWAV_NO_SPACE   -18

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

◆ DRWAV_NOT_CONNECTED

#define DRWAV_NOT_CONNECTED   -47

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

◆ DRWAV_NOT_DIRECTORY

#define DRWAV_NOT_DIRECTORY   -14

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

◆ DRWAV_NOT_IMPLEMENTED

#define DRWAV_NOT_IMPLEMENTED   -29

Definition at line 227 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NOT_SOCKET

#define DRWAV_NOT_SOCKET   -37

Definition at line 235 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_NOT_UNIQUE

#define DRWAV_NOT_UNIQUE   -36

Definition at line 234 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_OUT_OF_MEMORY

#define DRWAV_OUT_OF_MEMORY   -4

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

◆ DRWAV_OUT_OF_RANGE

#define DRWAV_OUT_OF_RANGE   -5

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

◆ DRWAV_PATH_TOO_LONG

#define DRWAV_PATH_TOO_LONG   -12

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

◆ DRWAV_PRIVATE

#define DRWAV_PRIVATE   static

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

◆ DRWAV_PROTOCOL_FAMILY_NOT_SUPPORTED

#define DRWAV_PROTOCOL_FAMILY_NOT_SUPPORTED   -42

Definition at line 240 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_PROTOCOL_NOT_SUPPORTED

#define DRWAV_PROTOCOL_NOT_SUPPORTED   -41

Definition at line 239 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_PROTOCOL_UNAVAILABLE

#define DRWAV_PROTOCOL_UNAVAILABLE   -40

Definition at line 238 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_SEQUENTIAL

#define DRWAV_SEQUENTIAL   0x00000001

Definition at line 263 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_SOCKET_NOT_SUPPORTED

#define DRWAV_SOCKET_NOT_SUPPORTED   -44

Definition at line 242 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_STRINGIFY

#define DRWAV_STRINGIFY (   x)    #x

Definition at line 123 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_SUCCESS

#define DRWAV_SUCCESS   0

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

◆ DRWAV_TIMEOUT

#define DRWAV_TIMEOUT   -34

Definition at line 232 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_TOO_BIG

#define DRWAV_TOO_BIG   -11

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

◆ DRWAV_TOO_MANY_LINKS

#define DRWAV_TOO_MANY_LINKS   -28

Definition at line 226 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_TOO_MANY_OPEN_FILES

#define DRWAV_TOO_MANY_OPEN_FILES   -9

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

◆ DRWAV_TRUE

#define DRWAV_TRUE   1

Definition at line 164 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_UNAVAILABLE

#define DRWAV_UNAVAILABLE   -22

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

◆ DRWAV_VERSION_MAJOR

#define DRWAV_VERSION_MAJOR   0

Definition at line 126 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_VERSION_MINOR

#define DRWAV_VERSION_MINOR   13

Definition at line 127 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_VERSION_REVISION

#define DRWAV_VERSION_REVISION   2

Definition at line 128 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_VERSION_STRING

Definition at line 129 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ DRWAV_XSTRINGIFY

#define DRWAV_XSTRINGIFY (   x)    DRWAV_STRINGIFY(x)

Definition at line 124 of file porcupine/demo/c/dr_libs/dr_wav.h.

Typedef Documentation

◆ drwav_bool32

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

◆ drwav_bool8

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

◆ drwav_chunk_proc

typedef drwav_uint64(* drwav_chunk_proc) (void *pChunkUserData, drwav_read_proc onRead, drwav_seek_proc onSeek, void *pReadSeekUserData, const drwav_chunk_header *pChunkHeader, drwav_container container, const drwav_fmt *pFMT)

Definition at line 407 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_int16

typedef signed short drwav_int16

Definition at line 136 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_int32

typedef signed int drwav_int32

Definition at line 138 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_int64

typedef signed long long drwav_int64

Definition at line 151 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_int8

typedef signed char drwav_int8

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

◆ drwav_read_proc

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

Definition at line 354 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_result

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

◆ drwav_seek_proc

typedef drwav_bool32(* drwav_seek_proc) (void *pUserData, int offset, drwav_seek_origin origin)

Definition at line 381 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_uint16

typedef unsigned short drwav_uint16

Definition at line 137 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_uint32

typedef unsigned int drwav_uint32

Definition at line 139 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_uint64

typedef unsigned long long drwav_uint64

Definition at line 152 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_uint8

typedef unsigned char drwav_uint8

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

◆ drwav_uintptr

Definition at line 160 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_write_proc

typedef size_t(* drwav_write_proc) (void *pUserData, const void *pData, size_t bytesToWrite)

Definition at line 367 of file porcupine/demo/c/dr_libs/dr_wav.h.

Enumeration Type Documentation

◆ drwav_acid_flag

Enumerator
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 
drwav_acid_flag_one_shot 
drwav_acid_flag_root_note_set 
drwav_acid_flag_stretch 
drwav_acid_flag_disk_based 
drwav_acid_flag_acidizer 

Definition at line 622 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_container

Enumerator
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 
drwav_container_riff 
drwav_container_w64 
drwav_container_rf64 

Definition at line 274 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_metadata_location

Enumerator
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 
drwav_metadata_location_invalid 
drwav_metadata_location_top_level 
drwav_metadata_location_inside_info_list 
drwav_metadata_location_inside_adtl_list 

Definition at line 767 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_metadata_type

Enumerator
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 
drwav_metadata_type_none 
drwav_metadata_type_unknown 
drwav_metadata_type_smpl 
drwav_metadata_type_inst 
drwav_metadata_type_cue 
drwav_metadata_type_acid 
drwav_metadata_type_bext 
drwav_metadata_type_list_label 
drwav_metadata_type_list_note 
drwav_metadata_type_list_labelled_cue_region 
drwav_metadata_type_list_info_software 
drwav_metadata_type_list_info_copyright 
drwav_metadata_type_list_info_title 
drwav_metadata_type_list_info_artist 
drwav_metadata_type_list_info_comment 
drwav_metadata_type_list_info_date 
drwav_metadata_type_list_info_genre 
drwav_metadata_type_list_info_album 
drwav_metadata_type_list_info_tracknumber 
drwav_metadata_type_list_all_info_strings 
drwav_metadata_type_list_all_adtl 
drwav_metadata_type_all 
drwav_metadata_type_all_including_unknown 

Definition at line 444 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_seek_origin

Enumerator
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 
drwav_seek_origin_start 
drwav_seek_origin_current 

Definition at line 268 of file porcupine/demo/c/dr_libs/dr_wav.h.

◆ drwav_smpl_loop_type

Enumerator
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 
drwav_smpl_loop_type_forward 
drwav_smpl_loop_type_pingpong 
drwav_smpl_loop_type_backward 

Definition at line 510 of file porcupine/demo/c/dr_libs/dr_wav.h.

Function Documentation

◆ drwav_alaw_to_f32()

DRWAV_API void drwav_alaw_to_f32 ( float *  pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_alaw_to_s16()

DRWAV_API void drwav_alaw_to_s16 ( drwav_int16 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_alaw_to_s32()

DRWAV_API void drwav_alaw_to_s32 ( drwav_int32 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_bytes_to_f32()

DRWAV_API float drwav_bytes_to_f32 ( const drwav_uint8 data)

◆ drwav_bytes_to_s16()

DRWAV_API drwav_int16 drwav_bytes_to_s16 ( const drwav_uint8 data)

◆ drwav_bytes_to_s32()

DRWAV_API drwav_int32 drwav_bytes_to_s32 ( const drwav_uint8 data)

◆ drwav_bytes_to_s64()

DRWAV_API drwav_int64 drwav_bytes_to_s64 ( const drwav_uint8 data)

◆ drwav_bytes_to_u16()

DRWAV_API drwav_uint16 drwav_bytes_to_u16 ( const drwav_uint8 data)

◆ drwav_bytes_to_u32()

DRWAV_API drwav_uint32 drwav_bytes_to_u32 ( const drwav_uint8 data)

◆ drwav_bytes_to_u64()

DRWAV_API drwav_uint64 drwav_bytes_to_u64 ( const drwav_uint8 data)

◆ drwav_f32_to_s16()

DRWAV_API void drwav_f32_to_s16 ( drwav_int16 pOut,
const float *  pIn,
size_t  sampleCount 
)

◆ drwav_f32_to_s32()

DRWAV_API void drwav_f32_to_s32 ( drwav_int32 pOut,
const float *  pIn,
size_t  sampleCount 
)

◆ drwav_f64_to_f32()

DRWAV_API void drwav_f64_to_f32 ( float *  pOut,
const double *  pIn,
size_t  sampleCount 
)

◆ drwav_f64_to_s16()

DRWAV_API void drwav_f64_to_s16 ( drwav_int16 pOut,
const double *  pIn,
size_t  sampleCount 
)

◆ drwav_f64_to_s32()

DRWAV_API void drwav_f64_to_s32 ( drwav_int32 pOut,
const double *  pIn,
size_t  sampleCount 
)

◆ drwav_fmt_get_format()

DRWAV_API drwav_uint16 drwav_fmt_get_format ( const drwav_fmt pFMT)

◆ drwav_fourcc_equal()

DRWAV_API drwav_bool32 drwav_fourcc_equal ( const drwav_uint8 a,
const char *  b 
)

◆ drwav_free()

DRWAV_API void drwav_free ( void *  p,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_get_cursor_in_pcm_frames()

DRWAV_API drwav_result drwav_get_cursor_in_pcm_frames ( drwav pWav,
drwav_uint64 pCursor 
)

◆ drwav_get_length_in_pcm_frames()

DRWAV_API drwav_result drwav_get_length_in_pcm_frames ( drwav pWav,
drwav_uint64 pLength 
)

◆ drwav_guid_equal()

DRWAV_API drwav_bool32 drwav_guid_equal ( const drwav_uint8  a[16],
const drwav_uint8  b[16] 
)

◆ drwav_init()

DRWAV_API drwav_bool32 drwav_init ( drwav pWav,
drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
void *  pUserData,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_ex()

DRWAV_API drwav_bool32 drwav_init_ex ( drwav pWav,
drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
drwav_chunk_proc  onChunk,
void *  pReadSeekUserData,
void *  pChunkUserData,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file()

DRWAV_API drwav_bool32 drwav_init_file ( drwav pWav,
const char *  filename,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_ex()

DRWAV_API drwav_bool32 drwav_init_file_ex ( drwav pWav,
const char *  filename,
drwav_chunk_proc  onChunk,
void *  pChunkUserData,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_ex_w()

DRWAV_API drwav_bool32 drwav_init_file_ex_w ( drwav pWav,
const wchar_t *  filename,
drwav_chunk_proc  onChunk,
void *  pChunkUserData,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_w()

DRWAV_API drwav_bool32 drwav_init_file_w ( drwav pWav,
const wchar_t *  filename,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_with_metadata()

DRWAV_API drwav_bool32 drwav_init_file_with_metadata ( drwav pWav,
const char *  filename,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_with_metadata_w()

DRWAV_API drwav_bool32 drwav_init_file_with_metadata_w ( drwav pWav,
const wchar_t *  filename,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write()

DRWAV_API drwav_bool32 drwav_init_file_write ( drwav pWav,
const char *  filename,
const drwav_data_format pFormat,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write_sequential()

DRWAV_API drwav_bool32 drwav_init_file_write_sequential ( drwav pWav,
const char *  filename,
const drwav_data_format pFormat,
drwav_uint64  totalSampleCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write_sequential_pcm_frames()

DRWAV_API drwav_bool32 drwav_init_file_write_sequential_pcm_frames ( drwav pWav,
const char *  filename,
const drwav_data_format pFormat,
drwav_uint64  totalPCMFrameCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write_sequential_pcm_frames_w()

DRWAV_API drwav_bool32 drwav_init_file_write_sequential_pcm_frames_w ( drwav pWav,
const wchar_t *  filename,
const drwav_data_format pFormat,
drwav_uint64  totalPCMFrameCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write_sequential_w()

DRWAV_API drwav_bool32 drwav_init_file_write_sequential_w ( drwav pWav,
const wchar_t *  filename,
const drwav_data_format pFormat,
drwav_uint64  totalSampleCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_file_write_w()

DRWAV_API drwav_bool32 drwav_init_file_write_w ( drwav pWav,
const wchar_t *  filename,
const drwav_data_format pFormat,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory()

DRWAV_API drwav_bool32 drwav_init_memory ( drwav pWav,
const void *  data,
size_t  dataSize,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory_ex()

DRWAV_API drwav_bool32 drwav_init_memory_ex ( drwav pWav,
const void *  data,
size_t  dataSize,
drwav_chunk_proc  onChunk,
void *  pChunkUserData,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory_with_metadata()

DRWAV_API drwav_bool32 drwav_init_memory_with_metadata ( drwav pWav,
const void *  data,
size_t  dataSize,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory_write()

DRWAV_API drwav_bool32 drwav_init_memory_write ( drwav pWav,
void **  ppData,
size_t *  pDataSize,
const drwav_data_format pFormat,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory_write_sequential()

DRWAV_API drwav_bool32 drwav_init_memory_write_sequential ( drwav pWav,
void **  ppData,
size_t *  pDataSize,
const drwav_data_format pFormat,
drwav_uint64  totalSampleCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_memory_write_sequential_pcm_frames()

DRWAV_API drwav_bool32 drwav_init_memory_write_sequential_pcm_frames ( drwav pWav,
void **  ppData,
size_t *  pDataSize,
const drwav_data_format pFormat,
drwav_uint64  totalPCMFrameCount,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_with_metadata()

DRWAV_API drwav_bool32 drwav_init_with_metadata ( drwav pWav,
drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
void *  pUserData,
drwav_uint32  flags,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_write()

DRWAV_API drwav_bool32 drwav_init_write ( drwav pWav,
const drwav_data_format pFormat,
drwav_write_proc  onWrite,
drwav_seek_proc  onSeek,
void *  pUserData,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_write_sequential()

DRWAV_API drwav_bool32 drwav_init_write_sequential ( drwav pWav,
const drwav_data_format pFormat,
drwav_uint64  totalSampleCount,
drwav_write_proc  onWrite,
void *  pUserData,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_write_sequential_pcm_frames()

DRWAV_API drwav_bool32 drwav_init_write_sequential_pcm_frames ( drwav pWav,
const drwav_data_format pFormat,
drwav_uint64  totalPCMFrameCount,
drwav_write_proc  onWrite,
void *  pUserData,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_init_write_with_metadata()

DRWAV_API drwav_bool32 drwav_init_write_with_metadata ( drwav pWav,
const drwav_data_format pFormat,
drwav_write_proc  onWrite,
drwav_seek_proc  onSeek,
void *  pUserData,
const drwav_allocation_callbacks pAllocationCallbacks,
drwav_metadata pMetadata,
drwav_uint32  metadataCount 
)

◆ drwav_mulaw_to_f32()

DRWAV_API void drwav_mulaw_to_f32 ( float *  pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_mulaw_to_s16()

DRWAV_API void drwav_mulaw_to_s16 ( drwav_int16 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_mulaw_to_s32()

DRWAV_API void drwav_mulaw_to_s32 ( drwav_int32 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_open_and_read_pcm_frames_f32()

DRWAV_API float * drwav_open_and_read_pcm_frames_f32 ( drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
void *  pUserData,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_and_read_pcm_frames_s16()

DRWAV_API drwav_int16 * drwav_open_and_read_pcm_frames_s16 ( drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
void *  pUserData,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_and_read_pcm_frames_s32()

DRWAV_API drwav_int32 * drwav_open_and_read_pcm_frames_s32 ( drwav_read_proc  onRead,
drwav_seek_proc  onSeek,
void *  pUserData,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_f32()

DRWAV_API float * drwav_open_file_and_read_pcm_frames_f32 ( const char *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_f32_w()

DRWAV_API float * drwav_open_file_and_read_pcm_frames_f32_w ( const wchar_t *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_s16()

DRWAV_API drwav_int16 * drwav_open_file_and_read_pcm_frames_s16 ( const char *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_s16_w()

DRWAV_API drwav_int16 * drwav_open_file_and_read_pcm_frames_s16_w ( const wchar_t *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_s32()

DRWAV_API drwav_int32 * drwav_open_file_and_read_pcm_frames_s32 ( const char *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_file_and_read_pcm_frames_s32_w()

DRWAV_API drwav_int32 * drwav_open_file_and_read_pcm_frames_s32_w ( const wchar_t *  filename,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_memory_and_read_pcm_frames_f32()

DRWAV_API float * drwav_open_memory_and_read_pcm_frames_f32 ( const void *  data,
size_t  dataSize,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_memory_and_read_pcm_frames_s16()

DRWAV_API drwav_int16 * drwav_open_memory_and_read_pcm_frames_s16 ( const void *  data,
size_t  dataSize,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_open_memory_and_read_pcm_frames_s32()

DRWAV_API drwav_int32 * drwav_open_memory_and_read_pcm_frames_s32 ( const void *  data,
size_t  dataSize,
unsigned int *  channelsOut,
unsigned int *  sampleRateOut,
drwav_uint64 totalFrameCountOut,
const drwav_allocation_callbacks pAllocationCallbacks 
)

◆ drwav_read_pcm_frames()

DRWAV_API drwav_uint64 drwav_read_pcm_frames ( drwav pWav,
drwav_uint64  framesToRead,
void *  pBufferOut 
)

◆ drwav_read_pcm_frames_be()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_be ( drwav pWav,
drwav_uint64  framesToRead,
void *  pBufferOut 
)

◆ drwav_read_pcm_frames_f32()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32 ( drwav pWav,
drwav_uint64  framesToRead,
float *  pBufferOut 
)

◆ drwav_read_pcm_frames_f32be()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32be ( drwav pWav,
drwav_uint64  framesToRead,
float *  pBufferOut 
)

◆ drwav_read_pcm_frames_f32le()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_f32le ( drwav pWav,
drwav_uint64  framesToRead,
float *  pBufferOut 
)

◆ drwav_read_pcm_frames_le()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_le ( drwav pWav,
drwav_uint64  framesToRead,
void *  pBufferOut 
)

◆ drwav_read_pcm_frames_s16()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16 ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int16 pBufferOut 
)

◆ drwav_read_pcm_frames_s16be()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16be ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int16 pBufferOut 
)

◆ drwav_read_pcm_frames_s16le()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s16le ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int16 pBufferOut 
)

◆ drwav_read_pcm_frames_s32()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32 ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int32 pBufferOut 
)

◆ drwav_read_pcm_frames_s32be()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32be ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int32 pBufferOut 
)

◆ drwav_read_pcm_frames_s32le()

DRWAV_API drwav_uint64 drwav_read_pcm_frames_s32le ( drwav pWav,
drwav_uint64  framesToRead,
drwav_int32 pBufferOut 
)

◆ drwav_read_raw()

DRWAV_API size_t drwav_read_raw ( drwav pWav,
size_t  bytesToRead,
void *  pBufferOut 
)

◆ drwav_s16_to_f32()

DRWAV_API void drwav_s16_to_f32 ( float *  pOut,
const drwav_int16 pIn,
size_t  sampleCount 
)

◆ drwav_s16_to_s32()

DRWAV_API void drwav_s16_to_s32 ( drwav_int32 pOut,
const drwav_int16 pIn,
size_t  sampleCount 
)

◆ drwav_s24_to_f32()

DRWAV_API void drwav_s24_to_f32 ( float *  pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_s24_to_s16()

DRWAV_API void drwav_s24_to_s16 ( drwav_int16 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_s24_to_s32()

DRWAV_API void drwav_s24_to_s32 ( drwav_int32 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_s32_to_f32()

DRWAV_API void drwav_s32_to_f32 ( float *  pOut,
const drwav_int32 pIn,
size_t  sampleCount 
)

◆ drwav_s32_to_s16()

DRWAV_API void drwav_s32_to_s16 ( drwav_int16 pOut,
const drwav_int32 pIn,
size_t  sampleCount 
)

◆ drwav_seek_to_pcm_frame()

DRWAV_API drwav_bool32 drwav_seek_to_pcm_frame ( drwav pWav,
drwav_uint64  targetFrameIndex 
)

◆ drwav_take_ownership_of_metadata()

DRWAV_API drwav_metadata * drwav_take_ownership_of_metadata ( drwav pWav)

◆ drwav_target_write_size_bytes()

DRWAV_API drwav_uint64 drwav_target_write_size_bytes ( const drwav_data_format pFormat,
drwav_uint64  totalFrameCount,
drwav_metadata pMetadata,
drwav_uint32  metadataCount 
)

◆ drwav_u8_to_f32()

DRWAV_API void drwav_u8_to_f32 ( float *  pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_u8_to_s16()

DRWAV_API void drwav_u8_to_s16 ( drwav_int16 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_u8_to_s32()

DRWAV_API void drwav_u8_to_s32 ( drwav_int32 pOut,
const drwav_uint8 pIn,
size_t  sampleCount 
)

◆ drwav_uninit()

DRWAV_API drwav_result drwav_uninit ( drwav pWav)

◆ drwav_version()

DRWAV_API void drwav_version ( drwav_uint32 pMajor,
drwav_uint32 pMinor,
drwav_uint32 pRevision 
)

◆ drwav_version_string()

const DRWAV_API char * drwav_version_string ( void  )

◆ drwav_write_pcm_frames()

DRWAV_API drwav_uint64 drwav_write_pcm_frames ( drwav pWav,
drwav_uint64  framesToWrite,
const void *  pData 
)

◆ drwav_write_pcm_frames_be()

DRWAV_API drwav_uint64 drwav_write_pcm_frames_be ( drwav pWav,
drwav_uint64  framesToWrite,
const void *  pData 
)

◆ drwav_write_pcm_frames_le()

DRWAV_API drwav_uint64 drwav_write_pcm_frames_le ( drwav pWav,
drwav_uint64  framesToWrite,
const void *  pData 
)

◆ drwav_write_raw()

DRWAV_API size_t drwav_write_raw ( drwav pWav,
size_t  bytesToWrite,
const void *  pData 
)


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