[FFmpeg-devel] [PATCH] ffprobe: fix XML rendering, review XML layout

Timo Rothenpieler timo at rothenpieler.org
Sun Oct 15 04:09:14 EEST 2023


On 14.10.2023 19:24, Stefano Sabatini wrote:
> Fix rendering of int values within a side data element, which was
> broken since commit d2d3a83ad93, 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>

Isn't a change like that practically an ABI break, and thus would need 
to happen on a major bump?

Alternatively, just leave the old fields as they were, they looks like 
they can coexist with the new ones. At least XML wise.


More information about the ffmpeg-devel mailing list