32456
|
1 /*
|
|
2 * This file is part of MPlayer.
|
|
3 *
|
|
4 * MPlayer is free software; you can redistribute it and/or modify
|
|
5 * it under the terms of the GNU General Public License as published by
|
|
6 * the Free Software Foundation; either version 2 of the License, or
|
|
7 * (at your option) any later version.
|
|
8 *
|
|
9 * MPlayer is distributed in the hope that it will be useful,
|
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12 * GNU General Public License for more details.
|
|
13 *
|
|
14 * You should have received a copy of the GNU General Public License along
|
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
17 */
|
|
18
|
|
19 #ifndef MPLAYER_SPUDEC_H
|
|
20 #define MPLAYER_SPUDEC_H
|
|
21
|
|
22 #include "libvo/video_out.h"
|
|
23
|
|
24 void spudec_heartbeat(void *this, unsigned int pts100);
|
|
25 void spudec_assemble(void *this, unsigned char *packet, unsigned int len, int pts100);
|
|
26 void spudec_draw(void *this, void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
|
|
27 void spudec_draw_scaled(void *this, unsigned int dxs, unsigned int dys, void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
|
|
28 int spudec_apply_palette_crop(void *this, uint32_t palette, int sx, int ex, int sy, int ey);
|
|
29 void spudec_update_palette(void *this, unsigned int *palette);
|
|
30 void *spudec_new_scaled(unsigned int *palette, unsigned int frame_width, unsigned int frame_height, uint8_t *extradata, int extradata_len);
|
|
31 void *spudec_new(unsigned int *palette);
|
|
32 void spudec_free(void *this);
|
|
33 void spudec_reset(void *this); // called after seek
|
|
34 int spudec_visible(void *this); // check if spu is visible
|
|
35 void spudec_set_font_factor(void * this, double factor); // sets the equivalent to ffactor
|
|
36 void spudec_set_hw_spu(void *this, const vo_functions_t *hw_spu);
|
|
37 int spudec_changed(void *this);
|
|
38 void spudec_calc_bbox(void *me, unsigned int dxs, unsigned int dys, unsigned int* bbox);
|
|
39 void spudec_set_forced_subs_only(void * const this, const unsigned int flag);
|
|
40 void spudec_set_paletted(void *this, const uint8_t *pal_img, int stride,
|
|
41 const void *palette,
|
|
42 int x, int y, int w, int h,
|
|
43 double pts, double endpts);
|
34784
|
44 struct spu_packet_t *spudec_packet_create(int x, int y, int w, int h);
|
|
45 void spudec_packet_fill(struct spu_packet_t *packet,
|
|
46 const uint8_t *pal_img, int pal_stride,
|
|
47 const void *palette,
|
|
48 int x, int y, int w, int h);
|
|
49 void spudec_packet_send(void *spu, struct spu_packet_t *packet,
|
|
50 double pts, double endpts);
|
|
51 void spudec_packet_clear(struct spu_packet_t *packet);
|
32456
|
52
|
|
53 #endif /* MPLAYER_SPUDEC_H */
|