'\" t .\" Title: mkvinfo .\" Author: Moritz Bunkus .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: 2017-05-20 .\" Manual: User Commands .\" Source: MKVToolNix 12.0.0 .\" Language: English .\" .TH "MKVINFO" "1" "2017\-05\-20" "MKVToolNix 12\&.0\&.0" "User Commands" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" mkvinfo \- Print information about elements in Matroska files .SH "SYNOPSIS" .HP \w'\fBmkvinfo\fR\ 'u \fBmkvinfo\fR [options] {source\-filename} .SH "DESCRIPTION" .PP 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\&. .PP \fB\-g\fR, \fB\-\-gui\fR .RS 4 Start the GUI\&. This option is only available if mkvinfo was compiled with GUI support\&. .RE .PP \fB\-c\fR, \fB\-\-checksums\fR .RS 4 Calculates and display the \fBAdler32\fR checksum for each frame\&. Useful for debugging only\&. .RE .PP \fB\-s\fR, \fB\-\-summary\fR .RS 4 Only show a terse summary of what \fBmkvinfo\fR(1) finds and not each element\&. .RE .PP \fB\-t\fR, \fB\-\-track\-info\fR .RS 4 Show statistics for each track in verbose mode\&. Also sets verbosity to 1 if it was at level 0 before\&. .RE .PP \fB\-x\fR, \fB\-\-hexdump\fR .RS 4 Show the first 16 bytes of each frame as a hex dump\&. .RE .PP \fB\-X\fR, \fB\-\-full\-hexdump\fR .RS 4 Show all bytes of each frame as a hex dump\&. .RE .PP \fB\-z\fR, \fB\-\-size\fR .RS 4 Show the size of each element including its header\&. .RE .PP \fB\-\-command\-line\-charset\fR \fIcharacter\-set\fR .RS 4 Sets the character set to convert strings given on the command line from\&. It defaults to the character set given by system\*(Aqs current locale\&. .RE .PP \fB\-\-output\-charset\fR \fIcharacter\-set\fR .RS 4 Sets the character set to which strings are converted that are to be output\&. It defaults to the character set given by system\*(Aqs current locale\&. .RE .PP \fB\-r\fR, \fB\-\-redirect\-output\fR \fIfile\-name\fR .RS 4 Writes all messages to the file \fIfile\-name\fR 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 \fB\-\-output\-charset\fR is honored\&. .RE .PP \fB\-\-ui\-language\fR \fIcode\fR .RS 4 Forces the translations for the language \fIcode\fR to be used (e\&.g\&. \*(Aqde_DE\*(Aq for the German translations)\&. Entering \*(Aqlist\*(Aq as the \fIcode\fR will cause the program to output a list of available translations\&. .RE .PP \fB\-\-debug\fR \fItopic\fR .RS 4 Turn on debugging for a specific feature\&. This option is only useful for developers\&. .RE .PP \fB\-\-engage\fR \fIfeature\fR .RS 4 Turn on experimental features\&. A list of available features can be requested with \fBmkvinfo \-\-engage list\fR\&. These features are not meant to be used in normal situations\&. .RE .PP \fB\-\-gui\-mode\fR .RS 4 Turns on GUI mode\&. In this mode specially\-formatted lines may be output that can tell a controlling GUI what\*(Aqs happening\&. These messages follow the format \*(Aq#GUI#message\*(Aq\&. The message may be followed by key/value pairs as in \*(Aq#GUI#message#key1=value1#key2=value2\&...\*(Aq\&. Neither the messages nor the keys are ever translated and always output in English\&. .sp This switch has nothing to do with the \fB\-\-gui\fR parameter which causes mkvinfo to display its own GUI\&. .RE .PP \fB\-v\fR, \fB\-\-verbose\fR .RS 4 Be more verbose\&. See the section about verbosity levels for a description which information will be output at which level\&. .RE .PP \fB\-h\fR, \fB\-\-help\fR .RS 4 Show usage information and exit\&. .RE .PP \fB\-V\fR, \fB\-\-version\fR .RS 4 Show version information and exit\&. .RE .PP \fB\-\-check\-for\-updates\fR .RS 4 Checks online for new releases by downloading the URL \m[blue]\fBhttp://mkvtoolnix\-releases\&.bunkus\&.org/latest\-release\&.xml\fR\m[]\&. Four lines will be output in key=value style: the URL from where the information was retrieved (key version_check_url), the currently running version (key running_version), the latest release\*(Aqs version (key available_version) and the download URL (key download_url)\&. .sp Afterwards the program exists with an exit code of 0 if no newer release is available, with 1 if a newer release is available and with 2 if an error occured (e\&.g\&. if the update information could not be retrieved)\&. .sp This option is only available if the program was built with support for libcurl\&. .RE .PP \fB@\fR\fIoptions\-file\&.json\fR .RS 4 Reads additional command line arguments from the file \fIoptions\-file\fR\&. For a full explanation on the supported formats for such files see the section called "Option files" in the \fBmkvmerge\fR(1) man page\&. .RE .SH "VERBOSITY LEVELS" .PP The \fB\-v\fR option can be used to increase \fBmkvinfo\fR(1)\*(Aqs verbosity level and print more information about the current file\&. .PP At level 0 \fBmkvinfo\fR(1) will print only the track headers it finds and their types\&. \fBmkvinfo\fR(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\*(Aqre located in front of the track information\&. .PP At level 1 \fBmkvinfo\fR(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 \fBmkvinfo\fR(1) will output the frame position as well\&. .PP At level 2 \fBmkvinfo\fR(1) will also print the seek head entries, the cue entries and the file position at which each Matroska element can be found at\&. .PP At level 3 and above \fBmkvinfo\fR(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\*(Aqs intended for developers only)\&. All lines written by level 3 are enclosed in square brackets to make filtering them out easy\&. .SH "TEXT FILES AND CHARACTER SET CONVERSIONS" .PP For an in\-depth discussion about how all tools in the MKVToolNix suite handle character set conversions, input/output encoding, command line encoding and console encoding please see the identically\-named section in the \fBmkvmerge\fR(1) man page\&. .SH "EXIT CODES" .PP \fBmkvinfo\fR(1) exits with one of three exit codes: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB0\fR \-\- This exit codes means that the run has completed successfully\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB1\fR \-\- In this case \fBmkvinfo\fR(1) has output at least one warning, but the run did continue\&. A warning is prefixed with the text \*(AqWarning:\*(Aq\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB2\fR \-\- This exit code is used after an error occurred\&. \fBmkvinfo\fR(1) aborts right after outputting the error message\&. Error messages range from wrong command line arguments over read/write errors to broken files\&. .RE .SH "ESCAPING SPECIAL CHARS IN TEXT" .PP There are a few places in which special characters in text must or should be escaped\&. The rules for escaping are simple: each character that needs escaping is replaced with a backslash followed by another character\&. .PP The rules are: \*(Aq \*(Aq (a space) becomes \*(Aq\es\*(Aq, \*(Aq"\*(Aq (double quotes) becomes \*(Aq\e2\*(Aq, \*(Aq:\*(Aq becomes \*(Aq\ec\*(Aq, \*(Aq#\*(Aq becomes \*(Aq\eh\*(Aq and \*(Aq\e\*(Aq (a single backslash) itself becomes \*(Aq\e\e\*(Aq\&. .SH "ENVIRONMENT VARIABLES" .PP \fBmkvinfo\fR(1) uses the default variables that determine the system\*(Aqs locale (e\&.g\&. \fILANG\fR and the \fILC_*\fR family)\&. Additional variables: .PP \fIMKVINFO_DEBUG\fR, \fIMKVTOOLNIX_DEBUG\fR and its short form \fIMTX_DEBUG\fR .RS 4 The content is treated as if it had been passed via the \fB\-\-debug\fR option\&. .RE .PP \fIMKVINFO_ENGAGE\fR, \fIMKVTOOLNIX_ENGAGE\fR and its short form \fIMTX_ENGAGE\fR .RS 4 The content is treated as if it had been passed via the \fB\-\-engage\fR option\&. .RE .PP \fIMKVINFO_OPTIONS\fR, \fIMKVTOOLNIX_OPTIONS\fR and its short form \fIMTX_OPTIONS\fR .RS 4 The content is split on white space\&. The resulting partial strings are treated as if it had been passed as command line options\&. If you need to pass special characters (e\&.g\&. spaces) then you have to escape them (see the section about escaping special characters in text)\&. .RE .SH "SEE ALSO" .PP \fBmkvmerge\fR(1), \fBmkvextract\fR(1), \fBmkvpropedit\fR(1), \fBmkvtoolnix-gui\fR(1) .SH "WWW" .PP The latest version can always be found at \m[blue]\fBthe MKVToolNix homepage\fR\m[]\&\s-2\u[1]\d\s+2\&. .SH "AUTHOR" .PP \fBMoritz Bunkus\fR <\&moritz@bunkus\&.org\&> .RS 4 Developer .RE .SH "NOTES" .IP " 1." 4 the MKVToolNix homepage .RS 4 \%https://mkvtoolnix.download/ .RE