ffprobe: Rename Audio Service Type 'type' field to 'service_type'
677a030b26
introduced more printable
side data types in ffprobe, however the Audio Service Type side data
'type' field that was introduced aliases an existing field of the same
name within the side data array, which can lead to JSON output like:
"side_data_list": [
{
"side_data_type": "Audio Service Type",
"type": 0
},
{
"side_data_type": "Stereo 3D",
"type": "side by side",
"inverted": 1
}
]
This, while technically valid JSON, is considered bad practice, since it
forces all downstream users to manually parse it and check all types;
it makes simple deserialization impossible. Worse, in som loosely
type languages, it can lead to silent bugs if exising code assumed
it was a different type.
As such, rename this second "type" field to "service_type".
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
This commit is contained in:
@ -2032,7 +2032,7 @@ static void print_pkt_side_data(WriterContext *w,
|
|||||||
print_int("dv_bl_signal_compatibility_id", dovi->dv_bl_signal_compatibility_id);
|
print_int("dv_bl_signal_compatibility_id", dovi->dv_bl_signal_compatibility_id);
|
||||||
} else if (sd->type == AV_PKT_DATA_AUDIO_SERVICE_TYPE) {
|
} else if (sd->type == AV_PKT_DATA_AUDIO_SERVICE_TYPE) {
|
||||||
enum AVAudioServiceType *t = (enum AVAudioServiceType *)sd->data;
|
enum AVAudioServiceType *t = (enum AVAudioServiceType *)sd->data;
|
||||||
print_int("type", *t);
|
print_int("service_type", *t);
|
||||||
} else if (sd->type == AV_PKT_DATA_MPEGTS_STREAM_ID) {
|
} else if (sd->type == AV_PKT_DATA_MPEGTS_STREAM_ID) {
|
||||||
print_int("id", *sd->data);
|
print_int("id", *sd->data);
|
||||||
} else if (sd->type == AV_PKT_DATA_CPB_PROPERTIES) {
|
} else if (sd->type == AV_PKT_DATA_CPB_PROPERTIES) {
|
||||||
|
@ -5,6 +5,6 @@ channels=6
|
|||||||
channel_layout=5.1(side)
|
channel_layout=5.1(side)
|
||||||
[SIDE_DATA]
|
[SIDE_DATA]
|
||||||
side_data_type=Audio Service Type
|
side_data_type=Audio Service Type
|
||||||
type=0
|
service_type=0
|
||||||
[/SIDE_DATA]
|
[/SIDE_DATA]
|
||||||
[/STREAM]
|
[/STREAM]
|
||||||
|
Reference in New Issue
Block a user