1FFPROBE(1)                                                          FFPROBE(1)
2
3
4

NAME

6       ffprobe - ffprobe media prober
7

SYNOPSIS

9       ffprobe [options] input_url
10

DESCRIPTION

12       ffprobe gathers information from multimedia streams and prints it in
13       human- and machine-readable fashion.
14
15       For example it can be used to check the format of the container used by
16       a multimedia stream and the format and type of each media stream
17       contained in it.
18
19       If a url is specified in input, ffprobe will try to open and probe the
20       url content. If the url cannot be opened or recognized as a multimedia
21       file, a positive exit code is returned.
22
23       If no output is specified as output with o ffprobe will write to
24       stdout.
25
26       ffprobe may be employed both as a standalone application or in
27       combination with a textual filter, which may perform more sophisticated
28       processing, e.g. statistical processing or plotting.
29
30       Options are used to list some of the formats supported by ffprobe or
31       for specifying which information to display, and for setting how
32       ffprobe will show it.
33
34       ffprobe output is designed to be easily parsable by a textual filter,
35       and consists of one or more sections of a form defined by the selected
36       writer, which is specified by the print_format option.
37
38       Sections may contain other nested sections, and are identified by a
39       name (which may be shared by other sections), and an unique name. See
40       the output of sections.
41
42       Metadata tags stored in the container or in the streams are recognized
43       and printed in the corresponding "FORMAT", "STREAM" or "PROGRAM_STREAM"
44       section.
45

OPTIONS

47       All the numerical options, if not specified otherwise, accept a string
48       representing a number as input, which may be followed by one of the SI
49       unit prefixes, for example: 'K', 'M', or 'G'.
50
51       If 'i' is appended to the SI unit prefix, the complete prefix will be
52       interpreted as a unit prefix for binary multiples, which are based on
53       powers of 1024 instead of powers of 1000. Appending 'B' to the SI unit
54       prefix multiplies the value by 8. This allows using, for example: 'KB',
55       'MiB', 'G' and 'B' as number suffixes.
56
57       Options which do not take arguments are boolean options, and set the
58       corresponding value to true. They can be set to false by prefixing the
59       option name with "no". For example using "-nofoo" will set the boolean
60       option with name "foo" to false.
61
62   Stream specifiers
63       Some options are applied per-stream, e.g. bitrate or codec. Stream
64       specifiers are used to precisely specify which stream(s) a given option
65       belongs to.
66
67       A stream specifier is a string generally appended to the option name
68       and separated from it by a colon. E.g. "-codec:a:1 ac3" contains the
69       "a:1" stream specifier, which matches the second audio stream.
70       Therefore, it would select the ac3 codec for the second audio stream.
71
72       A stream specifier can match several streams, so that the option is
73       applied to all of them. E.g. the stream specifier in "-b:a 128k"
74       matches all audio streams.
75
76       An empty stream specifier matches all streams. For example, "-codec
77       copy" or "-codec: copy" would copy all the streams without reencoding.
78
79       Possible forms of stream specifiers are:
80
81       stream_index
82           Matches the stream with this index. E.g. "-threads:1 4" would set
83           the thread count for the second stream to 4. If stream_index is
84           used as an additional stream specifier (see below), then it selects
85           stream number stream_index from the matching streams. Stream
86           numbering is based on the order of the streams as detected by
87           libavformat except when a program ID is also specified. In this
88           case it is based on the ordering of the streams in the program.
89
90       stream_type[:additional_stream_specifier]
91           stream_type is one of following: 'v' or 'V' for video, 'a' for
92           audio, 's' for subtitle, 'd' for data, and 't' for attachments. 'v'
93           matches all video streams, 'V' only matches video streams which are
94           not attached pictures, video thumbnails or cover arts. If
95           additional_stream_specifier is used, then it matches streams which
96           both have this type and match the additional_stream_specifier.
97           Otherwise, it matches all streams of the specified type.
98
99       p:program_id[:additional_stream_specifier]
100           Matches streams which are in the program with the id program_id. If
101           additional_stream_specifier is used, then it matches streams which
102           both are part of the program and match the
103           additional_stream_specifier.
104
105       #stream_id or i:stream_id
106           Match the stream by stream id (e.g. PID in MPEG-TS container).
107
108       m:key[:value]
109           Matches streams with the metadata tag key having the specified
110           value. If value is not given, matches streams that contain the
111           given tag with any value.
112
113       u   Matches streams with usable configuration, the codec must be
114           defined and the essential information such as video dimension or
115           audio sample rate must be present.
116
117           Note that in ffmpeg, matching by metadata will only work properly
118           for input files.
119
120   Generic options
121       These options are shared amongst the ff* tools.
122
123       -L  Show license.
124
125       -h, -?, -help, --help [arg]
126           Show help. An optional parameter may be specified to print help
127           about a specific item. If no argument is specified, only basic (non
128           advanced) tool options are shown.
129
130           Possible values of arg are:
131
132           long
133               Print advanced tool options in addition to the basic tool
134               options.
135
136           full
137               Print complete list of options, including shared and private
138               options for encoders, decoders, demuxers, muxers, filters, etc.
139
140           decoder=decoder_name
141               Print detailed information about the decoder named
142               decoder_name. Use the -decoders option to get a list of all
143               decoders.
144
145           encoder=encoder_name
146               Print detailed information about the encoder named
147               encoder_name. Use the -encoders option to get a list of all
148               encoders.
149
150           demuxer=demuxer_name
151               Print detailed information about the demuxer named
152               demuxer_name. Use the -formats option to get a list of all
153               demuxers and muxers.
154
155           muxer=muxer_name
156               Print detailed information about the muxer named muxer_name.
157               Use the -formats option to get a list of all muxers and
158               demuxers.
159
160           filter=filter_name
161               Print detailed information about the filter named filter_name.
162               Use the -filters option to get a list of all filters.
163
164           bsf=bitstream_filter_name
165               Print detailed information about the bitstream filter named
166               bitstream_filter_name.  Use the -bsfs option to get a list of
167               all bitstream filters.
168
169           protocol=protocol_name
170               Print detailed information about the protocol named
171               protocol_name.  Use the -protocols option to get a list of all
172               protocols.
173
174       -version
175           Show version.
176
177       -buildconf
178           Show the build configuration, one option per line.
179
180       -formats
181           Show available formats (including devices).
182
183       -demuxers
184           Show available demuxers.
185
186       -muxers
187           Show available muxers.
188
189       -devices
190           Show available devices.
191
192       -codecs
193           Show all codecs known to libavcodec.
194
195           Note that the term 'codec' is used throughout this documentation as
196           a shortcut for what is more correctly called a media bitstream
197           format.
198
199       -decoders
200           Show available decoders.
201
202       -encoders
203           Show all available encoders.
204
205       -bsfs
206           Show available bitstream filters.
207
208       -protocols
209           Show available protocols.
210
211       -filters
212           Show available libavfilter filters.
213
214       -pix_fmts
215           Show available pixel formats.
216
217       -sample_fmts
218           Show available sample formats.
219
220       -layouts
221           Show channel names and standard channel layouts.
222
223       -dispositions
224           Show stream dispositions.
225
226       -colors
227           Show recognized color names.
228
229       -sources device[,opt1=val1[,opt2=val2]...]
230           Show autodetected sources of the input device.  Some devices may
231           provide system-dependent source names that cannot be autodetected.
232           The returned list cannot be assumed to be always complete.
233
234                   ffmpeg -sources pulse,server=192.168.0.4
235
236       -sinks device[,opt1=val1[,opt2=val2]...]
237           Show autodetected sinks of the output device.  Some devices may
238           provide system-dependent sink names that cannot be autodetected.
239           The returned list cannot be assumed to be always complete.
240
241                   ffmpeg -sinks pulse,server=192.168.0.4
242
243       -loglevel [flags+]loglevel | -v [flags+]loglevel
244           Set logging level and flags used by the library.
245
246           The optional flags prefix can consist of the following values:
247
248           repeat
249               Indicates that repeated log output should not be compressed to
250               the first line and the "Last message repeated n times" line
251               will be omitted.
252
253           level
254               Indicates that log output should add a "[level]" prefix to each
255               message line. This can be used as an alternative to log
256               coloring, e.g. when dumping the log to file.
257
258           Flags can also be used alone by adding a '+'/'-' prefix to
259           set/reset a single flag without affecting other flags or changing
260           loglevel. When setting both flags and loglevel, a '+' separator is
261           expected between the last flags value and before loglevel.
262
263           loglevel is a string or a number containing one of the following
264           values:
265
266           quiet, -8
267               Show nothing at all; be silent.
268
269           panic, 0
270               Only show fatal errors which could lead the process to crash,
271               such as an assertion failure. This is not currently used for
272               anything.
273
274           fatal, 8
275               Only show fatal errors. These are errors after which the
276               process absolutely cannot continue.
277
278           error, 16
279               Show all errors, including ones which can be recovered from.
280
281           warning, 24
282               Show all warnings and errors. Any message related to possibly
283               incorrect or unexpected events will be shown.
284
285           info, 32
286               Show informative messages during processing. This is in
287               addition to warnings and errors. This is the default value.
288
289           verbose, 40
290               Same as "info", except more verbose.
291
292           debug, 48
293               Show everything, including debugging information.
294
295           trace, 56
296
297           For example to enable repeated log output, add the "level" prefix,
298           and set loglevel to "verbose":
299
300                   ffmpeg -loglevel repeat+level+verbose -i input output
301
302           Another example that enables repeated log output without affecting
303           current state of "level" prefix flag or loglevel:
304
305                   ffmpeg [...] -loglevel +repeat
306
307           By default the program logs to stderr. If coloring is supported by
308           the terminal, colors are used to mark errors and warnings. Log
309           coloring can be disabled setting the environment variable
310           AV_LOG_FORCE_NOCOLOR, or can be forced setting the environment
311           variable AV_LOG_FORCE_COLOR.
312
313       -report
314           Dump full command line and log output to a file named
315           "program-YYYYMMDD-HHMMSS.log" in the current directory.  This file
316           can be useful for bug reports.  It also implies "-loglevel debug".
317
318           Setting the environment variable FFREPORT to any value has the same
319           effect. If the value is a ':'-separated key=value sequence, these
320           options will affect the report; option values must be escaped if
321           they contain special characters or the options delimiter ':' (see
322           the ``Quoting and escaping'' section in the ffmpeg-utils manual).
323
324           The following options are recognized:
325
326           file
327               set the file name to use for the report; %p is expanded to the
328               name of the program, %t is expanded to a timestamp, "%%" is
329               expanded to a plain "%"
330
331           level
332               set the log verbosity level using a numerical value (see
333               "-loglevel").
334
335           For example, to output a report to a file named ffreport.log using
336           a log level of 32 (alias for log level "info"):
337
338                   FFREPORT=file=ffreport.log:level=32 ffmpeg -i input output
339
340           Errors in parsing the environment variable are not fatal, and will
341           not appear in the report.
342
343       -hide_banner
344           Suppress printing banner.
345
346           All FFmpeg tools will normally show a copyright notice, build
347           options and library versions. This option can be used to suppress
348           printing this information.
349
350       -cpuflags flags (global)
351           Allows setting and clearing cpu flags. This option is intended for
352           testing. Do not use it unless you know what you're doing.
353
354                   ffmpeg -cpuflags -sse+mmx ...
355                   ffmpeg -cpuflags mmx ...
356                   ffmpeg -cpuflags 0 ...
357
358           Possible flags for this option are:
359
360           x86
361               mmx
362               mmxext
363               sse
364               sse2
365               sse2slow
366               sse3
367               sse3slow
368               ssse3
369               atom
370               sse4.1
371               sse4.2
372               avx
373               avx2
374               xop
375               fma3
376               fma4
377               3dnow
378               3dnowext
379               bmi1
380               bmi2
381               cmov
382           ARM
383               armv5te
384               armv6
385               armv6t2
386               vfp
387               vfpv3
388               neon
389               setend
390           AArch64
391               armv8
392               vfp
393               neon
394           PowerPC
395               altivec
396           Specific Processors
397               pentium2
398               pentium3
399               pentium4
400               k6
401               k62
402               athlon
403               athlonxp
404               k8
405       -cpucount count (global)
406           Override detection of CPU count. This option is intended for
407           testing. Do not use it unless you know what you're doing.
408
409                   ffmpeg -cpucount 2
410
411       -max_alloc bytes
412           Set the maximum size limit for allocating a block on the heap by
413           ffmpeg's family of malloc functions. Exercise extreme caution when
414           using this option. Don't use if you do not understand the full
415           consequence of doing so.  Default is INT_MAX.
416
417   AVOptions
418       These options are provided directly by the libavformat, libavdevice and
419       libavcodec libraries. To see the list of available AVOptions, use the
420       -help option. They are separated into two categories:
421
422       generic
423           These options can be set for any container, codec or device.
424           Generic options are listed under AVFormatContext options for
425           containers/devices and under AVCodecContext options for codecs.
426
427       private
428           These options are specific to the given container, device or codec.
429           Private options are listed under their corresponding
430           containers/devices/codecs.
431
432       For example to write an ID3v2.3 header instead of a default ID3v2.4 to
433       an MP3 file, use the id3v2_version private option of the MP3 muxer:
434
435               ffmpeg -i input.flac -id3v2_version 3 out.mp3
436
437       All codec AVOptions are per-stream, and thus a stream specifier should
438       be attached to them:
439
440               ffmpeg -i multichannel.mxf -map 0:v:0 -map 0:a:0 -map 0:a:0 -c:a:0 ac3 -b:a:0 640k -ac:a:1 2 -c:a:1 aac -b:2 128k out.mp4
441
442       In the above example, a multichannel audio stream is mapped twice for
443       output.  The first instance is encoded with codec ac3 and bitrate 640k.
444       The second instance is downmixed to 2 channels and encoded with codec
445       aac. A bitrate of 128k is specified for it using absolute index of the
446       output stream.
447
448       Note: the -nooption syntax cannot be used for boolean AVOptions, use
449       -option 0/-option 1.
450
451       Note: the old undocumented way of specifying per-stream AVOptions by
452       prepending v/a/s to the options name is now obsolete and will be
453       removed soon.
454
455   Main options
456       -f format
457           Force format to use.
458
459       -unit
460           Show the unit of the displayed values.
461
462       -prefix
463           Use SI prefixes for the displayed values.  Unless the
464           "-byte_binary_prefix" option is used all the prefixes are decimal.
465
466       -byte_binary_prefix
467           Force the use of binary prefixes for byte values.
468
469       -sexagesimal
470           Use sexagesimal format HH:MM:SS.MICROSECONDS for time values.
471
472       -pretty
473           Prettify the format of the displayed values, it corresponds to the
474           options "-unit -prefix -byte_binary_prefix -sexagesimal".
475
476       -of, -print_format writer_name[=writer_options]
477           Set the output printing format.
478
479           writer_name specifies the name of the writer, and writer_options
480           specifies the options to be passed to the writer.
481
482           For example for printing the output in JSON format, specify:
483
484                   -print_format json
485
486           For more details on the available output printing formats, see the
487           Writers section below.
488
489       -sections
490           Print sections structure and section information, and exit. The
491           output is not meant to be parsed by a machine.
492
493       -select_streams stream_specifier
494           Select only the streams specified by stream_specifier. This option
495           affects only the options related to streams (e.g. "show_streams",
496           "show_packets", etc.).
497
498           For example to show only audio streams, you can use the command:
499
500                   ffprobe -show_streams -select_streams a INPUT
501
502           To show only video packets belonging to the video stream with index
503           1:
504
505                   ffprobe -show_packets -select_streams v:1 INPUT
506
507       -show_data
508           Show payload data, as a hexadecimal and ASCII dump. Coupled with
509           -show_packets, it will dump the packets' data. Coupled with
510           -show_streams, it will dump the codec extradata.
511
512           The dump is printed as the "data" field. It may contain newlines.
513
514       -show_data_hash algorithm
515           Show a hash of payload data, for packets with -show_packets and for
516           codec extradata with -show_streams.
517
518       -show_error
519           Show information about the error found when trying to probe the
520           input.
521
522           The error information is printed within a section with name
523           "ERROR".
524
525       -show_format
526           Show information about the container format of the input multimedia
527           stream.
528
529           All the container format information is printed within a section
530           with name "FORMAT".
531
532       -show_format_entry name
533           Like -show_format, but only prints the specified entry of the
534           container format information, rather than all. This option may be
535           given more than once, then all specified entries will be shown.
536
537           This option is deprecated, use "show_entries" instead.
538
539       -show_entries section_entries
540           Set list of entries to show.
541
542           Entries are specified according to the following syntax.
543           section_entries contains a list of section entries separated by
544           ":". Each section entry is composed by a section name (or unique
545           name), optionally followed by a list of entries local to that
546           section, separated by ",".
547
548           If section name is specified but is followed by no "=", all entries
549           are printed to output, together with all the contained sections.
550           Otherwise only the entries specified in the local section entries
551           list are printed. In particular, if "=" is specified but the list
552           of local entries is empty, then no entries will be shown for that
553           section.
554
555           Note that the order of specification of the local section entries
556           is not honored in the output, and the usual display order will be
557           retained.
558
559           The formal syntax is given by:
560
561                   <LOCAL_SECTION_ENTRIES> ::= <SECTION_ENTRY_NAME>[,<LOCAL_SECTION_ENTRIES>]
562                   <SECTION_ENTRY>         ::= <SECTION_NAME>[=[<LOCAL_SECTION_ENTRIES>]]
563                   <SECTION_ENTRIES>       ::= <SECTION_ENTRY>[:<SECTION_ENTRIES>]
564
565           For example, to show only the index and type of each stream, and
566           the PTS time, duration time, and stream index of the packets, you
567           can specify the argument:
568
569                   packet=pts_time,duration_time,stream_index : stream=index,codec_type
570
571           To show all the entries in the section "format", but only the codec
572           type in the section "stream", specify the argument:
573
574                   format : stream=codec_type
575
576           To show all the tags in the stream and format sections:
577
578                   stream_tags : format_tags
579
580           To show only the "title" tag (if available) in the stream sections:
581
582                   stream_tags=title
583
584       -show_packets
585           Show information about each packet contained in the input
586           multimedia stream.
587
588           The information for each single packet is printed within a
589           dedicated section with name "PACKET".
590
591       -show_frames
592           Show information about each frame and subtitle contained in the
593           input multimedia stream.
594
595           The information for each single frame is printed within a dedicated
596           section with name "FRAME" or "SUBTITLE".
597
598       -show_log loglevel
599           Show logging information from the decoder about each frame
600           according to the value set in loglevel, (see "-loglevel"). This
601           option requires "-show_frames".
602
603           The information for each log message is printed within a dedicated
604           section with name "LOG".
605
606       -show_streams
607           Show information about each media stream contained in the input
608           multimedia stream.
609
610           Each media stream information is printed within a dedicated section
611           with name "STREAM".
612
613       -show_programs
614           Show information about programs and their streams contained in the
615           input multimedia stream.
616
617           Each media stream information is printed within a dedicated section
618           with name "PROGRAM_STREAM".
619
620       -show_chapters
621           Show information about chapters stored in the format.
622
623           Each chapter is printed within a dedicated section with name
624           "CHAPTER".
625
626       -count_frames
627           Count the number of frames per stream and report it in the
628           corresponding stream section.
629
630       -count_packets
631           Count the number of packets per stream and report it in the
632           corresponding stream section.
633
634       -read_intervals read_intervals
635           Read only the specified intervals. read_intervals must be a
636           sequence of interval specifications separated by ",".  ffprobe will
637           seek to the interval starting point, and will continue reading from
638           that.
639
640           Each interval is specified by two optional parts, separated by "%".
641
642           The first part specifies the interval start position. It is
643           interpreted as an absolute position, or as a relative offset from
644           the current position if it is preceded by the "+" character. If
645           this first part is not specified, no seeking will be performed when
646           reading this interval.
647
648           The second part specifies the interval end position. It is
649           interpreted as an absolute position, or as a relative offset from
650           the current position if it is preceded by the "+" character. If the
651           offset specification starts with "#", it is interpreted as the
652           number of packets to read (not including the flushing packets) from
653           the interval start. If no second part is specified, the program
654           will read until the end of the input.
655
656           Note that seeking is not accurate, thus the actual interval start
657           point may be different from the specified position. Also, when an
658           interval duration is specified, the absolute end time will be
659           computed by adding the duration to the interval start point found
660           by seeking the file, rather than to the specified start value.
661
662           The formal syntax is given by:
663
664                   <INTERVAL>  ::= [<START>|+<START_OFFSET>][%[<END>|+<END_OFFSET>]]
665                   <INTERVALS> ::= <INTERVAL>[,<INTERVALS>]
666
667           A few examples follow.
668
669           •   Seek to time 10, read packets until 20 seconds after the found
670               seek point, then seek to position "01:30" (1 minute and thirty
671               seconds) and read packets until position "01:45".
672
673                       10%+20,01:30%01:45
674
675           •   Read only 42 packets after seeking to position "01:23":
676
677                       01:23%+#42
678
679           •   Read only the first 20 seconds from the start:
680
681                       %+20
682
683           •   Read from the start until position "02:30":
684
685                       %02:30
686
687       -show_private_data, -private
688           Show private data, that is data depending on the format of the
689           particular shown element.  This option is enabled by default, but
690           you may need to disable it for specific uses, for example when
691           creating XSD-compliant XML output.
692
693       -show_program_version
694           Show information related to program version.
695
696           Version information is printed within a section with name
697           "PROGRAM_VERSION".
698
699       -show_library_versions
700           Show information related to library versions.
701
702           Version information for each library is printed within a section
703           with name "LIBRARY_VERSION".
704
705       -show_versions
706           Show information related to program and library versions. This is
707           the equivalent of setting both -show_program_version and
708           -show_library_versions options.
709
710       -show_pixel_formats
711           Show information about all pixel formats supported by FFmpeg.
712
713           Pixel format information for each format is printed within a
714           section with name "PIXEL_FORMAT".
715
716       -show_optional_fields value
717           Some writers viz. JSON and XML, omit the printing of fields with
718           invalid or non-applicable values, while other writers always print
719           them. This option enables one to control this behaviour.  Valid
720           values are "always"/1, "never"/0 and "auto"/-1.  Default is auto.
721
722       -bitexact
723           Force bitexact output, useful to produce output which is not
724           dependent on the specific build.
725
726       -i input_url
727           Read input_url.
728
729       -o output_url
730           Write output to output_url. If not specified, the output is sent to
731           stdout.
732

WRITERS

734       A writer defines the output format adopted by ffprobe, and will be used
735       for printing all the parts of the output.
736
737       A writer may accept one or more arguments, which specify the options to
738       adopt. The options are specified as a list of key=value pairs,
739       separated by ":".
740
741       All writers support the following options:
742
743       string_validation, sv
744           Set string validation mode.
745
746           The following values are accepted.
747
748           fail
749               The writer will fail immediately in case an invalid string
750               (UTF-8) sequence or code point is found in the input. This is
751               especially useful to validate input metadata.
752
753           ignore
754               Any validation error will be ignored. This will result in
755               possibly broken output, especially with the json or xml writer.
756
757           replace
758               The writer will substitute invalid UTF-8 sequences or code
759               points with the string specified with the
760               string_validation_replacement.
761
762           Default value is replace.
763
764       string_validation_replacement, svr
765           Set replacement string to use in case string_validation is set to
766           replace.
767
768           In case the option is not specified, the writer will assume the
769           empty string, that is it will remove the invalid sequences from the
770           input strings.
771
772       A description of the currently available writers follows.
773
774   default
775       Default format.
776
777       Print each section in the form:
778
779               [SECTION]
780               key1=val1
781               ...
782               keyN=valN
783               [/SECTION]
784
785       Metadata tags are printed as a line in the corresponding FORMAT, STREAM
786       or PROGRAM_STREAM section, and are prefixed by the string "TAG:".
787
788       A description of the accepted options follows.
789
790       nokey, nk
791           If set to 1 specify not to print the key of each field. Default
792           value is 0.
793
794       noprint_wrappers, nw
795           If set to 1 specify not to print the section header and footer.
796           Default value is 0.
797
798   compact, csv
799       Compact and CSV format.
800
801       The "csv" writer is equivalent to "compact", but supports different
802       defaults.
803
804       Each section is printed on a single line.  If no option is specified,
805       the output has the form:
806
807               section|key1=val1| ... |keyN=valN
808
809       Metadata tags are printed in the corresponding "format" or "stream"
810       section. A metadata tag key, if printed, is prefixed by the string
811       "tag:".
812
813       The description of the accepted options follows.
814
815       item_sep, s
816           Specify the character to use for separating fields in the output
817           line.  It must be a single printable character, it is "|" by
818           default ("," for the "csv" writer).
819
820       nokey, nk
821           If set to 1 specify not to print the key of each field. Its default
822           value is 0 (1 for the "csv" writer).
823
824       escape, e
825           Set the escape mode to use, default to "c" ("csv" for the "csv"
826           writer).
827
828           It can assume one of the following values:
829
830           c   Perform C-like escaping. Strings containing a newline (\n),
831               carriage return (\r), a tab (\t), a form feed (\f), the
832               escaping character (\) or the item separator character SEP are
833               escaped using C-like fashioned escaping, so that a newline is
834               converted to the sequence \n, a carriage return to \r, \ to \\
835               and the separator SEP is converted to \SEP.
836
837           csv Perform CSV-like escaping, as described in RFC4180.  Strings
838               containing a newline (\n), a carriage return (\r), a double
839               quote ("), or SEP are enclosed in double-quotes.
840
841           none
842               Perform no escaping.
843
844       print_section, p
845           Print the section name at the beginning of each line if the value
846           is 1, disable it with value set to 0. Default value is 1.
847
848   flat
849       Flat format.
850
851       A free-form output where each line contains an explicit key=value, such
852       as "streams.stream.3.tags.foo=bar". The output is shell escaped, so it
853       can be directly embedded in sh scripts as long as the separator
854       character is an alphanumeric character or an underscore (see sep_char
855       option).
856
857       The description of the accepted options follows.
858
859       sep_char, s
860           Separator character used to separate the chapter, the section name,
861           IDs and potential tags in the printed field key.
862
863           Default value is ..
864
865       hierarchical, h
866           Specify if the section name specification should be hierarchical.
867           If set to 1, and if there is more than one section in the current
868           chapter, the section name will be prefixed by the name of the
869           chapter. A value of 0 will disable this behavior.
870
871           Default value is 1.
872
873   ini
874       INI format output.
875
876       Print output in an INI based format.
877
878       The following conventions are adopted:
879
880       •   all key and values are UTF-8
881
882. is the subgroup separator
883
884       •   newline, \t, \f, \b and the following characters are escaped
885
886\ is the escape character
887
888# is the comment indicator
889
890= is the key/value separator
891
892: is not used but usually parsed as key/value separator
893
894       This writer accepts options as a list of key=value pairs, separated by
895       :.
896
897       The description of the accepted options follows.
898
899       hierarchical, h
900           Specify if the section name specification should be hierarchical.
901           If set to 1, and if there is more than one section in the current
902           chapter, the section name will be prefixed by the name of the
903           chapter. A value of 0 will disable this behavior.
904
905           Default value is 1.
906
907   json
908       JSON based format.
909
910       Each section is printed using JSON notation.
911
912       The description of the accepted options follows.
913
914       compact, c
915           If set to 1 enable compact output, that is each section will be
916           printed on a single line. Default value is 0.
917
918       For more information about JSON, see <http://www.json.org/>.
919
920   xml
921       XML based format.
922
923       The XML output is described in the XML schema description file
924       ffprobe.xsd installed in the FFmpeg datadir.
925
926       An updated version of the schema can be retrieved at the url
927       <http://www.ffmpeg.org/schema/ffprobe.xsd>, which redirects to the
928       latest schema committed into the FFmpeg development source code tree.
929
930       Note that the output issued will be compliant to the ffprobe.xsd schema
931       only when no special global output options (unit, prefix,
932       byte_binary_prefix, sexagesimal etc.) are specified.
933
934       The description of the accepted options follows.
935
936       fully_qualified, q
937           If set to 1 specify if the output should be fully qualified.
938           Default value is 0.  This is required for generating an XML file
939           which can be validated through an XSD file.
940
941       xsd_strict, x
942           If set to 1 perform more checks for ensuring that the output is XSD
943           compliant. Default value is 0.  This option automatically sets
944           fully_qualified to 1.
945
946       For more information about the XML format, see
947       <https://www.w3.org/XML/>.
948

TIMECODE

950       ffprobe supports Timecode extraction:
951
952       •   MPEG1/2 timecode is extracted from the GOP, and is available in the
953           video stream details (-show_streams, see timecode).
954
955       •   MOV timecode is extracted from tmcd track, so is available in the
956           tmcd stream metadata (-show_streams, see TAG:timecode).
957
958       •   DV, GXF and AVI timecodes are available in format metadata
959           (-show_format, see TAG:timecode).
960

SEE ALSO

962       ffprobe-all(1), ffmpeg(1), ffplay(1), ffmpeg-utils(1),
963       ffmpeg-scaler(1), ffmpeg-resampler(1), ffmpeg-codecs(1),
964       ffmpeg-bitstream-filters(1), ffmpeg-formats(1), ffmpeg-devices(1),
965       ffmpeg-protocols(1), ffmpeg-filters(1)
966

AUTHORS

968       The FFmpeg developers.
969
970       For details about the authorship, see the Git history of the project
971       (https://git.ffmpeg.org/ffmpeg), e.g. by typing the command git log in
972       the FFmpeg source directory, or browsing the online repository at
973       <https://git.ffmpeg.org/ffmpeg>.
974
975       Maintainers for the specific components are listed in the file
976       MAINTAINERS in the source code tree.
977
978
979
980                                                                    FFPROBE(1)
Impressum