WEBVTT_EXPORT void webvtt_ref_cue( webvtt_cue *cue ) { if( cue ) { webvtt_ref( &cue->refs ); } }
WEBVTT_EXPORT void webvtt_ref_node( webvtt_node *node ) { if( node ) { webvtt_ref( &node->refs ); } }
WEBVTT_EXPORT webvtt_status webvtt_create_cue( webvtt_cue **pcue ) { webvtt_cue *cue; if( !pcue ) { return WEBVTT_INVALID_PARAM; } cue = (webvtt_cue *)webvtt_alloc0( sizeof(*cue) ); if( !cue ) { return WEBVTT_OUT_OF_MEMORY; } /** * From http://dev.w3.org/html5/webvtt/#parsing (10/25/2012) * * Let cue's text track cue snap-to-lines flag be true. * * Let cue's text track cue line position be auto. * * Let cue's text track cue text position be 50. * * Let cue's text track cue size be 100. * * Let cue's text track cue alignment be middle alignment. */ webvtt_ref( &cue->refs ); webvtt_init_string( &cue->id ); webvtt_init_string( &cue->body ); cue->from = 0xFFFFFFFFFFFFFFFF; cue->until = 0xFFFFFFFFFFFFFFFF; cue->snap_to_lines = 1; cue->settings.position = 50; cue->settings.size = 100; cue->settings.align = WEBVTT_ALIGN_MIDDLE; cue->settings.line = WEBVTT_AUTO; cue->settings.vertical = WEBVTT_HORIZONTAL; *pcue = cue; return WEBVTT_SUCCESS; }