libgpac
Documentation of the core library of GPAC
Loading...
Searching...
No Matches
write_tx3g.c File Reference

Data Structures

struct  TX3GMxCtx
 

Macros

#define OFFS(_n)   #_n, offsetof(TX3GMxCtx, _n)
 

Functions

static void tx3gmx_write_config (TX3GMxCtx *ctx)
 
GF_Err tx3gmx_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
 
void dump_ttxt_header (FILE *dump, GF_Tx3gSampleEntryBox *txt_e, u32 def_width, u32 def_height)
 
static void tx3gmx_get_stsd (GF_TextSampleDescriptor *ent, GF_Tx3gSampleEntryBox *samp_ent, GF_FontTableBox *font_ent)
 
void dump_ttxt_sample (FILE *dump, GF_TextSample *s_txt, u64 ts, u32 timescale, u32 di, Bool box_dump)
 
char * tx3g_format_time (u64 ts, u32 timescale, char *szDur, Bool is_srt)
 
GF_Err dump_ttxt_sample_srt (FILE *dump, GF_TextSample *txt, GF_Tx3gSampleEntryBox *txtd, Bool vtt_dump)
 
static GF_Err dump_ttxt_sample_ttml (TX3GMxCtx *ctx, FILE *dump, GF_TextSample *txt, GF_Tx3gSampleEntryBox *txtd, u64 start_ts, u64 end_ts)
 
GF_Err tx3gmx_process (GF_Filter *filter)
 
static GF_Err tx3gmx_initialize (GF_Filter *filter)
 
static void tx3gmx_finalize (GF_Filter *filter)
 
const GF_FilterRegister * ttxtuf_register (GF_FilterSession *session)
 
static GF_Err tx3g2srt_initialize (GF_Filter *filter)
 
const GF_FilterRegister * tx3g2srt_register (GF_FilterSession *session)
 
static GF_Err tx3g2vtt_initialize (GF_Filter *filter)
 
const GF_FilterRegister * tx3g2vtt_register (GF_FilterSession *session)
 
static GF_Err tx3g2ttml_initialize (GF_Filter *filter)
 
const GF_FilterRegister * tx3g2ttml_register (GF_FilterSession *session)
 

Variables

static const GF_FilterCapability TX3GMxCaps []
 
static const GF_FilterArgs TX3GMxArgs []
 
GF_FilterRegister TTXTMxRegister
 
static const GF_FilterCapability TX3G2SRTCaps []
 
GF_FilterRegister TX3G2SRTRegister
 
static const GF_FilterCapability TX3G2VTTCaps []
 
GF_FilterRegister TTX2VTTRegister
 
static const GF_FilterCapability TX3G2TTMLCaps []
 
GF_FilterRegister TX3G2TTMLRegister
 

Data Structure Documentation

◆ TX3GMxCtx

struct TX3GMxCtx
Data Fields
Bool exporter
Bool merge
GF_FilterPid * ipid
GF_FilterPid * opid
GF_BitStream * bs_r
u32 codecid
GF_Fraction64 duration
GF_TextConfig * cfg
u32 dsi_crc
Bool is_tx3g
u32 dump_type
u32 cur_frame

Macro Definition Documentation

◆ OFFS

#define OFFS (   _n)    #_n, offsetof(TX3GMxCtx, _n)

Function Documentation

◆ tx3gmx_write_config()

static void tx3gmx_write_config ( TX3GMxCtx ctx)
static

◆ tx3gmx_configure_pid()

GF_Err tx3gmx_configure_pid ( GF_Filter *  filter,
GF_FilterPid *  pid,
Bool  is_remove 
)

◆ dump_ttxt_header()

void dump_ttxt_header ( FILE *  dump,
GF_Tx3gSampleEntryBox txt_e,
u32  def_width,
u32  def_height 
)

◆ tx3gmx_get_stsd()

static void tx3gmx_get_stsd ( GF_TextSampleDescriptor ent,
GF_Tx3gSampleEntryBox samp_ent,
GF_FontTableBox font_ent 
)
static

◆ dump_ttxt_sample()

void dump_ttxt_sample ( FILE *  dump,
GF_TextSample *  s_txt,
u64  ts,
u32  timescale,
u32  di,
Bool  box_dump 
)

◆ tx3g_format_time()

char * tx3g_format_time ( u64  ts,
u32  timescale,
char *  szDur,
Bool  is_srt 
)

◆ dump_ttxt_sample_srt()

GF_Err dump_ttxt_sample_srt ( FILE *  dump,
GF_TextSample *  txt,
GF_Tx3gSampleEntryBox txtd,
Bool  vtt_dump 
)

◆ dump_ttxt_sample_ttml()

static GF_Err dump_ttxt_sample_ttml ( TX3GMxCtx ctx,
FILE *  dump,
GF_TextSample *  txt,
GF_Tx3gSampleEntryBox txtd,
u64  start_ts,
u64  end_ts 
)
static

◆ tx3gmx_process()

GF_Err tx3gmx_process ( GF_Filter *  filter)

◆ tx3gmx_initialize()

static GF_Err tx3gmx_initialize ( GF_Filter *  filter)
static

◆ tx3gmx_finalize()

static void tx3gmx_finalize ( GF_Filter *  filter)
static

◆ ttxtuf_register()

const GF_FilterRegister * ttxtuf_register ( GF_FilterSession *  session)

◆ tx3g2srt_initialize()

static GF_Err tx3g2srt_initialize ( GF_Filter *  filter)
static

◆ tx3g2srt_register()

const GF_FilterRegister * tx3g2srt_register ( GF_FilterSession *  session)

◆ tx3g2vtt_initialize()

static GF_Err tx3g2vtt_initialize ( GF_Filter *  filter)
static

◆ tx3g2vtt_register()

const GF_FilterRegister * tx3g2vtt_register ( GF_FilterSession *  session)

◆ tx3g2ttml_initialize()

static GF_Err tx3g2ttml_initialize ( GF_Filter *  filter)
static

◆ tx3g2ttml_register()

const GF_FilterRegister * tx3g2ttml_register ( GF_FilterSession *  session)

Variable Documentation

◆ TX3GMxCaps

const GF_FilterCapability TX3GMxCaps[]
static
Initial value:
=
{
{0},
}
@ GF_CODECID_TX3G
Definition constants.h:511
@ GF_CODECID_TEXT_MPEG4
Definition constants.h:387
@ GF_STREAM_TEXT
Definition constants.h:82
#define GF_CAPS_OUTPUT
Definition filters.h:2013
#define CAP_UINT(_f, _a, _b)
Definition filters.h:1955
#define GF_CAPS_INPUT_EXCLUDED
Definition filters.h:2009
#define CAP_BOOL(_f, _a, _b)
Definition filters.h:1963
#define GF_CAPS_INPUT
Definition filters.h:2001
@ GF_PROP_PID_CODECID
Definition filters.h:1020
@ GF_PROP_PID_STREAM_TYPE
Definition filters.h:1016
@ GF_PROP_PID_UNFRAMED
Definition filters.h:1022
@ GF_TRUE
Definition setup.h:435

◆ TX3GMxArgs

const GF_FilterArgs TX3GMxArgs[]
static
Initial value:
=
{
{ OFFS(exporter), "compatibility with old exporter, displays export results", GF_PROP_BOOL, "false", NULL, GF_FS_ARG_HINT_ADVANCED},
{0}
}
@ GF_FS_ARG_HINT_ADVANCED
Definition filters.h:1887
@ GF_PROP_BOOL
Definition filters.h:767
#define OFFS(_n)
Definition write_tx3g.c:549

◆ TTXTMxRegister

GF_FilterRegister TTXTMxRegister
Initial value:
= {
.name = "ufttxt",
.private_size = sizeof(TX3GMxCtx),
.initialize = tx3gmx_initialize,
.finalize = tx3gmx_finalize,
.configure_pid = tx3gmx_configure_pid,
.process = tx3gmx_process
}
#define SETCAPS(__struct)
Definition filters.h:2144
attribute Array args
Definition jsf.idl:24
static const GF_FilterCapability TX3GMxCaps[]
Definition write_tx3g.c:536
static GF_Err tx3gmx_initialize(GF_Filter *filter)
Definition write_tx3g.c:522
static void tx3gmx_finalize(GF_Filter *filter)
Definition write_tx3g.c:529
GF_Err tx3gmx_process(GF_Filter *filter)
Definition write_tx3g.c:397
static const GF_FilterArgs TX3GMxArgs[]
Definition write_tx3g.c:550
GF_Err tx3gmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
Definition write_tx3g.c:61
Definition write_tx3g.c:37

◆ TX3G2SRTCaps

◆ TX3G2SRTRegister

GF_FilterRegister TX3G2SRTRegister
Initial value:
= {
.name = "tx3g2srt",
.private_size = sizeof(TX3GMxCtx),
.initialize = tx3g2srt_initialize,
.finalize = tx3gmx_finalize,
.configure_pid = tx3gmx_configure_pid,
.process = tx3gmx_process
}
static const GF_FilterCapability TX3G2SRTCaps[]
Definition write_tx3g.c:574
static GF_Err tx3g2srt_initialize(GF_Filter *filter)
Definition write_tx3g.c:586

◆ TX3G2VTTCaps

◆ TTX2VTTRegister

GF_FilterRegister TTX2VTTRegister
Initial value:
= {
.name = "tx3g2vtt",
.private_size = sizeof(TX3GMxCtx),
.initialize = tx3g2vtt_initialize,
.finalize = tx3gmx_finalize,
.configure_pid = tx3gmx_configure_pid,
.process = tx3gmx_process
}
static const GF_FilterCapability TX3G2VTTCaps[]
Definition write_tx3g.c:613
static GF_Err tx3g2vtt_initialize(GF_Filter *filter)
Definition write_tx3g.c:625

◆ TX3G2TTMLCaps

◆ TX3G2TTMLRegister

GF_FilterRegister TX3G2TTMLRegister
Initial value:
= {
.name = "tx3g2ttml",
GF_FS_SET_HELP("This filter converts ISOBMFF TX3G stream to a TTML stream.\n"
"\n"
"Each output TTML frame is a complete TTML document.")
.private_size = sizeof(TX3GMxCtx),
.args = NULL,
.initialize = tx3g2ttml_initialize,
.finalize = tx3gmx_finalize,
.configure_pid = tx3gmx_configure_pid,
.process = tx3gmx_process
}
#define GF_FS_SET_HELP(_help)
Definition filters.h:2152
static GF_Err tx3g2ttml_initialize(GF_Filter *filter)
Definition write_tx3g.c:663
static const GF_FilterCapability TX3G2TTMLCaps[]
Definition write_tx3g.c:652