Exemple #1
0
/* dump metadata from a FLV file */
int dump_metadata(const flvmeta_opts * options) {
    int retval;
    flv_parser parser;
    memset(&parser, 0, sizeof(flv_parser));
    parser.user_data = (void*)options;

    switch (options->dump_format) {
        case FLVMETA_FORMAT_JSON:
            dump_json_setup_metadata_dump(&parser);
            break;
        case FLVMETA_FORMAT_RAW:
            dump_raw_setup_metadata_dump(&parser);
            break;
        case FLVMETA_FORMAT_XML:
            dump_xml_setup_metadata_dump(&parser);
            break;
        case FLVMETA_FORMAT_YAML:
            dump_yaml_setup_metadata_dump(&parser);
            break;
    }

    retval = flv_parse(options->input_file, &parser);
    if (retval == FLVMETA_DUMP_STOP_OK) {
        retval = FLV_OK;
    }

    return retval;
}
int dump_raw_file(flv_parser * parser, const flvmeta_opts * options) {
    parser->on_header = raw_on_header;
    parser->on_tag = raw_on_tag;
    parser->on_audio_tag = raw_on_audio_tag;
    parser->on_video_tag = raw_on_video_tag;
    parser->on_metadata_tag = raw_on_metadata_tag;
    parser->on_prev_tag_size = raw_on_prev_tag_size;
    parser->on_stream_end = raw_on_stream_end;
    
    return flv_parse(options->input_file, parser);
}
Exemple #3
0
int dump_json_file(flv_parser * parser, const flvmeta_opts * options) {
    json_emitter je;

    parser->on_header = json_on_header;
    parser->on_tag = json_on_tag;
    parser->on_audio_tag = json_on_audio_tag;
    parser->on_video_tag = json_on_video_tag;
    parser->on_metadata_tag = json_on_metadata_tag;
    parser->on_prev_tag_size = json_on_prev_tag_size;
    parser->on_stream_end = json_on_stream_end;

    json_emit_init(&je);
    parser->user_data = &je;

    return flv_parse(options->input_file, parser);
}
Exemple #4
0
/* dump the full contents of an FLV file */
int dump_flv_file(const flvmeta_opts * options) {
    flv_parser parser;
    memset(&parser, 0, sizeof(flv_parser));

    switch (options->dump_format) {
        case FLVMETA_FORMAT_JSON:
            dump_json_setup_file_dump(&parser);
            break;
        case FLVMETA_FORMAT_RAW:
            dump_raw_setup_file_dump(&parser);
            break;
        case FLVMETA_FORMAT_XML:
            dump_xml_setup_file_dump(&parser);
            break;
        case FLVMETA_FORMAT_YAML:
            dump_yaml_setup_file_dump(&parser);
            break;
    }

    return flv_parse(options->input_file, &parser);
}