1
{ Minimal translation of C /usr/include/vorbis/codec.h header.
2
@exclude (This is only a C header translation --- no nice PasDoc docs.) }
3
unit CastleVorbisCodec;
9
uses CTypes, CastleOgg;
17
{* The below bitrate declarations are *hints*.
18
Combinations of the three values carry the following implications:
20
all three set to the same value:
21
implies a fixed rate bitstream
23
implies a VBR stream that averages the nominal bitrate. No hard
25
upper and or lower set:
26
implies a VBR bitstream that obeys the bitrate limits. nominal
27
may also be set to give a nominal rate.
29
the coder does not care to speculate.
33
bitrate_nominal: CLong;
35
bitrate_window: CLong;
39
Pvorbis_info = ^Tvorbis_info;
41
{* vorbis_dsp_state buffers the current vorbis audio
42
analysis/synthesis state. The DSP state belongs to a specific
43
logical bitstream ****************************************************}
44
Tvorbis_dsp_state = record
70
backend_state: Pointer;
72
Pvorbis_dsp_state = ^Tvorbis_dsp_state;
74
Tvorbis_block = record
75
{* necessary stream state for linking to the framing abstraction *}
76
pcm: Pointer; {* this is a pointer into local storage *}
88
vd: Pvorbis_dsp_state; {* For read-only access of configuration *}
90
{* local storage to avoid remallocing; it's up to the mapping to
98
{* bitmetrics for the frame *}
107
{* vorbis_info contains all the setup information specific to the
108
specific compression/decompression mode in progress (eg,
109
psychoacoustic settings, channel setup, options, codebook
110
etc). vorbis_info and substructures are in backends.h.
111
*********************************************************************/
113
/* the comments are not part of vorbis_info so that vorbis_info can be
115
Tvorbis_comment = record
116
{* unlimited user comment fields. libvorbis writes 'libvorbis'
117
whatever vendor is set to in encode *}
118
user_comments: Pointer;
119
comment_lengths: PCInt;
123
Pvorbis_comment = ^Tvorbis_comment;
126
{* Vorbis ERRORS and return codes ***********************************}
135
OV_ENOTVORBIS = -132;
136
OV_EBADHEADER = -133;
139
OV_EBADPACKET = -136;
b'\\ No newline at end of file'