static int xml_on_tag(flv_tag * tag, flv_parser * parser) { printf(" <tag type=\"%s\" timestamp=\"%i\" dataSize=\"%i\"", dump_string_get_tag_type(tag), flv_tag_get_timestamp(*tag), flv_tag_get_body_length(*tag)); printf(" offset=\"%" FILE_OFFSET_PRINTF_FORMAT "i\">\n", parser->stream->current_tag_offset); return OK; }
static int raw_on_tag(flv_tag * tag, flv_parser * parser) { int * n; /* increment current tag number */ n = ((int*)parser->user_data); ++(*n); printf("--- Tag #%u at 0x%" FILE_OFFSET_PRINTF_FORMAT "X", *n, parser->stream->current_tag_offset); printf(" (%" FILE_OFFSET_PRINTF_FORMAT "i) ---\n", parser->stream->current_tag_offset); printf("Tag type: %s\n", dump_string_get_tag_type(tag)); printf("Body length: %u\n", flv_tag_get_body_length(*tag)); printf("Timestamp: %u\n", flv_tag_get_timestamp(*tag)); return OK; }
static int json_on_tag(flv_tag * tag, flv_parser * parser) { json_emitter * je; je = (json_emitter*)parser->user_data; json_emit_object_start(je); json_emit_object_key_z(je, "type"); json_emit_string_z(je, dump_string_get_tag_type(tag)); json_emit_object_key_z(je, "timestamp"); json_emit_integer(je, flv_tag_get_timestamp(*tag)); json_emit_object_key_z(je, "dataSize"); json_emit_integer(je, flv_tag_get_body_length(*tag)); json_emit_object_key_z(je, "offset"); json_emit_file_offset(je, parser->stream->current_tag_offset); return OK; }
static int json_on_tag(flv_tag * tag, flv_parser * parser) { if (parser->user_data != NULL) { printf(","); } else { parser->user_data = tag; } printf("{\"type\":\"%s\",\"timestamp\":%i,\"dataSize\":%i", dump_string_get_tag_type(tag), flv_tag_get_timestamp(*tag), flv_tag_get_body_length(*tag)); printf(",\"offset\":%" FILE_OFFSET_PRINTF_FORMAT "i,", parser->stream->current_tag_offset); return OK; }