24 #ifndef LIBCAPTION_FLV_H
25 #define LIBCAPTION_FLV_H
31 #define FLV_HEADER_SIZE 13
32 #define FLV_FOOTER_SIZE 4
33 #define FLV_TAG_HEADER_SIZE 11
34 #define FLV_TAG_FOOTER_SIZE 4
FILE * flv_open_write(const char *flv)
Definition: flv.c:70
static flvtag_codecid_t flvtag_codecid(flvtag_t *tag)
Definition: flv.h:83
#define FLV_TAG_HEADER_SIZE
Definition: flv.h:33
int flv_write_header(FILE *flv, int has_audio, int has_video)
Definition: flv.c:102
int flvtag_addcaption_scc(flvtag_t *tag, const scc_t *scc)
Definition: flv.c:405
sei_t * flv_read_sei(FILE *flv, flvtag_t *tag)
static flvtag_soundformat_t flvtag_soundformat(flvtag_t *tag)
Definition: flv.h:71
int flvtag_addcaption_text(flvtag_t *tag, const utf8_char_t *text)
Definition: flv.c:386
static uint32_t flvtag_timestamp(flvtag_t *tag)
Definition: flv.h:106
static flvtag_avcpackettype_t flvtag_avcpackettype(flvtag_t *tag)
Definition: flv.h:103
void flvtag_free(flvtag_t *tag)
Definition: flv.c:33
size_t flvtag_payload_size(flvtag_t *tag)
Definition: flv.c:150
static flvtag_type_t flvtag_type(flvtag_t *tag)
Definition: flv.h:51
size_t aloc
Definition: flv.h:38
flvtag_codecid_t
Definition: flv.h:73
flvtag_type_t
Definition: flv.h:45
static const size_t flvtag_raw_size(flvtag_t *tag)
Definition: flv.h:123
uint8_t * flvtag_payload_data(flvtag_t *tag)
Definition: flv.c:155
#define FLV_TAG_FOOTER_SIZE
Definition: flv.h:34
int flvtag_amfcaption_708(flvtag_t *tag, uint32_t timestamp, sei_message_t *msg)
Definition: flv.c:260
static double flvtag_pts_seconds(flvtag_t *tag)
Definition: flv.h:112
flvtag_avcpackettype_t
Definition: flv.h:96
static uint32_t flvtag_dts(flvtag_t *tag)
Definition: flv.h:107
int flv_read_header(FILE *flv, int *has_audio, int *has_video)
Definition: flv.c:85
static size_t flvtag_size(flvtag_t *tag)
Definition: flv.h:105
flvtag_soundformat_t
Definition: flv.h:53
flvtag_frametype_t
Definition: flv.h:85
static double flvtag_cts_seconds(flvtag_t *tag)
Definition: flv.h:111
void flvtag_init(flvtag_t *tag)
Definition: flv.c:28
int flv_read_tag(FILE *flv, flvtag_t *tag)
Definition: flv.c:108
FILE * flv_open_read(const char *flv)
Definition: flv.c:61
static double flvtag_dts_seconds(flvtag_t *tag)
Definition: flv.h:110
static const uint8_t * flvtag_raw_data(flvtag_t *tag)
Definition: flv.h:122
int flv_write_tag(FILE *flv, flvtag_t *tag)
Definition: flv.c:129
int flvtag_initavc(flvtag_t *tag, uint32_t dts, int32_t cts, flvtag_frametype_t type)
Definition: flv.c:175
void flvtag_swap(flvtag_t *tag1, flvtag_t *tag2)
Definition: flv.c:42
static uint32_t flvtag_cts(flvtag_t *tag)
Definition: flv.h:108
FILE * flv_close(FILE *flv)
Definition: flv.c:79
static flvtag_frametype_t flvtag_frametype(flvtag_t *tag)
Definition: flv.h:94
size_t flvtag_header_size(flvtag_t *tag)
Definition: flv.c:135
static uint32_t flvtag_pts(flvtag_t *tag)
Definition: flv.h:109
uint8_t * data
Definition: flv.h:37
int flvtag_avcwritenal(flvtag_t *tag, uint8_t *data, size_t size)
Definition: flv.c:316
int flvtag_amfcaption_utf8(flvtag_t *tag, uint32_t timestamp, const utf8_char_t *text)
Definition: flv.c:289