Example #1
0
void writedata(const unsigned char *data, int length, ccx_decoder_608_context *context, struct cc_subtitle *sub)
{
    // Don't do anything for empty data
    if (data==NULL)
        return;

    if (ccx_options.write_format==CCX_OF_RAW || ccx_options.write_format==CCX_OF_DVDRAW)
	{
		if (context && context->out)
			writeraw (data,length,context->out);
	}
    else if (ccx_options.write_format==CCX_OF_SMPTETT ||
             ccx_options.write_format==CCX_OF_SAMI ||
             ccx_options.write_format==CCX_OF_SRT ||
             ccx_options.write_format==CCX_OF_TRANSCRIPT ||
             ccx_options.write_format==CCX_OF_SPUPNG ||
			 ccx_options.write_format==CCX_OF_NULL)
        process608 (data,length,context, sub);
    else
		fatal(CCX_COMMON_EXIT_BUG_BUG, "Should not be reached!");
}
Example #2
0
void writedata (const unsigned char *data, int length, struct s_write *wb)
{
    // Don't do anything for empty data
    if (data==NULL)
        return;

    if (write_format==OF_RAW)
	{
		if (wb)
			writeraw (data,length,wb);
	}
    else if (write_format==OF_SMPTETT || 
             write_format==OF_SAMI ||
             write_format==OF_SRT ||
             write_format==OF_TRANSCRIPT ||
#ifdef HAVE_LIBPNG
             write_format==OF_SPUPNG ||
#endif
			 write_format==OF_NULL)
        process608 (data,length,wb);
    else
        fatal(EXIT_BUG_BUG, "Should not be reached!");
}