This is an automated email from the git hooks/post-receive script.
Git pushed a commit to branch master
in repository ffmpeg.
The following commit(s) were added to refs/heads/master by this push:
new 68e78f1826 fftools/ffprobe: make level an optionally print value
68e78f1826 is described below
commit 68e78f1826f30001b8ec018ac9d95fa6836fd606
Author: James Almer <[email protected]>
AuthorDate: Sun Sep 27 21:04:15 2026 -0300
Commit: James Almer <[email protected]>
CommitDate: Mon Sep 28 01:19:30 2026 +0000
fftools/ffprobe: make level an optionally print value
Same as profile, if it's unknown, don't print it.
It makes even more sense here given it's not a string, and ffprobe is
printing a "-99" which means nothing to a casual reader.
Signed-off-by: James Almer <[email protected]>
---
fftools/ffprobe.c | 6 +++++-
tests/ref/fate/ffprobe_json | 3 ---
tests/ref/fate/ffprobe_xml | 6 +++---
tests/ref/fate/ffprobe_xsd | 6 +++---
4 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c
index f998bd05fb..55a7ebf84b 100644
--- a/fftools/ffprobe.c
+++ b/fftools/ffprobe.c
@@ -448,6 +448,7 @@ static void log_callback(void *ptr, int level, const char
*fmt, va_list vl)
} while (0)
#define print_int(k, v) avtext_print_integer(tfc, k, v, 0)
+#define print_int_opt(k, v) avtext_print_integer(tfc, k, v,
AV_TEXTFORMAT_PRINT_STRING_OPTIONAL)
#define print_q(k, v, s) avtext_print_rational(tfc, k, v, s)
#define print_str(k, v) avtext_print_string(tfc, k, v, 0)
#define print_str_opt(k, v) avtext_print_string(tfc, k, v,
AV_TEXTFORMAT_PRINT_STRING_OPTIONAL)
@@ -1923,7 +1924,10 @@ static int show_stream(AVTextFormatContext *tfc,
AVFormatContext *fmt_ctx, int s
} else
print_str_opt("profile", "unknown");
}
- print_int("level", par->level);
+ if (par->level != AV_LEVEL_UNKNOWN)
+ print_int("level", par->level);
+ else
+ print_int_opt("level", par->level);
s = av_get_media_type_string(par->codec_type);
if (s) print_str ("codec_type", s);
diff --git a/tests/ref/fate/ffprobe_json b/tests/ref/fate/ffprobe_json
index 34f6f71274..83699510b8 100644
--- a/tests/ref/fate/ffprobe_json
+++ b/tests/ref/fate/ffprobe_json
@@ -547,7 +547,6 @@
{
"index": 0,
"codec_name": "pcm_s16le",
- "level": -99,
"codec_type": "audio",
"codec_tag_string": "PSD[16]",
"codec_tag": "0x10445350",
@@ -593,7 +592,6 @@
{
"index": 1,
"codec_name": "rawvideo",
- "level": -99,
"codec_type": "video",
"codec_tag_string": "RGB[24]",
"codec_tag": "0x18424752",
@@ -643,7 +641,6 @@
{
"index": 2,
"codec_name": "rawvideo",
- "level": -99,
"codec_type": "video",
"codec_tag_string": "RGB[24]",
"codec_tag": "0x18424752",
diff --git a/tests/ref/fate/ffprobe_xml b/tests/ref/fate/ffprobe_xml
index 3ee2895eaa..ba922711f4 100644
--- a/tests/ref/fate/ffprobe_xml
+++ b/tests/ref/fate/ffprobe_xml
@@ -32,14 +32,14 @@
</packets_and_frames>
<streams>
- <stream index="0" codec_name="pcm_s16le" level="-99"
codec_type="audio" codec_tag_string="PSD[16]" codec_tag="0x10445350"
sample_fmt="s16" sample_rate="44100" channels="1" bits_per_sample="16"
initial_padding="0" r_frame_rate="0/0" avg_frame_rate="0/0" time_base="1/44100"
start_pts="0" start_time="0.000000" bit_rate="705600" nb_read_frames="6"
nb_read_packets="6">
+ <stream index="0" codec_name="pcm_s16le" codec_type="audio"
codec_tag_string="PSD[16]" codec_tag="0x10445350" sample_fmt="s16"
sample_rate="44100" channels="1" bits_per_sample="16" initial_padding="0"
r_frame_rate="0/0" avg_frame_rate="0/0" time_base="1/44100" start_pts="0"
start_time="0.000000" bit_rate="705600" nb_read_frames="6" nb_read_packets="6">
<disposition default="0" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc pcm_s16le"/>
<tag key="E" value="mc²"/>
</tags>
</stream>
- <stream index="1" codec_name="rawvideo" level="-99" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="320" height="240"
coded_width="320" coded_height="240" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="4:3" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
+ <stream index="1" codec_name="rawvideo" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="320" height="240"
coded_width="320" coded_height="240" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="4:3" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
<disposition default="1" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc rawvideo"/>
@@ -47,7 +47,7 @@
<tag key="duration_ts"
value="field-and-tags-conflict-attempt"/>
</tags>
</stream>
- <stream index="2" codec_name="rawvideo" level="-99" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="100" height="100"
coded_width="100" coded_height="100" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="1:1" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
+ <stream index="2" codec_name="rawvideo" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="100" height="100"
coded_width="100" coded_height="100" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="1:1" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
<disposition default="0" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc rawvideo"/>
diff --git a/tests/ref/fate/ffprobe_xsd b/tests/ref/fate/ffprobe_xsd
index 980f8fd93b..faeeaccadc 100644
--- a/tests/ref/fate/ffprobe_xsd
+++ b/tests/ref/fate/ffprobe_xsd
@@ -32,14 +32,14 @@
</packets_and_frames>
<streams>
- <stream index="0" codec_name="pcm_s16le" level="-99"
codec_type="audio" codec_tag_string="PSD[16]" codec_tag="0x10445350"
sample_fmt="s16" sample_rate="44100" channels="1" bits_per_sample="16"
initial_padding="0" r_frame_rate="0/0" avg_frame_rate="0/0" time_base="1/44100"
start_pts="0" start_time="0.000000" bit_rate="705600" nb_read_frames="6"
nb_read_packets="6">
+ <stream index="0" codec_name="pcm_s16le" codec_type="audio"
codec_tag_string="PSD[16]" codec_tag="0x10445350" sample_fmt="s16"
sample_rate="44100" channels="1" bits_per_sample="16" initial_padding="0"
r_frame_rate="0/0" avg_frame_rate="0/0" time_base="1/44100" start_pts="0"
start_time="0.000000" bit_rate="705600" nb_read_frames="6" nb_read_packets="6">
<disposition default="0" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc pcm_s16le"/>
<tag key="E" value="mc²"/>
</tags>
</stream>
- <stream index="1" codec_name="rawvideo" level="-99" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="320" height="240"
coded_width="320" coded_height="240" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="4:3" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
+ <stream index="1" codec_name="rawvideo" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="320" height="240"
coded_width="320" coded_height="240" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="4:3" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
<disposition default="1" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc rawvideo"/>
@@ -47,7 +47,7 @@
<tag key="duration_ts"
value="field-and-tags-conflict-attempt"/>
</tags>
</stream>
- <stream index="2" codec_name="rawvideo" level="-99" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="100" height="100"
coded_width="100" coded_height="100" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="1:1" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
+ <stream index="2" codec_name="rawvideo" codec_type="video"
codec_tag_string="RGB[24]" codec_tag="0x18424752" width="100" height="100"
coded_width="100" coded_height="100" has_b_frames="0" sample_aspect_ratio="1:1"
display_aspect_ratio="1:1" pix_fmt="rgb24" refs="1" r_frame_rate="25/1"
avg_frame_rate="25/1" time_base="1/51200" start_pts="0" start_time="0.000000"
nb_read_frames="4" nb_read_packets="4">
<disposition default="0" dub="0" original="0" comment="0"
lyrics="0" karaoke="0" forced="0" hearing_impaired="0" visual_impaired="0"
clean_effects="0" attached_pic="0" timed_thumbnails="0" non_diegetic="0"
captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"
multilayer="0"/>
<tags>
<tag key="encoder" value="Lavc rawvideo"/>
--
To stop receiving notification emails like this one, please contact
[email protected].
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]