author | kergoth <kergoth> | 2002-01-25 22:14:26 (UTC) |
---|---|---|
committer | kergoth <kergoth> | 2002-01-25 22:14:26 (UTC) |
commit | 15318cad33835e4e2dc620d033e43cd930676cdd (patch) (unidiff) | |
tree | c2fa0399a2c47fda8e2cd0092c73a809d17f68eb /core/multimedia/opieplayer/libmpeg3/mpeg3protos.h | |
download | opie-15318cad33835e4e2dc620d033e43cd930676cdd.zip opie-15318cad33835e4e2dc620d033e43cd930676cdd.tar.gz opie-15318cad33835e4e2dc620d033e43cd930676cdd.tar.bz2 |
Initial revision
Diffstat (limited to 'core/multimedia/opieplayer/libmpeg3/mpeg3protos.h') (more/less context) (show whitespace changes)
-rw-r--r-- | core/multimedia/opieplayer/libmpeg3/mpeg3protos.h | 278 |
1 files changed, 278 insertions, 0 deletions
diff --git a/core/multimedia/opieplayer/libmpeg3/mpeg3protos.h b/core/multimedia/opieplayer/libmpeg3/mpeg3protos.h new file mode 100644 index 0000000..631336b --- a/dev/null +++ b/core/multimedia/opieplayer/libmpeg3/mpeg3protos.h | |||
@@ -0,0 +1,278 @@ | |||
1 | /********************************************************************** | ||
2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | ||
3 | ** | ||
4 | ** This file is part of Qtopia Environment. | ||
5 | ** | ||
6 | ** This file may be distributed and/or modified under the terms of the | ||
7 | ** GNU General Public License version 2 as published by the Free Software | ||
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | ||
9 | ** packaging of this file. | ||
10 | ** | ||
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | ||
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | ||
13 | ** | ||
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | ||
15 | ** | ||
16 | ** Contact info@trolltech.com if any conditions of this licensing are | ||
17 | ** not clear to you. | ||
18 | ** | ||
19 | **********************************************************************/ | ||
20 | #ifndef MPEG3PROTOS_H | ||
21 | #define MPEG3PROTOS_H | ||
22 | |||
23 | #if defined(__cplusplus) | ||
24 | extern "C" { | ||
25 | #endif | ||
26 | |||
27 | /* CSS */ | ||
28 | |||
29 | mpeg3_css_t* mpeg3_new_css(); | ||
30 | |||
31 | /* DEMUX */ | ||
32 | |||
33 | mpeg3_demuxer_t* mpeg3_new_demuxer(mpeg3_t *file, int do_audio, int do_video, int stream_id); | ||
34 | int mpeg3_delete_demuxer(mpeg3_demuxer_t *demuxer); | ||
35 | int mpeg3demux_read_data(mpeg3_demuxer_t *demuxer, unsigned char *output, long size); | ||
36 | unsigned int mpeg3demux_read_int32(mpeg3_demuxer_t *demuxer); | ||
37 | unsigned int mpeg3demux_read_int24(mpeg3_demuxer_t *demuxer); | ||
38 | unsigned int mpeg3demux_read_int16(mpeg3_demuxer_t *demuxer); | ||
39 | double mpeg3demux_length(mpeg3_demuxer_t *demuxer); | ||
40 | mpeg3_demuxer_t* mpeg3_get_demuxer(mpeg3_t *file); | ||
41 | long mpeg3demux_tell(mpeg3_demuxer_t *demuxer); | ||
42 | double mpeg3demux_tell_percentage(mpeg3_demuxer_t *demuxer); | ||
43 | double mpeg3demux_get_time(mpeg3_demuxer_t *demuxer); | ||
44 | int mpeg3demux_eof(mpeg3_demuxer_t *demuxer); | ||
45 | int mpeg3demux_bof(mpeg3_demuxer_t *demuxer); | ||
46 | int mpeg3demux_copy_titles(mpeg3_demuxer_t *dst, mpeg3_demuxer_t *src); | ||
47 | int mpeg3demux_create_title(mpeg3_demuxer_t *demuxer, int timecode_search, FILE *toc); | ||
48 | long mpeg3demuxer_total_bytes(mpeg3_demuxer_t *demuxer); | ||
49 | int mpeg3demux_seek_byte(mpeg3_demuxer_t *demuxer, long byte); | ||
50 | int mpeg3demux_seek_time(mpeg3_demuxer_t *demuxer, double new_time); | ||
51 | int mpeg3demux_seek_percentage(mpeg3_demuxer_t *demuxer, double percentage); | ||
52 | int mpeg3demux_print_streams(mpeg3_demuxer_t *demuxer, FILE *toc); | ||
53 | int mpeg3demux_print_timecodes(mpeg3_title_t *title, FILE *output); | ||
54 | int mpeg3demux_read_titles(mpeg3_demuxer_t *demuxer); | ||
55 | int mpeg3demux_open_title(mpeg3_demuxer_t *demuxer, int title_number); | ||
56 | |||
57 | /* TITLE */ | ||
58 | |||
59 | mpeg3_title_t* mpeg3_new_title(mpeg3_t *file, char *path); | ||
60 | int mpeg3_delete_title(mpeg3_title_t *title); | ||
61 | int mpeg3_copy_title(mpeg3_title_t *dst, mpeg3_title_t *src); | ||
62 | |||
63 | |||
64 | /* ATRACK */ | ||
65 | |||
66 | mpeg3_atrack_t* mpeg3_new_atrack(mpeg3_t *file, int stream_id, int is_ac3, mpeg3_demuxer_t *demuxer); | ||
67 | int mpeg3_delete_atrack(mpeg3_t *file, mpeg3_atrack_t *atrack); | ||
68 | |||
69 | /* VTRACK */ | ||
70 | |||
71 | mpeg3_vtrack_t* mpeg3_new_vtrack(mpeg3_t *file, int stream_id, mpeg3_demuxer_t *demuxer); | ||
72 | int mpeg3_delete_vtrack(mpeg3_t *file, mpeg3_vtrack_t *vtrack); | ||
73 | |||
74 | /* AUDIO */ | ||
75 | mpeg3audio_t* mpeg3audio_new(mpeg3_t *file, mpeg3_atrack_t *track, int is_ac3); | ||
76 | int mpeg3audio_delete(mpeg3audio_t *audio); | ||
77 | int mpeg3audio_seek_sample(mpeg3audio_t *audio, long sample); | ||
78 | int mpeg3audio_seek_percentage(mpeg3audio_t *audio, double percentage); | ||
79 | int mpeg3audio_decode_audio(mpeg3audio_t *audio, | ||
80 | mpeg3_real_t *output_f, | ||
81 | short *output_i, int sampleSpacing, | ||
82 | int channel, | ||
83 | long start_position, | ||
84 | long len); | ||
85 | int mpeg3audio_read_raw(mpeg3audio_t *audio, unsigned char *output, long *size, long max_size); | ||
86 | int mpeg3audio_read_ac3_header(mpeg3audio_t *audio); | ||
87 | int mpeg3audio_read_pcm_header(mpeg3audio_t *audio); | ||
88 | int mpeg3audio_synth_mono(mpeg3audio_t *audio, mpeg3_real_t *bandPtr, mpeg3_real_t *samples, int *pnt); | ||
89 | int mpeg3audio_synth_stereo(mpeg3audio_t *audio, mpeg3_real_t *bandPtr, int channel, mpeg3_real_t *out, int *pnt); | ||
90 | int mpeg3audio_replace_buffer(mpeg3audio_t *audio, long new_allocation); | ||
91 | int mpeg3audio_ac3_exponent_unpack(mpeg3audio_t *audio, | ||
92 | mpeg3_ac3bsi_t *bsi, | ||
93 | mpeg3_ac3audblk_t *audblk); | ||
94 | int mpeg3audio_ac3_bit_allocate(mpeg3audio_t *audio, | ||
95 | unsigned int fscod, | ||
96 | mpeg3_ac3bsi_t *bsi, | ||
97 | mpeg3_ac3audblk_t *audblk); | ||
98 | int mpeg3audio_ac3_coeff_unpack(mpeg3audio_t *audio, | ||
99 | mpeg3_ac3bsi_t *bsi, | ||
100 | mpeg3_ac3audblk_t *audblk, | ||
101 | mpeg3ac3_stream_samples_t samples); | ||
102 | int mpeg3audio_ac3_imdct(mpeg3audio_t *audio, | ||
103 | mpeg3_ac3bsi_t *bsi, | ||
104 | mpeg3_ac3audblk_t *audblk, | ||
105 | mpeg3ac3_stream_samples_t samples); | ||
106 | int mpeg3audio_replace_buffer(mpeg3audio_t *audio, long new_allocation); | ||
107 | int mpeg3audio_dct36(mpeg3_real_t *inbuf, mpeg3_real_t *o1, mpeg3_real_t *o2, mpeg3_real_t *wintab, mpeg3_real_t *tsbuf); | ||
108 | int mpeg3audio_dct12(mpeg3_real_t *in,mpeg3_real_t *rawout1,mpeg3_real_t *rawout2,register mpeg3_real_t *wi,register mpeg3_real_t *ts); | ||
109 | int mpeg3audio_read_header(mpeg3audio_t *audio); | ||
110 | int mpeg3audio_do_ac3(mpeg3audio_t *audio); | ||
111 | int mpeg3audio_dolayer2(mpeg3audio_t *audio); | ||
112 | int mpeg3audio_dolayer3(mpeg3audio_t *audio); | ||
113 | int mpeg3audio_do_pcm(mpeg3audio_t *audio); | ||
114 | int mpeg3audio_dct64(mpeg3_real_t *a, mpeg3_real_t *b, mpeg3_real_t *c); | ||
115 | int mpeg3audio_reset_synths(mpeg3audio_t *audio); | ||
116 | int mpeg3audio_prev_header(mpeg3audio_t *audio); | ||
117 | int mpeg3audio_read_layer3_frame(mpeg3audio_t *audio); | ||
118 | int mpeg3audio_new_decode_tables(mpeg3audio_t *audio); | ||
119 | int mpeg3audio_imdct_init(mpeg3audio_t *audio); | ||
120 | |||
121 | |||
122 | /* VIDEO */ | ||
123 | mpeg3video_t* mpeg3video_new(mpeg3_t *file, mpeg3_vtrack_t *track); | ||
124 | int mpeg3video_delete(mpeg3video_t *video); | ||
125 | int mpeg3video_read_frame(mpeg3video_t *video, | ||
126 | long frame_number, | ||
127 | unsigned char **output_rows, | ||
128 | int in_x, | ||
129 | int in_y, | ||
130 | int in_w, | ||
131 | int in_h, | ||
132 | int out_w, | ||
133 | int out_h, | ||
134 | int color_model); | ||
135 | int mpeg3video_set_cpus(mpeg3video_t *video, int cpus); | ||
136 | int mpeg3video_set_mmx(mpeg3video_t *video, int use_mmx); | ||
137 | int mpeg3video_seek(mpeg3video_t *video); | ||
138 | int mpeg3video_seek_frame(mpeg3video_t *video, long frame); | ||
139 | int mpeg3video_seek_percentage(mpeg3video_t *video, double percentage); | ||
140 | int mpeg3video_previous_frame(mpeg3video_t *video); | ||
141 | int mpeg3video_drop_frames(mpeg3video_t *video, long frames); | ||
142 | int mpeg3video_read_yuvframe(mpeg3video_t *video, | ||
143 | long frame_number, | ||
144 | char *y_output, | ||
145 | char *u_output, | ||
146 | char *v_output, | ||
147 | int in_x, | ||
148 | int in_y, | ||
149 | int in_w, | ||
150 | int in_h); | ||
151 | int mpeg3video_read_raw(mpeg3video_t *video, unsigned char *output, long *size, long max_size); | ||
152 | int mpeg3video_display_second_field(mpeg3video_t *video); | ||
153 | int mpeg3video_init_output(); | ||
154 | int mpeg3video_get_header(mpeg3video_t *video, int dont_repeat); | ||
155 | int mpeg3video_getpicture(mpeg3video_t *video, int framenum); | ||
156 | int mpeg3video_match_refframes(mpeg3video_t *video); | ||
157 | int mpeg3video_next_code(mpeg3_bits_t* stream, unsigned int code); | ||
158 | int mpeg3video_prev_code(mpeg3_bits_t* stream, unsigned int code); | ||
159 | int mpeg3video_getgophdr(mpeg3video_t *video); | ||
160 | int mpeg3video_present_frame(mpeg3video_t *video); | ||
161 | int mpeg3video_read_frame_backend(mpeg3video_t *video, int skip_bframes); | ||
162 | int mpeg3video_getslicehdr(mpeg3_slice_t *slice, mpeg3video_t *video); | ||
163 | int mpeg3video_get_macroblock_address(mpeg3_slice_t *slice); | ||
164 | int mpeg3video_macroblock_modes(mpeg3_slice_t *slice, | ||
165 | mpeg3video_t *video, | ||
166 | int *pmb_type, | ||
167 | int *pstwtype, | ||
168 | int *pstwclass, | ||
169 | int *pmotion_type, | ||
170 | int *pmv_count, | ||
171 | int *pmv_format, | ||
172 | int *pdmv, | ||
173 | int *pmvscale, | ||
174 | int *pdct_type); | ||
175 | int mpeg3video_motion_vectors(mpeg3_slice_t *slice, | ||
176 | mpeg3video_t *video, | ||
177 | int PMV[2][2][2], | ||
178 | int dmvector[2], | ||
179 | int mv_field_sel[2][2], | ||
180 | int s, | ||
181 | int mv_count, | ||
182 | int mv_format, | ||
183 | int h_r_size, | ||
184 | int v_r_size, | ||
185 | int dmv, | ||
186 | int mvscale); | ||
187 | void mpeg3video_motion_vector(mpeg3_slice_t *slice, | ||
188 | mpeg3video_t *video, | ||
189 | int *PMV, | ||
190 | int *dmvector, | ||
191 | int h_r_size, | ||
192 | int v_r_size, | ||
193 | int dmv, | ||
194 | int mvscale, | ||
195 | int full_pel_vector); | ||
196 | int mpeg3video_get_cbp(mpeg3_slice_t *slice); | ||
197 | int mpeg3video_clearblock(mpeg3_slice_t *slice, int comp, int size); | ||
198 | int mpeg3video_getmpg2intrablock(mpeg3_slice_t *slice, | ||
199 | mpeg3video_t *video, | ||
200 | int comp, | ||
201 | int dc_dct_pred[]); | ||
202 | int mpeg3video_getintrablock(mpeg3_slice_t *slice, | ||
203 | mpeg3video_t *video, | ||
204 | int comp, | ||
205 | int dc_dct_pred[]); | ||
206 | int mpeg3video_getmpg2interblock(mpeg3_slice_t *slice, | ||
207 | mpeg3video_t *video, | ||
208 | int comp); | ||
209 | int mpeg3video_getinterblock(mpeg3_slice_t *slice, | ||
210 | mpeg3video_t *video, | ||
211 | int comp); | ||
212 | int mpeg3video_reconstruct(mpeg3video_t *video, | ||
213 | int bx, | ||
214 | int by, | ||
215 | int mb_type, | ||
216 | int motion_type, | ||
217 | int PMV[2][2][2], | ||
218 | int mv_field_sel[2][2], | ||
219 | int dmvector[2], | ||
220 | int stwtype); | ||
221 | void mpeg3video_calc_dmv(mpeg3video_t *video, | ||
222 | int DMV[][2], | ||
223 | int *dmvector, | ||
224 | int mvx, | ||
225 | int mvy); | ||
226 | |||
227 | |||
228 | /* FILESYSTEM */ | ||
229 | |||
230 | mpeg3_fs_t* mpeg3_new_fs(char *path); | ||
231 | int mpeg3_delete_fs(mpeg3_fs_t *fs); | ||
232 | int mpeg3io_open_file(mpeg3_fs_t *fs); | ||
233 | int mpeg3io_close_file(mpeg3_fs_t *fs); | ||
234 | int mpeg3io_read_data(unsigned char *buffer, long bytes, mpeg3_fs_t *fs); | ||
235 | |||
236 | /* BITSTREAM */ | ||
237 | mpeg3_bits_t* mpeg3bits_new_stream(mpeg3_t *file, mpeg3_demuxer_t *demuxer); | ||
238 | unsigned int mpeg3bits_getbits(mpeg3_bits_t* stream, int n); | ||
239 | int mpeg3bits_read_buffer(mpeg3_bits_t* stream, unsigned char *buffer, int bytes); | ||
240 | int mpeg3bits_use_ptr(mpeg3_bits_t* stream, unsigned char *buffer); | ||
241 | int mpeg3bits_use_demuxer(mpeg3_bits_t* stream); | ||
242 | int mpeg3bits_refill(mpeg3_bits_t* stream); | ||
243 | int mpeg3bits_getbitoffset(mpeg3_bits_t *stream); | ||
244 | void mpeg3bits_start_reverse(mpeg3_bits_t* stream); | ||
245 | void mpeg3bits_start_forward(mpeg3_bits_t* stream); | ||
246 | int mpeg3bits_delete_stream(mpeg3_bits_t* stream); | ||
247 | int mpeg3bits_byte_align(mpeg3_bits_t *stream); | ||
248 | int mpeg3bits_seek_start(mpeg3_bits_t* stream); | ||
249 | int mpeg3bits_seek_time(mpeg3_bits_t* stream, double time_position); | ||
250 | int mpeg3bits_seek_byte(mpeg3_bits_t* stream, long position); | ||
251 | int mpeg3bits_seek_percentage(mpeg3_bits_t* stream, double percentage); | ||
252 | unsigned int mpeg3bits_next_startcode(mpeg3_bits_t* stream); | ||
253 | int mpeg3bits_seek_end(mpeg3_bits_t* stream); | ||
254 | |||
255 | /* MISC */ | ||
256 | int mpeg3_read_toc(mpeg3_t *file); | ||
257 | int mpeg3_generate_toc(FILE *output, char *path, int timecode_search, int print_streams); | ||
258 | int mpeg3_mmx_test(); | ||
259 | int mpeg3io_seek(mpeg3_fs_t *fs, long byte); | ||
260 | int mpeg3io_seek_relative(mpeg3_fs_t *fs, long bytes); | ||
261 | int mpeg3io_device(char *path, char *device); | ||
262 | int mpeg3_decrypt_packet(mpeg3_css_t *css, unsigned char *sector); | ||
263 | int mpeg3_delete_css(mpeg3_css_t *css); | ||
264 | int mpeg3_get_keys(mpeg3_css_t *css, char *path); | ||
265 | int mpeg3_copy_fs(mpeg3_fs_t *dst, mpeg3_fs_t *src); | ||
266 | int mpeg3_min(int x, int y); | ||
267 | int mpeg3_max(int x, int y); | ||
268 | int mpeg3_new_slice_buffer(mpeg3_slice_buffer_t *slice_buffer); | ||
269 | int mpeg3_expand_slice_buffer(mpeg3_slice_buffer_t *slice_buffer); | ||
270 | int mpeg3_delete_slice_decoder(mpeg3_slice_t *slice); | ||
271 | int mpeg3_new_slice_decoder(mpeg3video_t *video, mpeg3_slice_t *slice); | ||
272 | int mpeg3_delete_slice_buffer(mpeg3_slice_buffer_t *slice_buffer); | ||
273 | |||
274 | #if defined(__cplusplus) | ||
275 | } | ||
276 | #endif | ||
277 | |||
278 | #endif | ||