summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTuomas Virtanen <katajakasa@gmail.com>2018-04-04 23:09:55 +0300
committerTuomas Virtanen <katajakasa@gmail.com>2018-04-04 23:09:55 +0300
commitdf0ba1e67062fba5d9d6464bb6a40e808760b4dc (patch)
treeffeec6c5fd95ffb4af896b2fd96b2b5f74172fa1 /include
parentf5188876ce863b26f1f5c9c00cb788642ad84afd (diff)
Fix bitmap subtitle playback
Diffstat (limited to 'include')
-rw-r--r--include/kitchensink/internal/subtitle/kitsubtitlepacket.h10
-rw-r--r--include/kitchensink/internal/subtitle/renderers/kitsubrenderer.h8
-rw-r--r--include/kitchensink/kitsource.h2
3 files changed, 8 insertions, 12 deletions
diff --git a/include/kitchensink/internal/subtitle/kitsubtitlepacket.h b/include/kitchensink/internal/subtitle/kitsubtitlepacket.h
index 549c689..0c97e00 100644
--- a/include/kitchensink/internal/subtitle/kitsubtitlepacket.h
+++ b/include/kitchensink/internal/subtitle/kitsubtitlepacket.h
@@ -1,26 +1,22 @@
#ifndef KITSUBTITLEPACKET_H
#define KITSUBTITLEPACKET_H
+#include <stdbool.h>
#include <SDL2/SDL_surface.h>
#include "kitchensink/kitconfig.h"
-typedef enum {
- KIT_SUBTITLE_PACKET_ADD,
- KIT_SUBTITLE_PACKET_CLEAR
-} Kit_SubtitlePacketType;
-
typedef struct Kit_SubtitlePacket {
- Kit_SubtitlePacketType type;
double pts_start;
double pts_end;
int x;
int y;
+ bool clear;
SDL_Surface *surface;
} Kit_SubtitlePacket;
KIT_LOCAL Kit_SubtitlePacket* Kit_CreateSubtitlePacket(
- Kit_SubtitlePacketType type, double pts_start, double pts_end, int pos_x, int pos_y, SDL_Surface *surface);
+ bool clear, double pts_start, double pts_end, int pos_x, int pos_y, SDL_Surface *surface);
KIT_LOCAL void Kit_FreeSubtitlePacket(Kit_SubtitlePacket *packet);
#endif // KITSUBTITLEPACKET_H
diff --git a/include/kitchensink/internal/subtitle/renderers/kitsubrenderer.h b/include/kitchensink/internal/subtitle/renderers/kitsubrenderer.h
index af63e1e..5c1a5b6 100644
--- a/include/kitchensink/internal/subtitle/renderers/kitsubrenderer.h
+++ b/include/kitchensink/internal/subtitle/renderers/kitsubrenderer.h
@@ -8,20 +8,20 @@ typedef struct Kit_SubtitleRenderer Kit_SubtitleRenderer;
typedef struct Kit_TextureAtlas Kit_TextureAtlas;
typedef struct Kit_Decoder Kit_Decoder;
-typedef Kit_SubtitlePacket* (*ren_render_cb)(Kit_SubtitleRenderer *ren, void *src, double start_pts, double end_pts);
+typedef void (*ren_render_cb)(Kit_SubtitleRenderer *ren, void *src, double start_pts, double end_pts);
typedef int (*ren_get_data_db)(Kit_SubtitleRenderer *ren, Kit_TextureAtlas *atlas, double current_pts);
typedef void (*ren_close_cb)(Kit_SubtitleRenderer *ren);
struct Kit_SubtitleRenderer {
Kit_Decoder *dec;
void *userdata;
- ren_render_cb ren_render; ///< Subtitle rendering function callback
+ ren_render_cb ren_render; ///< Subtitle rendering function callback
ren_get_data_db ren_get_data; ///< Subtitle data getter function callback
- ren_close_cb ren_close; ///< Subtitle renderer close function callback
+ ren_close_cb ren_close; ///< Subtitle renderer close function callback
};
KIT_LOCAL Kit_SubtitleRenderer* Kit_CreateSubtitleRenderer(Kit_Decoder *dec);
-KIT_LOCAL Kit_SubtitlePacket* Kit_RunSubtitleRenderer(Kit_SubtitleRenderer *ren, void *src, double start_pts, double end_pts);
+KIT_LOCAL void Kit_RunSubtitleRenderer(Kit_SubtitleRenderer *ren, void *src, double start_pts, double end_pts);
KIT_LOCAL int Kit_GetSubtitleRendererData(Kit_SubtitleRenderer *ren, Kit_TextureAtlas *atlas, double current_pts);
KIT_LOCAL void Kit_CloseSubtitleRenderer(Kit_SubtitleRenderer *ren);
diff --git a/include/kitchensink/kitsource.h b/include/kitchensink/kitsource.h
index ea85d57..9c4d1b7 100644
--- a/include/kitchensink/kitsource.h
+++ b/include/kitchensink/kitsource.h
@@ -26,7 +26,7 @@ typedef struct Kit_Source {
void *format_ctx; ///< FFmpeg: Videostream format context
} Kit_Source;
-typedef struct Kit_Stream {
+typedef struct Kit_StreamInfo {
int index; ///< Stream index
Kit_StreamType type; ///< Stream type
} Kit_StreamInfo;