mirror of https://github.com/mpv-player/mpv
55 lines
2.8 KiB
C
55 lines
2.8 KiB
C
/*
|
|
* This file is part of MPlayer.
|
|
*
|
|
* MPlayer is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* MPlayer is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along
|
|
* with MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*/
|
|
|
|
#ifndef MPLAYER_SPUDEC_H
|
|
#define MPLAYER_SPUDEC_H
|
|
|
|
#include <stdint.h>
|
|
|
|
struct sub_bitmaps;
|
|
|
|
void spudec_heartbeat(void *this, unsigned int pts100);
|
|
void spudec_assemble(void *this, unsigned char *packet, unsigned int len, int pts100);
|
|
void spudec_draw(void *this, void (*draw_alpha)(void *ctx, int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride), void *ctx);
|
|
void spudec_draw_scaled(void *this, unsigned int dxs, unsigned int dys, void (*draw_alpha)(void *ctx, int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride), void *ctx);
|
|
void spudec_get_bitmap(void *this, int w, int h, struct sub_bitmaps *res);
|
|
int spudec_apply_palette_crop(void *this, uint32_t palette, int sx, int ex, int sy, int ey);
|
|
void *spudec_new_scaled(unsigned int *palette, unsigned int frame_width, unsigned int frame_height, uint8_t *extradata, int extradata_len);
|
|
void *spudec_new(unsigned int *palette);
|
|
void spudec_free(void *this);
|
|
void spudec_reset(void *this); // called after seek
|
|
int spudec_visible(void *this); // check if spu is visible
|
|
void spudec_set_font_factor(void * this, double factor); // sets the equivalent to ffactor
|
|
int spudec_changed(void *this);
|
|
void spudec_calc_bbox(void *me, unsigned int dxs, unsigned int dys, unsigned int* bbox);
|
|
void spudec_set_forced_subs_only(void * const this, const unsigned int flag);
|
|
void spudec_set_paletted(void *this, const uint8_t *pal_img, int stride,
|
|
const void *palette,
|
|
int x, int y, int w, int h,
|
|
double pts, double endpts);
|
|
struct spu_packet_t *spudec_packet_create(int x, int y, int w, int h);
|
|
void spudec_packet_fill(struct spu_packet_t *packet,
|
|
const uint8_t *pal_img, int pal_stride,
|
|
const void *palette,
|
|
int x, int y, int w, int h);
|
|
void spudec_packet_send(void *spu, struct spu_packet_t *packet,
|
|
double pts, double endpts);
|
|
void spudec_packet_clear(struct spu_packet_t *packet);
|
|
|
|
#endif /* MPLAYER_SPUDEC_H */
|