Symphony Of Empires
stb_vorbis.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#include <limits.h>
Include dependency graph for stb_vorbis.c:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  stb_vorbis_alloc
 
struct  stb_vorbis_info
 
struct  stb_vorbis_comment
 
struct  Codebook
 
struct  Floor0
 
struct  Floor1
 
union  Floor
 
struct  Residue
 
struct  MappingChannel
 
struct  Mapping
 
struct  Mode
 
struct  CRCscan
 
struct  ProbedPage
 
struct  stb_vorbis
 
struct  stbv__floor_ordering
 
union  float_conv
 

Macros

#define STB_VORBIS_INCLUDE_STB_VORBIS_H
 
#define STB_VORBIS_MAX_CHANNELS   16
 
#define STB_VORBIS_PUSHDATA_CRC_COUNT   4
 
#define STB_VORBIS_FAST_HUFFMAN_LENGTH   10
 
#define STB_VORBIS_FAST_HUFFMAN_SHORT
 
#define STB_VORBIS_ENDIAN   0
 
#define __forceinline
 
#define CHECK(f)   ((void) 0)
 
#define MAX_BLOCKSIZE_LOG   13
 
#define MAX_BLOCKSIZE   (1 << MAX_BLOCKSIZE_LOG)
 
#define TRUE   1
 
#define FALSE   0
 
#define STBV_NOTUSED(v)   (void)sizeof(v)
 
#define FAST_HUFFMAN_TABLE_SIZE   (1 << STB_VORBIS_FAST_HUFFMAN_LENGTH)
 
#define FAST_HUFFMAN_TABLE_MASK   (FAST_HUFFMAN_TABLE_SIZE - 1)
 
#define IS_PUSH_MODE(f)   ((f)->push_mode)
 
#define array_size_required(count, size)   (count*(sizeof(void *)+(size)))
 
#define temp_alloc(f, size)   (f->alloc.alloc_buffer ? setup_temp_malloc(f,size) : alloca(size))
 
#define temp_free(f, p)   (void)0
 
#define temp_alloc_save(f)   ((f)->temp_offset)
 
#define temp_alloc_restore(f, p)   ((f)->temp_offset = (p))
 
#define temp_block_array(f, count, size)   make_block_array(temp_alloc(f,array_size_required(count,size)), count, size)
 
#define CRC32_POLY   0x04c11db7
 
#define M_PI   3.14159265358979323846264f
 
#define NO_CODE   255
 
#define STBV_CDECL
 
#define USE_MEMORY(z)   ((z)->stream)
 
#define PAGEFLAG_continued_packet   1
 
#define PAGEFLAG_first_page   2
 
#define PAGEFLAG_last_page   4
 
#define EOP   (-1)
 
#define INVALID_BITS   (-1)
 
#define DECODE_RAW(var, f, c)
 
#define DECODE(var, f, c)
 
#define DECODE_VQ(var, f, c)   DECODE_RAW(var,f,c)
 
#define CODEBOOK_ELEMENT(c, off)   (c->multiplicands[off])
 
#define CODEBOOK_ELEMENT_FAST(c, off)   (c->multiplicands[off])
 
#define CODEBOOK_ELEMENT_BASE(c)   (0)
 
#define LINE_OP(a, b)   a *= b
 
#define LIBVORBIS_MDCT   0
 
#define SAMPLE_unknown   0xffffffff
 
#define PLAYBACK_MONO   1
 
#define PLAYBACK_LEFT   2
 
#define PLAYBACK_RIGHT   4
 
#define L   (PLAYBACK_LEFT | PLAYBACK_MONO)
 
#define C   (PLAYBACK_LEFT | PLAYBACK_RIGHT | PLAYBACK_MONO)
 
#define R   (PLAYBACK_RIGHT | PLAYBACK_MONO)
 
#define FASTDEF(x)   float_conv x
 
#define MAGIC(SHIFT)   (1.5f * (1 << (23-SHIFT)) + 0.5f/(1 << SHIFT))
 
#define ADDEND(SHIFT)   (((150-SHIFT) << 23) + (1 << 22))
 
#define FAST_SCALED_FLOAT_TO_INT(temp, x, s)   (temp.f = (x) + MAGIC(s), temp.i - ADDEND(s))
 
#define check_endianness()
 
#define STB_BUFFER_SIZE   32
 
#define STB_BUFFER_SIZE   32
 

Typedefs

typedef struct stb_vorbis stb_vorbis
 
typedef unsigned char uint8
 
typedef signed char int8
 
typedef unsigned short uint16
 
typedef signed short int16
 
typedef unsigned int uint32
 
typedef signed int int32
 
typedef float codetype
 
typedef struct stb_vorbis vorb
 
typedef int16 YTYPE
 
typedef char stb_vorbis_float_size_test[sizeof(float)==4 &&sizeof(int)==4]
 

Enumerations

enum  STBVorbisError {
  VORBIS__no_error , VORBIS_need_more_data =1 , VORBIS_invalid_api_mixing , VORBIS_outofmem ,
  VORBIS_feature_not_supported , VORBIS_too_many_channels , VORBIS_file_open_failure , VORBIS_seek_without_length ,
  VORBIS_unexpected_eof =10 , VORBIS_seek_invalid , VORBIS_invalid_setup =20 , VORBIS_invalid_stream ,
  VORBIS_missing_capture_pattern =30 , VORBIS_invalid_stream_structure_version , VORBIS_continued_packet_flag_invalid , VORBIS_incorrect_stream_serial_number ,
  VORBIS_invalid_first_page , VORBIS_bad_packet_type , VORBIS_cant_find_last_page , VORBIS_seek_failed ,
  VORBIS_ogg_skeleton_not_supported
}
 
enum  { VORBIS_packet_id = 1 , VORBIS_packet_comment = 3 , VORBIS_packet_setup = 5 }
 

Functions

stb_vorbis_info stb_vorbis_get_info (stb_vorbis *f)
 
stb_vorbis_comment stb_vorbis_get_comment (stb_vorbis *f)
 
int stb_vorbis_get_error (stb_vorbis *f)
 
void stb_vorbis_close (stb_vorbis *f)
 
int stb_vorbis_get_sample_offset (stb_vorbis *f)
 
unsigned int stb_vorbis_get_file_offset (stb_vorbis *f)
 
stb_vorbisstb_vorbis_open_pushdata (const unsigned char *datablock, int datablock_length_in_bytes, int *datablock_memory_consumed_in_bytes, int *error, const stb_vorbis_alloc *alloc_buffer)
 
int stb_vorbis_decode_frame_pushdata (stb_vorbis *f, const unsigned char *datablock, int datablock_length_in_bytes, int *channels, float ***output, int *samples)
 
void stb_vorbis_flush_pushdata (stb_vorbis *f)
 
int stb_vorbis_decode_filename (const char *filename, int *channels, int *sample_rate, short **output)
 
int stb_vorbis_decode_memory (const unsigned char *mem, int len, int *channels, int *sample_rate, short **output)
 
stb_vorbisstb_vorbis_open_memory (const unsigned char *data, int len, int *error, const stb_vorbis_alloc *alloc_buffer)
 
stb_vorbisstb_vorbis_open_filename (const char *filename, int *error, const stb_vorbis_alloc *alloc_buffer)
 
stb_vorbisstb_vorbis_open_file (FILE *f, int close_handle_on_close, int *error, const stb_vorbis_alloc *alloc_buffer)
 
stb_vorbisstb_vorbis_open_file_section (FILE *f, int close_handle_on_close, int *error, const stb_vorbis_alloc *alloc_buffer, unsigned int len)
 
int stb_vorbis_seek_frame (stb_vorbis *f, unsigned int sample_number)
 
int stb_vorbis_seek (stb_vorbis *f, unsigned int sample_number)
 
int stb_vorbis_seek_start (stb_vorbis *f)
 
unsigned int stb_vorbis_stream_length_in_samples (stb_vorbis *f)
 
float stb_vorbis_stream_length_in_seconds (stb_vorbis *f)
 
int stb_vorbis_get_frame_float (stb_vorbis *f, int *channels, float ***output)
 
int stb_vorbis_get_frame_short_interleaved (stb_vorbis *f, int num_c, short *buffer, int num_shorts)
 
int stb_vorbis_get_frame_short (stb_vorbis *f, int num_c, short **buffer, int num_samples)
 
int stb_vorbis_get_samples_float_interleaved (stb_vorbis *f, int channels, float *buffer, int num_floats)
 
int stb_vorbis_get_samples_float (stb_vorbis *f, int channels, float **buffer, int num_samples)
 
int stb_vorbis_get_samples_short_interleaved (stb_vorbis *f, int channels, short *buffer, int num_shorts)
 
int stb_vorbis_get_samples_short (stb_vorbis *f, int channels, short **buffer, int num_samples)
 

Macro Definition Documentation

◆ __forceinline

#define __forceinline

Definition at line 620 of file stb_vorbis.c.

◆ ADDEND

#define ADDEND (   SHIFT)    (((150-SHIFT) << 23) + (1 << 22))

Definition at line 5156 of file stb_vorbis.c.

◆ array_size_required

#define array_size_required (   count,
  size 
)    (count*(sizeof(void *)+(size)))

Definition at line 928 of file stb_vorbis.c.

◆ C

Definition at line 5132 of file stb_vorbis.c.

◆ CHECK

#define CHECK (   f)    ((void) 0)

Definition at line 637 of file stb_vorbis.c.

◆ check_endianness

#define check_endianness ( )

Definition at line 5158 of file stb_vorbis.c.

◆ CODEBOOK_ELEMENT

#define CODEBOOK_ELEMENT (   c,
  off 
)    (c->multiplicands[off])

Definition at line 1771 of file stb_vorbis.c.

◆ CODEBOOK_ELEMENT_BASE

#define CODEBOOK_ELEMENT_BASE (   c)    (0)

Definition at line 1773 of file stb_vorbis.c.

◆ CODEBOOK_ELEMENT_FAST

#define CODEBOOK_ELEMENT_FAST (   c,
  off 
)    (c->multiplicands[off])

Definition at line 1772 of file stb_vorbis.c.

◆ CRC32_POLY

#define CRC32_POLY   0x04c11db7

Definition at line 989 of file stb_vorbis.c.

◆ DECODE

#define DECODE (   var,
  f,
 
)
Value:
DECODE_RAW(var,f,c) \
if (c->sparse) var = c->sorted_values[var];
#define DECODE_RAW(var, f, c)
Definition: stb_vorbis.c:1717

Definition at line 1754 of file stb_vorbis.c.

◆ DECODE_RAW

#define DECODE_RAW (   var,
  f,
 
)
Value:
if (f->valid_bits < STB_VORBIS_FAST_HUFFMAN_LENGTH) \
prep_huffman(f); \
var = f->acc & FAST_HUFFMAN_TABLE_MASK; \
var = c->fast_huffman[var]; \
if (var >= 0) { \
int n = c->codeword_lengths[var]; \
f->acc >>= n; \
f->valid_bits -= n; \
if (f->valid_bits < 0) { f->valid_bits = 0; var = -1; } \
} else { \
var = codebook_decode_scalar_raw(f,c); \
}
#define FAST_HUFFMAN_TABLE_MASK
Definition: stb_vorbis.c:678
#define STB_VORBIS_FAST_HUFFMAN_LENGTH
Definition: stb_vorbis.c:486

Definition at line 1717 of file stb_vorbis.c.

◆ DECODE_VQ

#define DECODE_VQ (   var,
  f,
 
)    DECODE_RAW(var,f,c)

Definition at line 1759 of file stb_vorbis.c.

◆ EOP

#define EOP   (-1)

Definition at line 1560 of file stb_vorbis.c.

◆ FALSE

#define FALSE   0

Definition at line 653 of file stb_vorbis.c.

◆ FAST_HUFFMAN_TABLE_MASK

#define FAST_HUFFMAN_TABLE_MASK   (FAST_HUFFMAN_TABLE_SIZE - 1)

Definition at line 678 of file stb_vorbis.c.

◆ FAST_HUFFMAN_TABLE_SIZE

#define FAST_HUFFMAN_TABLE_SIZE   (1 << STB_VORBIS_FAST_HUFFMAN_LENGTH)

Definition at line 677 of file stb_vorbis.c.

◆ FAST_SCALED_FLOAT_TO_INT

#define FAST_SCALED_FLOAT_TO_INT (   temp,
  x,
 
)    (temp.f = (x) + MAGIC(s), temp.i - ADDEND(s))

Definition at line 5157 of file stb_vorbis.c.

◆ FASTDEF

#define FASTDEF (   x)    float_conv x

Definition at line 5153 of file stb_vorbis.c.

◆ INVALID_BITS

#define INVALID_BITS   (-1)

Definition at line 1561 of file stb_vorbis.c.

◆ IS_PUSH_MODE

#define IS_PUSH_MODE (   f)    ((f)->push_mode)

Definition at line 908 of file stb_vorbis.c.

◆ L

#define L   (PLAYBACK_LEFT | PLAYBACK_MONO)

Definition at line 5131 of file stb_vorbis.c.

◆ LIBVORBIS_MDCT

#define LIBVORBIS_MDCT   0

Definition at line 2365 of file stb_vorbis.c.

◆ LINE_OP

#define LINE_OP (   a,
 
)    a *= b

Definition at line 2023 of file stb_vorbis.c.

◆ M_PI

#define M_PI   3.14159265358979323846264f

Definition at line 1046 of file stb_vorbis.c.

◆ MAGIC

#define MAGIC (   SHIFT)    (1.5f * (1 << (23-SHIFT)) + 0.5f/(1 << SHIFT))

Definition at line 5155 of file stb_vorbis.c.

◆ MAX_BLOCKSIZE

#define MAX_BLOCKSIZE   (1 << MAX_BLOCKSIZE_LOG)

Definition at line 641 of file stb_vorbis.c.

◆ MAX_BLOCKSIZE_LOG

#define MAX_BLOCKSIZE_LOG   13

Definition at line 640 of file stb_vorbis.c.

◆ NO_CODE

#define NO_CODE   255

Definition at line 1050 of file stb_vorbis.c.

◆ PAGEFLAG_continued_packet

#define PAGEFLAG_continued_packet   1

Definition at line 1440 of file stb_vorbis.c.

◆ PAGEFLAG_first_page

#define PAGEFLAG_first_page   2

Definition at line 1441 of file stb_vorbis.c.

◆ PAGEFLAG_last_page

#define PAGEFLAG_last_page   4

Definition at line 1442 of file stb_vorbis.c.

◆ PLAYBACK_LEFT

#define PLAYBACK_LEFT   2

Definition at line 5128 of file stb_vorbis.c.

◆ PLAYBACK_MONO

#define PLAYBACK_MONO   1

Definition at line 5127 of file stb_vorbis.c.

◆ PLAYBACK_RIGHT

#define PLAYBACK_RIGHT   4

Definition at line 5129 of file stb_vorbis.c.

◆ R

#define R   (PLAYBACK_RIGHT | PLAYBACK_MONO)

Definition at line 5133 of file stb_vorbis.c.

◆ SAMPLE_unknown

#define SAMPLE_unknown   0xffffffff

Definition at line 4632 of file stb_vorbis.c.

◆ STB_BUFFER_SIZE [1/2]

#define STB_BUFFER_SIZE   32

◆ STB_BUFFER_SIZE [2/2]

#define STB_BUFFER_SIZE   32

◆ STB_VORBIS_ENDIAN

#define STB_VORBIS_ENDIAN   0

Definition at line 568 of file stb_vorbis.c.

◆ STB_VORBIS_FAST_HUFFMAN_LENGTH

#define STB_VORBIS_FAST_HUFFMAN_LENGTH   10

Definition at line 486 of file stb_vorbis.c.

◆ STB_VORBIS_FAST_HUFFMAN_SHORT

#define STB_VORBIS_FAST_HUFFMAN_SHORT

Definition at line 500 of file stb_vorbis.c.

◆ STB_VORBIS_INCLUDE_STB_VORBIS_H

#define STB_VORBIS_INCLUDE_STB_VORBIS_H

Definition at line 75 of file stb_vorbis.c.

◆ STB_VORBIS_MAX_CHANNELS

#define STB_VORBIS_MAX_CHANNELS   16

Definition at line 461 of file stb_vorbis.c.

◆ STB_VORBIS_PUSHDATA_CRC_COUNT

#define STB_VORBIS_PUSHDATA_CRC_COUNT   4

Definition at line 477 of file stb_vorbis.c.

◆ STBV_CDECL

#define STBV_CDECL

Definition at line 1159 of file stb_vorbis.c.

◆ STBV_NOTUSED

#define STBV_NOTUSED (   v)    (void)sizeof(v)

Definition at line 661 of file stb_vorbis.c.

◆ temp_alloc

#define temp_alloc (   f,
  size 
)    (f->alloc.alloc_buffer ? setup_temp_malloc(f,size) : alloca(size))

Definition at line 930 of file stb_vorbis.c.

◆ temp_alloc_restore

#define temp_alloc_restore (   f,
 
)    ((f)->temp_offset = (p))

Definition at line 933 of file stb_vorbis.c.

◆ temp_alloc_save

#define temp_alloc_save (   f)    ((f)->temp_offset)

Definition at line 932 of file stb_vorbis.c.

◆ temp_block_array

#define temp_block_array (   f,
  count,
  size 
)    make_block_array(temp_alloc(f,array_size_required(count,size)), count, size)

Definition at line 935 of file stb_vorbis.c.

◆ temp_free

#define temp_free (   f,
 
)    (void)0

Definition at line 931 of file stb_vorbis.c.

◆ TRUE

#define TRUE   1

Definition at line 652 of file stb_vorbis.c.

◆ USE_MEMORY

#define USE_MEMORY (   z)    ((z)->stream)

Definition at line 1334 of file stb_vorbis.c.

Typedef Documentation

◆ codetype

typedef float codetype

Definition at line 656 of file stb_vorbis.c.

◆ int16

typedef signed short int16

Definition at line 647 of file stb_vorbis.c.

◆ int32

typedef signed int int32

Definition at line 649 of file stb_vorbis.c.

◆ int8

typedef signed char int8

Definition at line 645 of file stb_vorbis.c.

◆ stb_vorbis

typedef struct stb_vorbis stb_vorbis

Definition at line 1 of file stb_vorbis.c.

◆ stb_vorbis_float_size_test

typedef char stb_vorbis_float_size_test[sizeof(float)==4 &&sizeof(int)==4]

Definition at line 5152 of file stb_vorbis.c.

◆ uint16

typedef unsigned short uint16

Definition at line 646 of file stb_vorbis.c.

◆ uint32

typedef unsigned int uint32

Definition at line 648 of file stb_vorbis.c.

◆ uint8

typedef unsigned char uint8

Definition at line 644 of file stb_vorbis.c.

◆ vorb

typedef struct stb_vorbis vorb

Definition at line 656 of file stb_vorbis.c.

◆ YTYPE

typedef int16 YTYPE

Definition at line 3068 of file stb_vorbis.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VORBIS_packet_id 
VORBIS_packet_comment 
VORBIS_packet_setup 

Definition at line 1649 of file stb_vorbis.c.

◆ STBVorbisError

Enumerator
VORBIS__no_error 
VORBIS_need_more_data 
VORBIS_invalid_api_mixing 
VORBIS_outofmem 
VORBIS_feature_not_supported 
VORBIS_too_many_channels 
VORBIS_file_open_failure 
VORBIS_seek_without_length 
VORBIS_unexpected_eof 
VORBIS_seek_invalid 
VORBIS_invalid_setup 
VORBIS_invalid_stream 
VORBIS_missing_capture_pattern 
VORBIS_invalid_stream_structure_version 
VORBIS_continued_packet_flag_invalid 
VORBIS_incorrect_stream_serial_number 
VORBIS_invalid_first_page 
VORBIS_bad_packet_type 
VORBIS_cant_find_last_page 
VORBIS_seek_failed 
VORBIS_ogg_skeleton_not_supported 

Definition at line 374 of file stb_vorbis.c.

Function Documentation

◆ stb_vorbis_close()

void stb_vorbis_close ( stb_vorbis f)

Definition at line 4271 of file stb_vorbis.c.

Here is the caller graph for this function:

◆ stb_vorbis_decode_filename()

int stb_vorbis_decode_filename ( const char *  filename,
int *  channels,
int *  sample_rate,
short **  output 
)

Definition at line 5346 of file stb_vorbis.c.

◆ stb_vorbis_decode_frame_pushdata()

int stb_vorbis_decode_frame_pushdata ( stb_vorbis f,
const unsigned char *  datablock,
int  datablock_length_in_bytes,
int *  channels,
float ***  output,
int *  samples 
)

Definition at line 4444 of file stb_vorbis.c.

◆ stb_vorbis_decode_memory()

int stb_vorbis_decode_memory ( const unsigned char *  mem,
int  len,
int *  channels,
int *  sample_rate,
short **  output 
)

Definition at line 5386 of file stb_vorbis.c.

◆ stb_vorbis_flush_pushdata()

void stb_vorbis_flush_pushdata ( stb_vorbis f)

Definition at line 4341 of file stb_vorbis.c.

◆ stb_vorbis_get_comment()

stb_vorbis_comment stb_vorbis_get_comment ( stb_vorbis f)

Definition at line 4317 of file stb_vorbis.c.

◆ stb_vorbis_get_error()

int stb_vorbis_get_error ( stb_vorbis f)

Definition at line 4326 of file stb_vorbis.c.

◆ stb_vorbis_get_file_offset()

unsigned int stb_vorbis_get_file_offset ( stb_vorbis f)

Definition at line 4545 of file stb_vorbis.c.

◆ stb_vorbis_get_frame_float()

int stb_vorbis_get_frame_float ( stb_vorbis f,
int *  channels,
float ***  output 
)

Definition at line 5028 of file stb_vorbis.c.

Here is the caller graph for this function:

◆ stb_vorbis_get_frame_short()

int stb_vorbis_get_frame_short ( stb_vorbis f,
int  num_c,
short **  buffer,
int  num_samples 
)

Definition at line 5260 of file stb_vorbis.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stb_vorbis_get_frame_short_interleaved()

int stb_vorbis_get_frame_short_interleaved ( stb_vorbis f,
int  num_c,
short *  buffer,
int  num_shorts 
)

Definition at line 5296 of file stb_vorbis.c.

Here is the call graph for this function:

◆ stb_vorbis_get_info()

stb_vorbis_info stb_vorbis_get_info ( stb_vorbis f)

Definition at line 4305 of file stb_vorbis.c.

◆ stb_vorbis_get_sample_offset()

int stb_vorbis_get_sample_offset ( stb_vorbis f)

Definition at line 4297 of file stb_vorbis.c.

◆ stb_vorbis_get_samples_float()

int stb_vorbis_get_samples_float ( stb_vorbis f,
int  channels,
float **  buffer,
int  num_samples 
)

Definition at line 5453 of file stb_vorbis.c.

Here is the call graph for this function:

◆ stb_vorbis_get_samples_float_interleaved()

int stb_vorbis_get_samples_float_interleaved ( stb_vorbis f,
int  channels,
float *  buffer,
int  num_floats 
)

Definition at line 5426 of file stb_vorbis.c.

Here is the call graph for this function:

◆ stb_vorbis_get_samples_short()

int stb_vorbis_get_samples_short ( stb_vorbis f,
int  channels,
short **  buffer,
int  num_samples 
)

Definition at line 5328 of file stb_vorbis.c.

◆ stb_vorbis_get_samples_short_interleaved()

int stb_vorbis_get_samples_short_interleaved ( stb_vorbis f,
int  channels,
short *  buffer,
int  num_shorts 
)

Definition at line 5309 of file stb_vorbis.c.

◆ stb_vorbis_open_file()

stb_vorbis * stb_vorbis_open_file ( FILE *  f,
int  close_handle_on_close,
int *  error,
const stb_vorbis_alloc alloc_buffer 
)

Definition at line 5073 of file stb_vorbis.c.

◆ stb_vorbis_open_file_section()

stb_vorbis * stb_vorbis_open_file_section ( FILE *  f,
int  close_handle_on_close,
int *  error,
const stb_vorbis_alloc alloc_buffer,
unsigned int  len 
)

Definition at line 5052 of file stb_vorbis.c.

◆ stb_vorbis_open_filename()

stb_vorbis * stb_vorbis_open_filename ( const char *  filename,
int *  error,
const stb_vorbis_alloc alloc_buffer 
)

Definition at line 5083 of file stb_vorbis.c.

Here is the caller graph for this function:

◆ stb_vorbis_open_memory()

stb_vorbis * stb_vorbis_open_memory ( const unsigned char *  data,
int  len,
int *  error,
const stb_vorbis_alloc alloc_buffer 
)

Definition at line 5099 of file stb_vorbis.c.

◆ stb_vorbis_open_pushdata()

stb_vorbis * stb_vorbis_open_pushdata ( const unsigned char *  datablock,
int  datablock_length_in_bytes,
int *  datablock_memory_consumed_in_bytes,
int *  error,
const stb_vorbis_alloc alloc_buffer 
)

Definition at line 4514 of file stb_vorbis.c.

◆ stb_vorbis_seek()

int stb_vorbis_seek ( stb_vorbis f,
unsigned int  sample_number 
)

Definition at line 4919 of file stb_vorbis.c.

Here is the call graph for this function:

◆ stb_vorbis_seek_frame()

int stb_vorbis_seek_frame ( stb_vorbis f,
unsigned int  sample_number 
)

Definition at line 4880 of file stb_vorbis.c.

Here is the caller graph for this function:

◆ stb_vorbis_seek_start()

int stb_vorbis_seek_start ( stb_vorbis f)

Definition at line 4936 of file stb_vorbis.c.

◆ stb_vorbis_stream_length_in_samples()

unsigned int stb_vorbis_stream_length_in_samples ( stb_vorbis f)

Definition at line 4946 of file stb_vorbis.c.

Here is the caller graph for this function:

◆ stb_vorbis_stream_length_in_seconds()

float stb_vorbis_stream_length_in_seconds ( stb_vorbis f)

Definition at line 5021 of file stb_vorbis.c.

Here is the call graph for this function: