ffprobe: fix CSV writer output
Fix regression introduced in 749ddc14fc
.
This commit is contained in:
@ -218,8 +218,11 @@ If set to 1 specify not to print the section header and footer.
|
|||||||
Default value is 0.
|
Default value is 0.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@section compact
|
@section compact, csv
|
||||||
Compact format.
|
Compact and CSV format.
|
||||||
|
|
||||||
|
The @code{csv} writer is equivalent to @code{compact}, but supports
|
||||||
|
different defaults.
|
||||||
|
|
||||||
Each section is printed on a single line.
|
Each section is printed on a single line.
|
||||||
If no option is specifid, the output has the form:
|
If no option is specifid, the output has the form:
|
||||||
@ -240,14 +243,16 @@ The description of the accepted options follows.
|
|||||||
|
|
||||||
@item item_sep, s
|
@item item_sep, s
|
||||||
Specify the character to use for separating fields in the output line.
|
Specify the character to use for separating fields in the output line.
|
||||||
It must be a single printable character, it is "|" by default.
|
It must be a single printable character, it is "|" by default ("," for
|
||||||
|
the @code{csv} writer).
|
||||||
|
|
||||||
@item nokey, nk
|
@item nokey, nk
|
||||||
If set to 1 specify not to print the key of each field. Its default
|
If set to 1 specify not to print the key of each field. Its default
|
||||||
value is 0.
|
value is 0 (1 for the @code{csv} writer).
|
||||||
|
|
||||||
@item escape, e
|
@item escape, e
|
||||||
Set the escape mode to use, default to "c".
|
Set the escape mode to use, default to "c" ("csv" for the @code{csv}
|
||||||
|
writer).
|
||||||
|
|
||||||
It can assume one of the following values:
|
It can assume one of the following values:
|
||||||
@table @option
|
@table @option
|
||||||
@ -275,12 +280,6 @@ Print the section name at the begin of each line if the value is
|
|||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@section csv
|
|
||||||
CSV format.
|
|
||||||
|
|
||||||
This writer is equivalent to
|
|
||||||
@code{compact=item_sep=,:nokey=1:escape=csv}.
|
|
||||||
|
|
||||||
@section flat
|
@section flat
|
||||||
Flat format.
|
Flat format.
|
||||||
|
|
||||||
|
24
ffprobe.c
24
ffprobe.c
@ -709,22 +709,34 @@ static const Writer compact_writer = {
|
|||||||
|
|
||||||
/* CSV output */
|
/* CSV output */
|
||||||
|
|
||||||
static av_cold int csv_init(WriterContext *wctx, const char *args, void *opaque)
|
#undef OFFSET
|
||||||
{
|
#define OFFSET(x) offsetof(CompactContext, x)
|
||||||
return compact_init(wctx, "item_sep=,:nokey=1:escape=csv", opaque);
|
|
||||||
}
|
static const AVOption csv_options[] = {
|
||||||
|
{"item_sep", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str=","}, CHAR_MIN, CHAR_MAX },
|
||||||
|
{"s", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str=","}, CHAR_MIN, CHAR_MAX },
|
||||||
|
{"nokey", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_INT, {.i64=1}, 0, 1 },
|
||||||
|
{"nk", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_INT, {.i64=1}, 0, 1 },
|
||||||
|
{"escape", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="csv"}, CHAR_MIN, CHAR_MAX },
|
||||||
|
{"e", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="csv"}, CHAR_MIN, CHAR_MAX },
|
||||||
|
{"print_section", "print section name", OFFSET(print_section), AV_OPT_TYPE_INT, {.i64=1}, 0, 1 },
|
||||||
|
{"p", "print section name", OFFSET(print_section), AV_OPT_TYPE_INT, {.i64=1}, 0, 1 },
|
||||||
|
{NULL},
|
||||||
|
};
|
||||||
|
|
||||||
|
DEFINE_WRITER_CLASS(csv);
|
||||||
|
|
||||||
static const Writer csv_writer = {
|
static const Writer csv_writer = {
|
||||||
.name = "csv",
|
.name = "csv",
|
||||||
.priv_size = sizeof(CompactContext),
|
.priv_size = sizeof(CompactContext),
|
||||||
.init = csv_init,
|
.init = compact_init,
|
||||||
.print_section_header = compact_print_section_header,
|
.print_section_header = compact_print_section_header,
|
||||||
.print_section_footer = compact_print_section_footer,
|
.print_section_footer = compact_print_section_footer,
|
||||||
.print_integer = compact_print_int,
|
.print_integer = compact_print_int,
|
||||||
.print_string = compact_print_str,
|
.print_string = compact_print_str,
|
||||||
.show_tags = compact_show_tags,
|
.show_tags = compact_show_tags,
|
||||||
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS,
|
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS,
|
||||||
.priv_class = &compact_class,
|
.priv_class = &csv_class,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Flat output */
|
/* Flat output */
|
||||||
|
Reference in New Issue
Block a user