|
- \input texinfo @c -*- texinfo -*-
-
- @settitle ffprobe Documentation
- @titlepage
- @center @titlefont{ffprobe Documentation}
- @end titlepage
-
- @top
-
- @contents
-
- @chapter Synopsis
-
- The generic syntax is:
-
- @example
- @c man begin SYNOPSIS
- ffprobe [options] [@file{input_file}]
- @c man end
- @end example
-
- @chapter Description
- @c man begin DESCRIPTION
-
- ffprobe gathers information from multimedia streams and prints it in
- human- and machine-readable fashion.
-
- For example it can be used to check the format of the container used
- by a multimedia stream and the format and type of each media stream
- contained in it.
-
- If a filename is specified in input, ffprobe will try to open and
- probe the file content. If the file cannot be opened or recognized as
- a multimedia file, a positive exit code is returned.
-
- ffprobe may be employed both as a standalone application or in
- combination with a textual filter, which may perform more
- sophisticated processing, e.g. statistical processing or plotting.
-
- Options are used to list some of the formats supported by ffprobe or
- for specifying which information to display, and for setting how
- ffprobe will show it.
-
- ffprobe output is designed to be easily parsable by a textual filter,
- and consists of one or more sections of a form defined by the selected
- writer, which is specified by the @option{print_format} option.
-
- Metadata tags stored in the container or in the streams are recognized
- and printed in the corresponding "FORMAT" or "STREAM" section.
-
- @c man end
-
- @chapter Options
- @c man begin OPTIONS
-
- @include avtools-common-opts.texi
-
- @section Main options
-
- @table @option
-
- @item -f @var{format}
- Force format to use.
-
- @item -unit
- Show the unit of the displayed values.
-
- @item -prefix
- Use SI prefixes for the displayed values.
- Unless the "-byte_binary_prefix" option is used all the prefixes
- are decimal.
-
- @item -byte_binary_prefix
- Force the use of binary prefixes for byte values.
-
- @item -sexagesimal
- Use sexagesimal format HH:MM:SS.MICROSECONDS for time values.
-
- @item -pretty
- Prettify the format of the displayed values, it corresponds to the
- options "-unit -prefix -byte_binary_prefix -sexagesimal".
-
- @item -of, -print_format @var{writer_name}[=@var{writer_options}]
- Set the output printing format.
-
- @var{writer_name} specifies the name of the writer, and
- @var{writer_options} specifies the options to be passed to the writer.
-
- For example for printing the output in JSON format, specify:
- @example
- -print_format json
- @end example
-
- For more details on the available output printing formats, see the
- Writers section below.
-
- @item -show_error
- Show information about the error found when trying to probe the input.
-
- The error information is printed within a section with name "ERROR".
-
- @item -show_format
- Show information about the container format of the input multimedia
- stream.
-
- All the container format information is printed within a section with
- name "FORMAT".
-
- @item -show_format_entry @var{name}
- Like @option{-show_format}, but only prints the specified entry of the
- container format information, rather than all. This option may be given more
- than once, then all specified entries will be shown.
-
- @item -show_packets
- Show information about each packet contained in the input multimedia
- stream.
-
- The information for each single packet is printed within a dedicated
- section with name "PACKET".
-
- @item -show_frames
- Show information about each frame contained in the input multimedia
- stream.
-
- The information for each single frame is printed within a dedicated
- section with name "FRAME".
-
- @item -show_streams
- Show information about each media stream contained in the input
- multimedia stream.
-
- Each media stream information is printed within a dedicated section
- with name "STREAM".
-
- @item -count_frames
- Count the number of frames per stream and report it in the
- corresponding stream section.
-
- @item -count_packets
- Count the number of packets per stream and report it in the
- corresponding stream section.
-
- @item -show_private_data, -private
- Show private data, that is data depending on the format of the
- particular shown element.
- This option is enabled by default, but you may need to disable it
- for specific uses, for example when creating XSD-compliant XML output.
-
- @item -show_program_version
- Show information related to program version.
-
- Version information is printed within a section with name
- "PROGRAM_VERSION".
-
- @item -show_library_versions
- Show information related to library versions.
-
- Version information for each library is printed within a section with
- name "LIBRARY_VERSION".
-
- @item -show_versions
- Show information related to program and library versions. This is the
- equivalent of setting both @option{-show_program_version} and
- @option{-show_library_versions} options.
-
- @item -i @var{input_file}
- Read @var{input_file}.
-
- @end table
- @c man end
-
- @chapter Writers
- @c man begin WRITERS
-
- A writer defines the output format adopted by @command{ffprobe}, and will be
- used for printing all the parts of the output.
-
- A writer may accept one or more arguments, which specify the options to
- adopt.
-
- A description of the currently available writers follows.
-
- @section default
- Default format.
-
- Print each section in the form:
- @example
- [SECTION]
- key1=val1
- ...
- keyN=valN
- [/SECTION]
- @end example
-
- Metadata tags are printed as a line in the corresponding FORMAT or
- STREAM section, and are prefixed by the string "TAG:".
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- A description of the accepted options follows.
-
- @table @option
-
- @item nokey, nk
- If set to 1 specify not to print the key of each field. Default value
- is 0.
-
- @item noprint_wrappers, nw
- If set to 1 specify not to print the section header and footer.
- Default value is 0.
- @end table
-
- @section compact
- Compact format.
-
- Each section is printed on a single line.
- If no option is specifid, the output has the form:
- @example
- section|key1=val1| ... |keyN=valN
- @end example
-
- Metadata tags are printed in the corresponding "format" or "stream"
- section. A metadata tag key, if printed, is prefixed by the string
- "tag:".
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- The description of the accepted options follows.
-
- @table @option
-
- @item item_sep, s
- Specify the character to use for separating fields in the output line.
- It must be a single printable character, it is "|" by default.
-
- @item nokey, nk
- If set to 1 specify not to print the key of each field. Its default
- value is 0.
-
- @item escape, e
- Set the escape mode to use, default to "c".
-
- It can assume one of the following values:
- @table @option
- @item c
- Perform C-like escaping. Strings containing a newline ('\n'), carriage
- return ('\r'), a tab ('\t'), a form feed ('\f'), the escaping
- character ('\') or the item separator character @var{SEP} are escaped using C-like fashioned
- escaping, so that a newline is converted to the sequence "\n", a
- carriage return to "\r", '\' to "\\" and the separator @var{SEP} is
- converted to "\@var{SEP}".
-
- @item csv
- Perform CSV-like escaping, as described in RFC4180. Strings
- containing a newline ('\n'), a carriage return ('\r'), a double quote
- ('"'), or @var{SEP} are enclosed in double-quotes.
-
- @item none
- Perform no escaping.
- @end table
-
- @end table
-
- @section csv
- CSV format.
-
- This writer is equivalent to
- @code{compact=item_sep=,:nokey=1:escape=csv}.
-
- @section flat
- Flat format.
-
- A free-form output where each line contains an explicit key=value, such as
- "streams.stream.3.tags.foo=bar". The output is shell escaped, so it can be
- directly embedded in sh scripts as long as the separator character is an
- alphanumeric character or an underscore (see @var{sep_char} option).
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- The description of the accepted options follows.
-
- @table @option
- @item sep_char, s
- Separator character used to separate the chapter, the section name, IDs and
- potential tags in the printed field key.
-
- Default value is '.'.
-
- @item hierarchical, h
- Specify if the section name specification should be hierarchical. If
- set to 1, and if there is more than one section in the current
- chapter, the section name will be prefixed by the name of the
- chapter. A value of 0 will disable this behavior.
-
- Default value is 1.
- @end table
-
- @section ini
- INI format output.
-
- Print output in an INI based format.
-
- The following conventions are adopted:
-
- @itemize
- @item
- all key and values are UTF-8
- @item
- '.' is the subgroup separator
- @item
- newline, '\t', '\f', '\b' and the following characters are escaped
- @item
- '\' is the escape character
- @item
- '#' is the comment indicator
- @item
- '=' is the key/value separator
- @item
- ':' is not used but usually parsed as key/value separator
- @end itemize
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- The description of the accepted options follows.
-
- @table @option
- @item hierarchical, h
- Specify if the section name specification should be hierarchical. If
- set to 1, and if there is more than one section in the current
- chapter, the section name will be prefixed by the name of the
- chapter. A value of 0 will disable this behavior.
-
- Default value is 1.
- @end table
-
- @section json
- JSON based format.
-
- Each section is printed using JSON notation.
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- The description of the accepted options follows.
-
- @table @option
-
- @item compact, c
- If set to 1 enable compact output, that is each section will be
- printed on a single line. Default value is 0.
- @end table
-
- For more information about JSON, see @url{http://www.json.org/}.
-
- @section xml
- XML based format.
-
- The XML output is described in the XML schema description file
- @file{ffprobe.xsd} installed in the FFmpeg datadir.
-
- An updated version of the schema can be retrieved at the url
- @url{http://www.ffmpeg.org/schema/ffprobe.xsd}, which redirects to the
- latest schema committed into the FFmpeg development source code tree.
-
- Note that the output issued will be compliant to the
- @file{ffprobe.xsd} schema only when no special global output options
- (@option{unit}, @option{prefix}, @option{byte_binary_prefix},
- @option{sexagesimal} etc.) are specified.
-
- This writer accepts options as a list of @var{key}=@var{value} pairs,
- separated by ":".
-
- The description of the accepted options follows.
-
- @table @option
-
- @item fully_qualified, q
- If set to 1 specify if the output should be fully qualified. Default
- value is 0.
- This is required for generating an XML file which can be validated
- through an XSD file.
-
- @item xsd_compliant, x
- If set to 1 perform more checks for ensuring that the output is XSD
- compliant. Default value is 0.
- This option automatically sets @option{fully_qualified} to 1.
- @end table
-
- For more information about the XML format, see
- @url{http://www.w3.org/XML/}.
- @c man end WRITERS
-
- @chapter Timecode
- @c man begin TIMECODE
-
- @command{ffprobe} supports Timecode extraction:
-
- @itemize
-
- @item
- MPEG1/2 timecode is extracted from the GOP, and is available in the video
- stream details (@option{-show_streams}, see @var{timecode}).
-
- @item
- MOV timecode is extracted from tmcd track, so is available in the tmcd
- stream metadata (@option{-show_streams}, see @var{TAG:timecode}).
-
- @item
- DV and GXF timecodes are available in format metadata
- (@option{-show_format}, see @var{TAG:timecode}).
-
- @end itemize
- @c man end TIMECODE
-
- @include syntax.texi
- @include decoders.texi
- @include demuxers.texi
- @include protocols.texi
- @include indevs.texi
-
- @ignore
-
- @setfilename ffprobe
- @settitle ffprobe media prober
-
- @c man begin SEEALSO
- ffmpeg(1), ffplay(1), ffserver(1) and the FFmpeg HTML documentation
- @c man end
-
- @c man begin AUTHORS
- The FFmpeg developers
- @c man end
-
- @end ignore
-
- @bye
|