History

avcodec: add a Film Grain codec property flag

James Almer committed 5 years ago

Commit 590a7e01 parent 6dd714919 files · +31 −15Browse files

Unified · Split

19 files
  1. doc/APIchanges +3 −0
  2. doc/ffprobe.xsd +1 −0
  3. fftools/ffprobe.c +1 −0
  4. libavcodec/avcodec.c +2 −0
  5. libavcodec/avcodec.h +1 −0
  6. libavcodec/version.h +2 −2
  7. tests/ref/fate/concat-demuxer-extended-lavf-mxf +1 −1
  8. tests/ref/fate/concat-demuxer-extended-lavf-mxf_d10 +1 −1
  9. tests/ref/fate/concat-demuxer-simple1-lavf-mxf +1 −1
  10. tests/ref/fate/concat-demuxer-simple1-lavf-mxf_d10 +1 −1
  11. tests/ref/fate/concat-demuxer-simple2-lavf-ts +1 −1
  12. tests/ref/fate/ffprobe_compact +2 −2
  13. tests/ref/fate/ffprobe_csv +2 −2
  14. tests/ref/fate/ffprobe_default +2 −0
  15. tests/ref/fate/ffprobe_flat +2 −0
  16. tests/ref/fate/ffprobe_ini +2 −0
  17. tests/ref/fate/ffprobe_json +2 −0
  18. tests/ref/fate/ffprobe_xml +2 −2
  19. tests/ref/fate/ffprobe_xsd +2 −2
doc/APIchanges+3−0
@@ -14,6 +14,9 @@ libavutil: 2021-04-27 · 13 unmodified lines
14 14
15API changes, most recent first:15API changes, most recent first:
16 16
172021-08-24 - xxxxxxxxxx - lavc 59.6.100 - avcodec.h
18 Add FF_CODEC_PROPERTY_FILM_GRAIN
19
172021-08-20 - xxxxxxxxxx - lavfi 8.3.100 - avfilter.H202021-08-20 - xxxxxxxxxx - lavfi 8.3.100 - avfilter.H
18 Add avfilter_filter_pad_count() as a replacement for avfilter_pad_count().21 Add avfilter_filter_pad_count() as a replacement for avfilter_pad_count().
19 Deprecate avfilter_pad_count().22 Deprecate avfilter_pad_count().
doc/ffprobe.xsd+1−0
@@ -223,6 +223,7 @@ · 222 unmodified lines
223 <xsd:attribute name="coded_width" type="xsd:int"/>223 <xsd:attribute name="coded_width" type="xsd:int"/>
224 <xsd:attribute name="coded_height" type="xsd:int"/>224 <xsd:attribute name="coded_height" type="xsd:int"/>
225 <xsd:attribute name="closed_captions" type="xsd:boolean"/>225 <xsd:attribute name="closed_captions" type="xsd:boolean"/>
226 <xsd:attribute name="film_grain" type="xsd:boolean"/>
226 <xsd:attribute name="has_b_frames" type="xsd:int"/>227 <xsd:attribute name="has_b_frames" type="xsd:int"/>
227 <xsd:attribute name="sample_aspect_ratio" type="xsd:string"/>228 <xsd:attribute name="sample_aspect_ratio" type="xsd:string"/>
228 <xsd:attribute name="display_aspect_ratio" type="xsd:string"/>229 <xsd:attribute name="display_aspect_ratio" type="xsd:string"/>
fftools/ffprobe.c+1−0
@@ -2656,6 +2656,7 @@ static int show_stream(WriterContext *w, AVFormatContext *fmt_ctx, int stream_id · 2655 unmodified lines
2656 print_int("coded_width", dec_ctx->coded_width);2656 print_int("coded_width", dec_ctx->coded_width);
2657 print_int("coded_height", dec_ctx->coded_height);2657 print_int("coded_height", dec_ctx->coded_height);
2658 print_int("closed_captions", !!(dec_ctx->properties & FF_CODEC_PROPERTY_CLOSED_CAPTIONS));2658 print_int("closed_captions", !!(dec_ctx->properties & FF_CODEC_PROPERTY_CLOSED_CAPTIONS));
2659 print_int("film_grain", !!(dec_ctx->properties & FF_CODEC_PROPERTY_FILM_GRAIN));
2659 }2660 }
2660 print_int("has_b_frames", par->video_delay);2661 print_int("has_b_frames", par->video_delay);
2661 sar = av_guess_sample_aspect_ratio(fmt_ctx, stream, NULL);2662 sar = av_guess_sample_aspect_ratio(fmt_ctx, stream, NULL);
libavcodec/avcodec.c+2−0
@@ -658,6 +658,8 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) · 657 unmodified lines
658 } else {658 } else {
659 if (enc->properties & FF_CODEC_PROPERTY_CLOSED_CAPTIONS)659 if (enc->properties & FF_CODEC_PROPERTY_CLOSED_CAPTIONS)
660 av_bprintf(&bprint, ", Closed Captions");660 av_bprintf(&bprint, ", Closed Captions");
661 if (enc->properties & FF_CODEC_PROPERTY_FILM_GRAIN)
662 av_bprintf(&bprint, ", Film Grain");
661 if (enc->properties & FF_CODEC_PROPERTY_LOSSLESS)663 if (enc->properties & FF_CODEC_PROPERTY_LOSSLESS)
662 av_bprintf(&bprint, ", lossless");664 av_bprintf(&bprint, ", lossless");
663 }665 }
libavcodec/avcodec.h+1−0
@@ -1818,6 +1818,7 @@ typedef struct AVCodecContext { · 1817 unmodified lines
1818 unsigned properties;1818 unsigned properties;
1819#define FF_CODEC_PROPERTY_LOSSLESS 0x000000011819#define FF_CODEC_PROPERTY_LOSSLESS 0x00000001
1820#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x000000021820#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002
1821#define FF_CODEC_PROPERTY_FILM_GRAIN 0x00000004
1821 1822
1822 /**1823 /**
1823 * Additional data associated with the entire coded stream.1824 * Additional data associated with the entire coded stream.
libavcodec/version.h+2−2
@@ -28,8 +28,8 @@ · 27 unmodified lines
28#include "libavutil/version.h"28#include "libavutil/version.h"
29 29
30#define LIBAVCODEC_VERSION_MAJOR 5930#define LIBAVCODEC_VERSION_MAJOR 59
31#define LIBAVCODEC_VERSION_MINOR 531#define LIBAVCODEC_VERSION_MINOR 6
32#define LIBAVCODEC_VERSION_MICRO 10132#define LIBAVCODEC_VERSION_MICRO 100
33 33
34#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \34#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
35 LIBAVCODEC_VERSION_MINOR, \35 LIBAVCODEC_VERSION_MINOR, \
tests/ref/fate/concat-demuxer-extended-lavf-mxf+1−1
@@ -1 +1 @@
1a4f7db152b5797dcd93347071c739f35 *tests/data/fate/concat-demuxer-extended-lavf-mxf.ffprobe10ea04f40869068b282a67e5b8f2a6127 *tests/data/fate/concat-demuxer-extended-lavf-mxf.ffprobe
tests/ref/fate/concat-demuxer-extended-lavf-mxf_d10+1−1
@@ -1 +1 @@
18798f6a26cac39bb0eb37420fc0e2a10 *tests/data/fate/concat-demuxer-extended-lavf-mxf_d10.ffprobe188abe27eddff160aafd622ed02c26eb6 *tests/data/fate/concat-demuxer-extended-lavf-mxf_d10.ffprobe
tests/ref/fate/concat-demuxer-simple1-lavf-mxf+1−1
@@ -120,5 +120,5 @@ audio|1|65280|1.360000|65280|1.360000|1920|0.040000|3840|207872|K_|1 · 119 unmodified lines
120Strings Metadata120Strings Metadata
121video|0|37|1.480000|34|1.360000|1|0.040000|24786|212480|K_|1121video|0|37|1.480000|34|1.360000|1|0.040000|24786|212480|K_|1
122Strings Metadata122Strings Metadata
1230|mpeg2video|4|video|[0][0][0][0]|0x0000|352|288|0|0|0|1|1:1|11:9|yuv420p|8|tv|unknown|unknown|unknown|left|progressive|1|N/A|25/1|25/1|1/25|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|51|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D0013000000000000000000000000000000000000011230|mpeg2video|4|video|[0][0][0][0]|0x0000|352|288|0|0|0|0|1|1:1|11:9|yuv420p|8|tv|unknown|unknown|unknown|left|progressive|1|N/A|25/1|25/1|1/25|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|51|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001
1241|pcm_s16le|unknown|audio|[0][0][0][0]|0x0000|s16|48000|1|unknown|16|N/A|0/0|0/0|1/48000|0|0.000000|N/A|N/A|768000|N/A|N/A|N/A|N/A|50|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D0013000000000000000000000000000000000000011241|pcm_s16le|unknown|audio|[0][0][0][0]|0x0000|s16|48000|1|unknown|16|N/A|0/0|0/0|1/48000|0|0.000000|N/A|N/A|768000|N/A|N/A|N/A|N/A|50|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001
tests/ref/fate/concat-demuxer-simple1-lavf-mxf_d10+1−1
@@ -78,5 +78,5 @@ video|0|34|1.360000|34|1.360000|1|0.040000|150000|1924096|K_|1 · 77 unmodified lines
78Strings Metadata78Strings Metadata
79audio|1|65280|1.360000|65280|1.360000|1920|0.040000|7680|2074624|K_|179audio|1|65280|1.360000|65280|1.360000|1920|0.040000|7680|2074624|K_|1
80Strings Metadata80Strings Metadata
810|mpeg2video|0|video|[0][0][0][0]|0x0000|720|608|0|0|0|0|1:1|45:38|yuv422p|5|tv|unknown|unknown|unknown|topleft|tb|1|N/A|25/1|25/1|1/25|0|0.000000|N/A|N/A|30000000|N/A|N/A|N/A|N/A|35|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001810|mpeg2video|0|video|[0][0][0][0]|0x0000|720|608|0|0|0|0|0|1:1|45:38|yuv422p|5|tv|unknown|unknown|unknown|topleft|tb|1|N/A|25/1|25/1|1/25|0|0.000000|N/A|N/A|30000000|N/A|N/A|N/A|N/A|35|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001
821|pcm_s16le|unknown|audio|[0][0][0][0]|0x0000|s16|48000|2|unknown|16|N/A|0/0|0/0|1/48000|0|0.000000|N/A|N/A|1536000|N/A|N/A|N/A|N/A|35|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001821|pcm_s16le|unknown|audio|[0][0][0][0]|0x0000|s16|48000|2|unknown|16|N/A|0/0|0/0|1/48000|0|0.000000|N/A|N/A|1536000|N/A|N/A|N/A|N/A|35|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0x060A2B340101010501010D001300000000000000000000000000000000000001
tests/ref/fate/concat-demuxer-simple2-lavf-ts+1−1
@@ -212,4 +212,4 @@ video|1|171982|1.910911|168382|1.870911|3600|0.040000|17440|206988|__MPEGTS Stre · 211 unmodified lines
212video|1|175582|1.950911|171982|1.910911|3600|0.040000|15019|224848|__MPEGTS Stream ID|224212video|1|175582|1.950911|171982|1.910911|3600|0.040000|15019|224848|__MPEGTS Stream ID|224
213 213
2140|mp2|unknown|audio|[3][0][0][0]|0x0003|s16p|44100|1|mono|0|N/A|0/0|0/0|1/90000|0|0.000000|N/A|N/A|64000|N/A|N/A|N/A|N/A|89|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|02140|mp2|unknown|audio|[3][0][0][0]|0x0003|s16p|44100|1|mono|0|N/A|0/0|0/0|1/90000|0|0.000000|N/A|N/A|64000|N/A|N/A|N/A|N/A|89|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0
2151|mpeg2video|4|video|[2][0][0][0]|0x0002|352|288|0|0|0|1|1:1|11:9|yuv420p|8|tv|unknown|unknown|unknown|left|progressive|1|N/A|25/1|25/1|1/90000|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|60|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|02151|mpeg2video|4|video|[2][0][0][0]|0x0002|352|288|0|0|0|0|1|1:1|11:9|yuv420p|8|tv|unknown|unknown|unknown|left|progressive|1|N/A|25/1|25/1|1/90000|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|N/A|60|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0
tests/ref/fate/ffprobe_compact+2−2
@@ -27,6 +27,6 @@ frame|media_type=video|stream_index=1|key_frame=1|pts=6144|pts_time=0.120000|pkt · 26 unmodified lines
27packet|codec_type=video|stream_index=2|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=30000|pos=1023544|flags=K_27packet|codec_type=video|stream_index=2|pts=6144|pts_time=0.120000|dts=6144|dts_time=0.120000|duration=2048|duration_time=0.040000|size=30000|pos=1023544|flags=K_
28frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|pkt_duration=2048|pkt_duration_time=0.040000|pkt_pos=1023544|pkt_size=30000|width=100|height=100|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified28frame|media_type=video|stream_index=2|key_frame=1|pts=6144|pts_time=0.120000|pkt_dts=6144|pkt_dts_time=0.120000|best_effort_timestamp=6144|best_effort_timestamp_time=0.120000|pkt_duration=2048|pkt_duration_time=0.040000|pkt_pos=1023544|pkt_size=30000|width=100|height=100|pix_fmt=rgb24|sample_aspect_ratio=1:1|pict_type=I|coded_picture_number=0|display_picture_number=0|interlaced_frame=0|top_field_first=0|repeat_pict=0|color_range=unknown|color_space=unknown|color_primaries=unknown|color_transfer=unknown|chroma_location=unspecified
29stream|index=0|codec_name=pcm_s16le|profile=unknown|codec_type=audio|codec_tag_string=PSD[16]|codec_tag=0x10445350|sample_fmt=s16|sample_rate=44100|channels=1|channel_layout=unknown|bits_per_sample=16|id=N/A|r_frame_rate=0/0|avg_frame_rate=0/0|time_base=1/44100|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=705600|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=6|nb_read_packets=6|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:E=mc²|tag:encoder=Lavc pcm_s16le29stream|index=0|codec_name=pcm_s16le|profile=unknown|codec_type=audio|codec_tag_string=PSD[16]|codec_tag=0x10445350|sample_fmt=s16|sample_rate=44100|channels=1|channel_layout=unknown|bits_per_sample=16|id=N/A|r_frame_rate=0/0|avg_frame_rate=0/0|time_base=1/44100|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=705600|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=6|nb_read_packets=6|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:E=mc²|tag:encoder=Lavc pcm_s16le
30stream|index=1|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=320|height=240|coded_width=320|coded_height=240|closed_captions=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=4:3|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:title=foobar|tag:duration_ts=field-and-tags-conflict-attempt|tag:encoder=Lavc rawvideo30stream|index=1|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=320|height=240|coded_width=320|coded_height=240|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=4:3|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:title=foobar|tag:duration_ts=field-and-tags-conflict-attempt|tag:encoder=Lavc rawvideo
31stream|index=2|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=100|height=100|coded_width=100|coded_height=100|closed_captions=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=1:1|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:encoder=Lavc rawvideo31stream|index=2|codec_name=rawvideo|profile=unknown|codec_type=video|codec_tag_string=RGB[24]|codec_tag=0x18424752|width=100|height=100|coded_width=100|coded_height=100|closed_captions=0|film_grain=0|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=1:1|pix_fmt=rgb24|level=-99|color_range=unknown|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=unspecified|field_order=unknown|refs=1|id=N/A|r_frame_rate=25/1|avg_frame_rate=25/1|time_base=1/51200|start_pts=0|start_time=0.000000|duration_ts=N/A|duration=N/A|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=4|nb_read_packets=4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|tag:encoder=Lavc rawvideo
32format|filename=tests/data/ffprobe-test.nut|nb_streams=3|nb_programs=0|format_name=nut|start_time=0.000000|duration=0.120000|size=1053624|bit_rate=70241600|probe_score=100|tag:title=ffprobe test file|tag:comment='A comment with CSV, XML & JSON special chars': <tag value="x">|tag:comment2=I ♥ Üñîçød€32format|filename=tests/data/ffprobe-test.nut|nb_streams=3|nb_programs=0|format_name=nut|start_time=0.000000|duration=0.120000|size=1053624|bit_rate=70241600|probe_score=100|tag:title=ffprobe test file|tag:comment='A comment with CSV, XML & JSON special chars': <tag value="x">|tag:comment2=I ♥ Üñîçød€
tests/ref/fate/ffprobe_csv+2−2
@@ -27,6 +27,6 @@ frame,video,1,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,793120,2 · 26 unmodified lines
27packet,video,2,6144,0.120000,6144,0.120000,2048,0.040000,30000,1023544,K_27packet,video,2,6144,0.120000,6144,0.120000,2048,0.040000,30000,1023544,K_
28frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,1023544,30000,100,100,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified28frame,video,2,1,6144,0.120000,6144,0.120000,6144,0.120000,2048,0.040000,1023544,30000,100,100,rgb24,1:1,I,0,0,0,0,0,unknown,unknown,unknown,unknown,unspecified
29stream,0,pcm_s16le,unknown,audio,PSD[16],0x10445350,s16,44100,1,unknown,16,N/A,0/0,0/0,1/44100,0,0.000000,N/A,N/A,705600,N/A,N/A,N/A,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,mc²,Lavc pcm_s16le29stream,0,pcm_s16le,unknown,audio,PSD[16],0x10445350,s16,44100,1,unknown,16,N/A,0/0,0/0,1/44100,0,0.000000,N/A,N/A,705600,N/A,N/A,N/A,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,mc²,Lavc pcm_s16le
30stream,1,rawvideo,unknown,video,RGB[24],0x18424752,320,240,320,240,0,0,1:1,4:3,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,foobar,field-and-tags-conflict-attempt,Lavc rawvideo30stream,1,rawvideo,unknown,video,RGB[24],0x18424752,320,240,320,240,0,0,0,1:1,4:3,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,foobar,field-and-tags-conflict-attempt,Lavc rawvideo
31stream,2,rawvideo,unknown,video,RGB[24],0x18424752,100,100,100,100,0,0,1:1,1:1,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Lavc rawvideo31stream,2,rawvideo,unknown,video,RGB[24],0x18424752,100,100,100,100,0,0,0,1:1,1:1,rgb24,-99,unknown,unknown,unknown,unknown,unspecified,unknown,1,N/A,25/1,25/1,1/51200,0,0.000000,N/A,N/A,N/A,N/A,N/A,N/A,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Lavc rawvideo
32format,tests/data/ffprobe-test.nut,3,0,nut,0.000000,0.120000,1053624,70241600,100,ffprobe test file,"'A comment with CSV, XML & JSON special chars': <tag value=""x"">",I ♥ Üñîçød€32format,tests/data/ffprobe-test.nut,3,0,nut,0.000000,0.120000,1053624,70241600,100,ffprobe test file,"'A comment with CSV, XML & JSON special chars': <tag value=""x"">",I ♥ Üñîçød€
tests/ref/fate/ffprobe_default+2−0
@@ -592,6 +592,7 @@ height=240 · 591 unmodified lines
592coded_width=320592coded_width=320
593coded_height=240593coded_height=240
594closed_captions=0594closed_captions=0
595film_grain=0
595has_b_frames=0596has_b_frames=0
596sample_aspect_ratio=1:1597sample_aspect_ratio=1:1
597display_aspect_ratio=4:3598display_aspect_ratio=4:3
@@ -651,6 +652,7 @@ height=100 · 53 unmodified lines
651coded_width=100652coded_width=100
652coded_height=100653coded_height=100
653closed_captions=0654closed_captions=0
655film_grain=0
654has_b_frames=0656has_b_frames=0
655sample_aspect_ratio=1:1657sample_aspect_ratio=1:1
656display_aspect_ratio=1:1658display_aspect_ratio=1:1
tests/ref/fate/ffprobe_flat+2−0
@@ -533,6 +533,7 @@ streams.stream.1.height=240 · 532 unmodified lines
533streams.stream.1.coded_width=320533streams.stream.1.coded_width=320
534streams.stream.1.coded_height=240534streams.stream.1.coded_height=240
535streams.stream.1.closed_captions=0535streams.stream.1.closed_captions=0
536streams.stream.1.film_grain=0
536streams.stream.1.has_b_frames=0537streams.stream.1.has_b_frames=0
537streams.stream.1.sample_aspect_ratio="1:1"538streams.stream.1.sample_aspect_ratio="1:1"
538streams.stream.1.display_aspect_ratio="4:3"539streams.stream.1.display_aspect_ratio="4:3"
@@ -590,6 +591,7 @@ streams.stream.2.height=100 · 51 unmodified lines
590streams.stream.2.coded_width=100591streams.stream.2.coded_width=100
591streams.stream.2.coded_height=100592streams.stream.2.coded_height=100
592streams.stream.2.closed_captions=0593streams.stream.2.closed_captions=0
594streams.stream.2.film_grain=0
593streams.stream.2.has_b_frames=0595streams.stream.2.has_b_frames=0
594streams.stream.2.sample_aspect_ratio="1:1"596streams.stream.2.sample_aspect_ratio="1:1"
595streams.stream.2.display_aspect_ratio="1:1"597streams.stream.2.display_aspect_ratio="1:1"
tests/ref/fate/ffprobe_ini+2−0
@@ -598,6 +598,7 @@ height=240 · 597 unmodified lines
598coded_width=320598coded_width=320
599coded_height=240599coded_height=240
600closed_captions=0600closed_captions=0
601film_grain=0
601has_b_frames=0602has_b_frames=0
602sample_aspect_ratio=1\:1603sample_aspect_ratio=1\:1
603display_aspect_ratio=4\:3604display_aspect_ratio=4\:3
@@ -661,6 +662,7 @@ height=100 · 57 unmodified lines
661coded_width=100662coded_width=100
662coded_height=100663coded_height=100
663closed_captions=0664closed_captions=0
665film_grain=0
664has_b_frames=0666has_b_frames=0
665sample_aspect_ratio=1\:1667sample_aspect_ratio=1\:1
666display_aspect_ratio=1\:1668display_aspect_ratio=1\:1
tests/ref/fate/ffprobe_json+2−0
@@ -573,6 +573,7 @@ · 572 unmodified lines
573 "coded_width": 320,573 "coded_width": 320,
574 "coded_height": 240,574 "coded_height": 240,
575 "closed_captions": 0,575 "closed_captions": 0,
576 "film_grain": 0,
576 "has_b_frames": 0,577 "has_b_frames": 0,
577 "sample_aspect_ratio": "1:1",578 "sample_aspect_ratio": "1:1",
578 "display_aspect_ratio": "4:3",579 "display_aspect_ratio": "4:3",
@@ -622,6 +623,7 @@ · 43 unmodified lines
622 "coded_width": 100,623 "coded_width": 100,
623 "coded_height": 100,624 "coded_height": 100,
624 "closed_captions": 0,625 "closed_captions": 0,
626 "film_grain": 0,
625 "has_b_frames": 0,627 "has_b_frames": 0,
626 "sample_aspect_ratio": "1:1",628 "sample_aspect_ratio": "1:1",
627 "display_aspect_ratio": "1:1",629 "display_aspect_ratio": "1:1",
tests/ref/fate/ffprobe_xml+2−2
@@ -37,13 +37,13 @@ · 36 unmodified lines
37 <tag key="E" value="mc²"/>37 <tag key="E" value="mc²"/>
38 <tag key="encoder" value="Lavc pcm_s16le"/>38 <tag key="encoder" value="Lavc pcm_s16le"/>
39 </stream>39 </stream>
40 <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" closed_captions="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="4:3" pix_fmt="rgb24" level="-99" 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">40 <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" closed_captions="0" film_grain="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="4:3" pix_fmt="rgb24" level="-99" 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">
41 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>41 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
42 <tag key="title" value="foobar"/>42 <tag key="title" value="foobar"/>
43 <tag key="duration_ts" value="field-and-tags-conflict-attempt"/>43 <tag key="duration_ts" value="field-and-tags-conflict-attempt"/>
44 <tag key="encoder" value="Lavc rawvideo"/>44 <tag key="encoder" value="Lavc rawvideo"/>
45 </stream>45 </stream>
46 <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" closed_captions="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="1:1" pix_fmt="rgb24" level="-99" 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">46 <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" closed_captions="0" film_grain="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="1:1" pix_fmt="rgb24" level="-99" 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">
47 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>47 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
48 <tag key="encoder" value="Lavc rawvideo"/>48 <tag key="encoder" value="Lavc rawvideo"/>
49 </stream>49 </stream>
tests/ref/fate/ffprobe_xsd+2−2
@@ -37,13 +37,13 @@ · 36 unmodified lines
37 <tag key="E" value="mc²"/>37 <tag key="E" value="mc²"/>
38 <tag key="encoder" value="Lavc pcm_s16le"/>38 <tag key="encoder" value="Lavc pcm_s16le"/>
39 </stream>39 </stream>
40 <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" closed_captions="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="4:3" pix_fmt="rgb24" level="-99" 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">40 <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" closed_captions="0" film_grain="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="4:3" pix_fmt="rgb24" level="-99" 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">
41 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>41 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
42 <tag key="title" value="foobar"/>42 <tag key="title" value="foobar"/>
43 <tag key="duration_ts" value="field-and-tags-conflict-attempt"/>43 <tag key="duration_ts" value="field-and-tags-conflict-attempt"/>
44 <tag key="encoder" value="Lavc rawvideo"/>44 <tag key="encoder" value="Lavc rawvideo"/>
45 </stream>45 </stream>
46 <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" closed_captions="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="1:1" pix_fmt="rgb24" level="-99" 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">46 <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" closed_captions="0" film_grain="0" has_b_frames="0" sample_aspect_ratio="1:1" display_aspect_ratio="1:1" pix_fmt="rgb24" level="-99" 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">
47 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>47 <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" captions="0" descriptions="0" metadata="0" dependent="0" still_image="0"/>
48 <tag key="encoder" value="Lavc rawvideo"/>48 <tag key="encoder" value="Lavc rawvideo"/>
49 </stream>49 </stream>

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t