1 ! Copyright (C) 2007 Chris Double.
2 ! See http://factorcode.org/license.txt for BSD license.
19 { [ os winnt? ] [ "vorbis.dll" ] }
20 { [ os macosx? ] [ "libvorbis.0.dylib" ] }
21 { [ os unix? ] [ "libvorbis.so" ] }
22 } cond "cdecl" add-library
24 "vorbis" deploy-library
33 { bitrate_upper long }
34 { bitrate_nominal long }
35 { bitrate_lower long }
36 { bitrate_window long }
40 STRUCT: vorbis-dsp-state
48 { preextrapolate int }
54 { granulepos longlong }
56 { glue_bits longlong }
57 { time_bits longlong }
58 { floor_bits longlong }
60 { backend_state void* }
70 { opb oggpack-buffer }
77 { granulepos longlong }
79 { vd vorbis-dsp-state* }
92 STRUCT: vorbis-comment
93 { usercomments char** }
94 { comment_lengths int* }
99 FUNCTION: void vorbis_info_init ( vorbis-info* vi ) ;
100 FUNCTION: void vorbis_info_clear ( vorbis-info* vi ) ;
101 FUNCTION: int vorbis_info_blocksize ( vorbis-info* vi, int zo ) ;
102 FUNCTION: void vorbis_comment_init ( vorbis-comment* vc ) ;
103 FUNCTION: void vorbis_comment_add ( vorbis-comment* vc, char* comment ) ;
104 FUNCTION: void vorbis_comment_add_tag ( vorbis-comment* vc, char* tag, char* contents ) ;
105 FUNCTION: char* vorbis_comment_query ( vorbis-comment* vc, char* tag, int count ) ;
106 FUNCTION: int vorbis_comment_query_count ( vorbis-comment* vc, char* tag ) ;
107 FUNCTION: void vorbis_comment_clear ( vorbis-comment* vc ) ;
108 FUNCTION: int vorbis_block_init ( vorbis-dsp-state* v, vorbis-block* vb ) ;
109 FUNCTION: int vorbis_block_clear ( vorbis-block* vb ) ;
110 FUNCTION: void vorbis_dsp_clear ( vorbis-dsp-state* v ) ;
111 FUNCTION: double vorbis_granule_time ( vorbis-dsp-state* v, longlong granulepos ) ;
112 FUNCTION: int vorbis_analysis_init ( vorbis-dsp-state* v, vorbis-info* vi ) ;
113 FUNCTION: int vorbis_commentheader_out ( vorbis-comment* vc, ogg-packet* op ) ;
114 FUNCTION: int vorbis_analysis_headerout ( vorbis-dsp-state* v,
118 ogg-packet* op_code ) ;
119 FUNCTION: float** vorbis_analysis_buffer ( vorbis-dsp-state* v, int vals ) ;
120 FUNCTION: int vorbis_analysis_wrote ( vorbis-dsp-state* v, int vals ) ;
121 FUNCTION: int vorbis_analysis_blockout ( vorbis-dsp-state* v, vorbis-block* vb ) ;
122 FUNCTION: int vorbis_analysis ( vorbis-block* vb, ogg-packet* op ) ;
123 FUNCTION: int vorbis_bitrate_addblock ( vorbis-block* vb ) ;
124 FUNCTION: int vorbis_bitrate_flushpacket ( vorbis-dsp-state* vd,
126 FUNCTION: int vorbis_synthesis_headerin ( vorbis-info* vi, vorbis-comment* vc,
128 FUNCTION: int vorbis_synthesis_init ( vorbis-dsp-state* v, vorbis-info* vi ) ;
129 FUNCTION: int vorbis_synthesis_restart ( vorbis-dsp-state* v ) ;
130 FUNCTION: int vorbis_synthesis ( vorbis-block* vb, ogg-packet* op ) ;
131 FUNCTION: int vorbis_synthesis_trackonly ( vorbis-block* vb, ogg-packet* op ) ;
132 FUNCTION: int vorbis_synthesis_blockin ( vorbis-dsp-state* v, vorbis-block* vb ) ;
133 FUNCTION: int vorbis_synthesis_pcmout ( vorbis-dsp-state* v, float*** pcm ) ;
134 FUNCTION: int vorbis_synthesis_lapout ( vorbis-dsp-state* v, float*** pcm ) ;
135 FUNCTION: int vorbis_synthesis_read ( vorbis-dsp-state* v, int samples ) ;
136 FUNCTION: long vorbis_packet_blocksize ( vorbis-info* vi, ogg-packet* op ) ;
137 FUNCTION: int vorbis_synthesis_halfrate ( vorbis-info* v, int flag ) ;
138 FUNCTION: int vorbis_synthesis_halfrate_p ( vorbis-info* v ) ;
140 CONSTANT: OV_FALSE -1
143 CONSTANT: OV_EREAD -128
144 CONSTANT: OV_EFAULT -129
145 CONSTANT: OV_EIMPL -130
146 CONSTANT: OV_EINVAL -131
147 CONSTANT: OV_ENOTVORBIS -132
148 CONSTANT: OV_EBADHEADER -133
149 CONSTANT: OV_EVERSION -134
150 CONSTANT: OV_ENOTAUDIO -135
151 CONSTANT: OV_EBADPACKET -136
152 CONSTANT: OV_EBADLINK -137
153 CONSTANT: OV_ENOSEEK -138