Frame-level side data attributes are printed with the same key/value
structure as packet-level side data attributes, but this is not
reflected in the XSD.
Fix rendering of int values within a side data element, which was
broken since commit d2d3a83ad9, where the side data element was
correctly marked as a variable fields element. Logic to render a
string variable was implemented already, but it was not implemented
for the int fields path, which was enabled by that commit.
Also, code and schema is changed in order to account for multiple
variable-fields elements - such as side data, contained within the
same parent. Previously it was assumed that a single variable-fields
element was contained within the parent, which was the case for tags,
but is not the case for side-data.
Previously data was rendered as:
<side_data_list>
<side_data side_data_type="CPB properties" max_bitrate="0" min_bitrate="0" avg_bitrate="0" buffer_size="327680" vbv_delay="-1"/>
</side_data_list>
Now as:
<side_data_list>
<side_data type="CPB properties">
<side_datum key="side_data_type" value="CPB properties"/>
<side_datum key="max_bitrate" value="0"/>
<side_datum key="min_bitrate" value="0"/>
<side_datum key="avg_bitrate" value="0"/>
<side_datum key="buffer_size" value="49152"/>
<side_datum key="vbv_delay" value="-1"/>
</side_data>
</side_data_list>
Variable-fields elements are rendered as a containing element wrapping
generic key/values elements, enabling use of strict XML schema.
Fix trac issue:
https://trac.ffmpeg.org/ticket/10613
Remove the unneeded wrapping sequence element. Also the
minOccurs/maxOccurs occurrence indicators on the inner element
definitions can be removed.
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
The FF_API macros are private and must not be used by external callers.
As the fields in question are to be removed without replacement, just
drop them.
The fields are:
AVPacket.convergence_duration
AVCodecContext.time_base
AVCodecContext.timecode_frame_start
AV_PIX_FMT_FLAG_PSEUDOPAL pixel descriptor flag
This partly undoes 7b35a01.
The intent of patch 7b35a01 was to no longer use build_date and
build_time as attributes of programVersion, but the patch also had the
effect of making all records generated with an earlier ffprobe build with
build_date and build_time as invalid.
This patch puts the two attributes back but without mandating their use,
thus older ffprobe records as backwards compatible with the current
schema and their use is no longer required.
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
Adds output of chroma sub-sampling information to
ffprobe -show_pixel_formats option.
Note: This patch just prints the "raw" log2_charoma_w/h values instead
of the previously suggested mapping into a chroma sub-sampling pattern
string like "4:2:2".
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Adds option -show_pixel_formats to ffprobe which lists all
available pixel formats with some details.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This is useful for debugging.
Reference and ffprobe.xsd changes done and tested by Stefano Sabatini.
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>