mkvinfo — Print information about elements in Matroska™ files
This program lists all elements contained in a Matroska™. The output can be limited to a list of tracks in the file including information about the codecs used.
-g
, --gui
Start the GUI. This option is only available if mkvinfo was compiled with GUI support.
-c
, --checksums
Calculates and display the Adler32
checksum for each frame. Useful for debugging only.
-s
, --summary
Only show a terse summary of what mkvinfo(1) finds and not each element.
-x
, --hexdump
Show the first 16 bytes of each frame as a hex dump.
-X
, --full-hexdump
Show all bytes of each frame as a hex dump.
-z
, --size
Show the size of each element including its header.
--command-line-charset
character-set
Sets the character set to convert strings given on the command line from. It defaults to the character set given by system's current locale.
--output-charset
character-set
Sets the character set to which strings are converted that are to be output. It defaults to the character set given by system's current locale.
-r
, --redirect-output
file-name
Writes all messages to the file file-name
instead of to the console. While this can be done easily with
output redirection there are cases in which this option is needed: when the terminal reinterprets the output before writing it to a
file. The character set set with --output-charset
is honored.
--ui-language
code
Forces the translations for the language code
to be used (e.g. 'de_DE
' for the German
translations). It is preferable to use the environment variables LANG
, LC_MESSAGES
and
LC_ALL
though. Entering 'list
' as the code
will cause mkvinfo(1) to
output a list of available translations.
-v
, --verbose
Be more verbose. See the section about verbosity levels for a description which information will be output at which level.
-h
, --help
Show usage information and exit.
-V
, --version
Show version information and exit.
@
options-file
Reads additional command line arguments from the file options-file
. Lines whose first non-whitespace
character is a hash mark ('#
') are treated as comments and ignored. White spaces at the start and end of a line
will be stripped. Each line must contain exactly one option. There is no meta character escaping.
The command line 'mkvinfo -v -v input.mkv --redirect-output info.txt' could be converted into the following option file:
# Be more verbose -v -v # Parse input.mkv input.mkv # and write the output to info.txt --redirect-output info.txt
The -v
option can be used to increase mkvinfo(1)'s verbosity level
and print more information about the current file.
At level 0 mkvinfo(1) will print only the track headers it finds and their types. mkvinfo(1) will exit as soon as the headers are parsed completely (more technical: as soon as the first cluster is encountered). In this level the seek head entries and the cues will not be displayed -- even if they're located in front of the track information.
At level 1 mkvinfo(1) will also print all Matroska™ elements encountered for the complete file but the seek head entries and the cue entries. If the summary mode is enabled then mkvinfo(1) will output the frame position as well.
At level 2 mkvinfo(1) will also print the seek head entries, the cue entries and the file position at which each Matroska™ element can be found at.
At level 3 and above mkvinfo(1) will print some information that is not directly connected to a Matroska™ element. All other elements only print stuff about the elements that were just found. Level 3 adds meta information to ease debugging (read: it's intended for developers only). All lines written by level 3 are enclosed in square brackets to make filtering them out easy.
mkvinfo(1) exits with one of three exit codes:
0
-- This exit codes means that the run has completed successfully.
1
-- In this case mkvinfo(1) has output at least one warning, but the run did continue. A warning is
prefixed with the text 'Warning:
'.
2
-- This exit code is used after an error occurred. mkvinfo(1) aborts right after outputting the error message.
Error messages range from wrong command line arguments over read/write errors to broken files.