mirror of
https://gitlab.com/mbunkus/mkvtoolnix.git
synced 2024-12-28 05:45:36 +00:00
279 lines
9.1 KiB
Groff
279 lines
9.1 KiB
Groff
.TH MKVEXTRACT "1" "October 2008" "mkvextract v2.4.0" "User Commands"
|
|
|
|
|
|
.SH NAME
|
|
mkvextract \- extract tracks from Matroska files into other files
|
|
|
|
|
|
.SH SYNOPSIS
|
|
.B mkvextract
|
|
tracks <\fIinname\fR> [\fIoptions\fR] [\fITID1\fR:\fIout1\fR [\fITID2\fR:\fIout2\fR ...]]
|
|
.br
|
|
.B mkvextract
|
|
tags <\fIinname\fR> [\fIoptions\fR]
|
|
.br
|
|
.B mkvextract
|
|
attachments <\fIinname\fR> [\fIoptions\fR] [\fIAID1\fR:\fI[out1]\fR [\fIAID2\fR:\fI[out2]\fR ...]]
|
|
.br
|
|
.B mkvextract
|
|
chapters <\fIinname\fR> [\fIoptions\fR]
|
|
.br
|
|
.B mkvextract
|
|
cuesheet <\fIinname\fR> [\fIoptions\fR]
|
|
.br
|
|
.B mkvextract
|
|
timecodes_v2 <\fIinname\fR> [\fITID1\fR:\fIout1\fR [\fITID2\fR:\fIout2\fR ...]]
|
|
.br
|
|
.B mkvextract
|
|
<\-h|\-V>
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.LP
|
|
This program extracts specific parts from a Matroska file to other useful
|
|
formats. The first argument tells \fBmkvextract\fR what to extract. Currently
|
|
supported is the extraction of \fBtracks\fR, \fBtags\fR, \fBattachments\fR,
|
|
\fBchapters\fR, \fBCUE sheets\fR and \fBtimecodes\fR.
|
|
The second argument is the name of the source file. It must be a Matroska file.
|
|
|
|
.LP
|
|
The following command line options are available for each track in the
|
|
\fBtracks\fR extraction mode.
|
|
They have to appear in front of the track specification (see below) they should
|
|
be applied to.
|
|
.TP
|
|
\fB\-c\fR \fIcharset\fR
|
|
Sets the charset to convert the next text subtitle track to. Only valid if the
|
|
next track ID targets a text subtitle track. It defaults to UTF-8.
|
|
.TP
|
|
\fB\-\-blockadd\fR \fIlevel\fR
|
|
Keep only the BlockAdditions up to this level.
|
|
The default is to keep all levels.
|
|
This option only affects certain kinds of codecs like WAVPACK4.
|
|
.TP
|
|
\fB\-\-cuesheet\fR
|
|
Causes \fBmkvextract\fR to extract a CUE sheet from the chapter information
|
|
and tag data for the following track into a file whose name is the track's
|
|
output name with ".cue" appended to it.
|
|
.TP
|
|
\fB\-\-fullraw\fR
|
|
Extracts the raw data into a file without any container data around it.
|
|
The contents of the CodecPrivate element will be written to the file first
|
|
if the track contains such a header element.
|
|
This mode works with all CodecIDs, even the ones that \fBmkvextract\fR doesn't
|
|
support otherwise, but the resulting files might not be usable.
|
|
.TP
|
|
\fB\-\-no\-ogg\fR
|
|
Only valid for FLAC tracks. Normally FLAC tracks are embedded in an Ogg
|
|
transport stream. With this switch they are extracted to raw FLAC files
|
|
instead.
|
|
.TP
|
|
\fB\-\-raw\fR
|
|
Extracts the raw data into a file without any container data around it.
|
|
Unlike the \fB\-\-fullraw\fR flag this flag does not cause the contents of
|
|
the CodecPrivate element to be written to the file.
|
|
This mode works with all CodecIDs, even the ones that \fBmkvextract\fR doesn't
|
|
support otherwise, but the resulting files might not be usable.
|
|
.TP
|
|
\fITID\fR:\fIoutname\fR
|
|
Causes extraction of the track with the ID \fITID\fR into the file
|
|
\fIoutname\fR if such a track exists in the source file. This option can be
|
|
given multiple times. The track IDs are the same as the ones output by
|
|
\fBmkvmerge\fR's \fB--identify\fR option.
|
|
.br
|
|
Each output name should be used only once. The exception are RealAudio and
|
|
RealVideo tracks. If you use the same name for different tracks then those
|
|
tracks will be saved in the same file. Example:
|
|
.br
|
|
\fBmkvextract tracks input.mkv 1:output-two-tracks.rm 2:output-two-tracks.rm\fR
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
Command line syntax for the \fBtags\fR extraction mode:
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
Command line syntax for the \fBattachments\fR extraction mode:
|
|
.TP
|
|
\fIAID\fR:\fIoutname\fR
|
|
Causes extraction of the attachment with the ID \fIAID\fR into the file
|
|
\fIoutname\fR if such an attachment exists in the source file.
|
|
If the \fIoutname\fR is left empty then the name of the attachment inside
|
|
the Matroska file is used instead.
|
|
This option can be given multiple times.
|
|
The attachment IDs are the same as the ones output by \fBmkvmerge\fR's
|
|
\fB--identify\fR option.
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
Command line syntax for the \fBchapters\fR extraction mode:
|
|
.TP
|
|
\fB\-s\fR, \fB\-\-simple\fR
|
|
Exports the chapter information in the simple format used in the OGM tools
|
|
(CHAPTER01=..., CHAPTER01NAME=...). In this mode some information has to be
|
|
discarded. Default is to output the chapters in XML format.
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
Command line syntax for the \fBcuesheet\fR extraction mode:
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
Command line syntax for the \fBtimecodes_v2\fR extraction mode:
|
|
.TP
|
|
\fB\-v\fR, \fB\-\-verbose\fR
|
|
Be verbose and show all the important Matroska elements as they're read.
|
|
|
|
.LP
|
|
If one of the following options is used as the only command line argument
|
|
additional information about \fBmkvextract\fR is output.
|
|
.TP
|
|
\fB\-h\fR, \fB\-\-help\fR
|
|
Show usage information.
|
|
.TP
|
|
\fB\-V\fR, \fB\-\-version\fR
|
|
Show version information.
|
|
|
|
|
|
.SH NOTES
|
|
The decision about the output format is based on the track type, not on the
|
|
extension used for the output file name. The following track types are
|
|
supported at the moment:
|
|
.TP
|
|
V_MPEG4/ISO/AVC
|
|
H.264 / AVC video tracks are written to H.264 elementary streams which
|
|
can be processed further with e.g. MP4Box from the GPAC package.
|
|
.TP
|
|
V_MS/VFW/FOURCC
|
|
Fixed FPS video tracks with this CodecID are written to AVI files.
|
|
.TP
|
|
V_REAL/*
|
|
RealVideo tracks are written to RealMedia files.
|
|
.TP
|
|
A_MPEG/L3, A_AC3
|
|
These will be extracted to raw MP3 and AC3 files.
|
|
.TP
|
|
A_PCM/INT/LIT
|
|
Raw PCM data will be written to a WAV file.
|
|
.TP
|
|
A_AAC/MPEG2/*
|
|
All MPEG2 AAC files will be written into an AAC file with ADTS headers before
|
|
each packet.
|
|
.TP
|
|
A_AAC/MPEG4/*
|
|
All MPEG4 AAC files will be written into an AAC file with ADTS headers before
|
|
each packet. The ADTS headers will not contain the deprecated emphasis field.
|
|
.TP
|
|
A_VORBIS
|
|
Vorbis audio will be written into an Ogg/Vorbis file.
|
|
.TP
|
|
A_REAL/*
|
|
RealAudio tracks are written to RealMedia files.
|
|
.TP
|
|
A_TTA1
|
|
TrueAudio tracks are written to TTA files. Please note that due to Matroska's
|
|
limited timecode precision the extracted file's header will be different
|
|
regarding two fields: data_length (the total number of samples in the file)
|
|
and the CRC.
|
|
.TP
|
|
S_TEXT/UTF8
|
|
Simple text subtitles will be written as SRT files.
|
|
.TP
|
|
S_TEXT/SSA, S_TEXT/ASS
|
|
SSA and ASS text subtitles will be written as SSA/ASS files respectively.
|
|
.TP
|
|
S_KATE
|
|
Kate streams will be written within an Ogg container.
|
|
.LP
|
|
\fBTags\fR are converted to a XML format. This format is the same that
|
|
\fBmkvmerge\fR supports for reading tags.
|
|
.LP
|
|
\fBAttachments\fR are written to they output file as they are. No conversion
|
|
whatsoever is done.
|
|
.LP
|
|
\fBChapters\fR are converted to a XML format. This format is the same that
|
|
\fBmkvmerge\fR supports for reading chapters. Alternatively a stripped-down
|
|
version can be output in the simple OGM style format.
|
|
.LP
|
|
\fBTimecodes\fR are first sorted and then output as a timecode v2 format
|
|
compliant file ready to be fed to mkvmerge.
|
|
The extraction to other formats (v1 and v3) is not supported.
|
|
|
|
.SH EXAMPLES
|
|
Let's assume you've made a Matroska file with one video track, two audio tracks
|
|
and two subtitle tracks, and you need the second audio track and the first
|
|
subtitle track. So first fire up \fBmkvmerge\fR with the \fB--identify\fR
|
|
option:
|
|
.LP
|
|
$ \fBmkvmerge -i movie.mkv\fR
|
|
.br
|
|
File 'movie.mkv': container: Matroska
|
|
.br
|
|
Track ID 1: video (V_MS/VFW/FOURCC, DIV3)
|
|
.br
|
|
Track ID 2: audio (A_MPEG/L3)
|
|
.br
|
|
Track ID 3: audio (A_VORBIS)
|
|
.br
|
|
Track ID 4: subtitles (S_TEXT/UTF8)
|
|
.br
|
|
Track ID 5: subtitles (S_TEXT/UTF8)
|
|
.LP
|
|
Now you can call \fBmkvextract\fR like this:
|
|
.LP
|
|
$ \fBmkvextract tracks movie.mkv 3:audio.ogg 4:subtitles.srt\fR
|
|
.LP
|
|
Another example. Let's assume you have a Matroska file with one RealVideo v10
|
|
track, one Vorbis audio track and one RealAudio (COOK) track. The
|
|
identification output might look like this:
|
|
.LP
|
|
$ \fB mkvmerge -i movie2.mkv\fR
|
|
.br
|
|
File 'movie2.mkv': container: Matroska
|
|
.br
|
|
Track ID 1: video (V_REAL/RV40)
|
|
.br
|
|
Track ID 2: audio (A_VORBIS)
|
|
.br
|
|
Track ID 3: audio (A_REAL/COOK)
|
|
.LP
|
|
Let's further assume you want only need the video and the RealAudio track but
|
|
both in the same output file. This is possible for RealMedia files by using
|
|
the same output name for those tracks that you want to end up in the same
|
|
file:
|
|
.LP
|
|
$ \fBmkvextract tracks movie2.mkv 1:extracted.rm 3:extracted.rm\fR
|
|
.LP
|
|
Sometimes you the raw data of a track might even be useful, e.g. for MPEG-1
|
|
tracks.
|
|
In this case you can use a track flag like this:
|
|
.LP
|
|
$ \fBmkvextract tracks movie3.mkv --fullraw 1:extracted.mpeg\fR
|
|
.LP
|
|
If you need the timecodes for all the blocks of track 2 from a file then
|
|
you can let mkvextract create a timecode v2 format file like this:
|
|
.LP
|
|
$ \fBmkvextract timecodes_v2 input.mkv 2:timecodes-track2.txt\fR
|
|
|
|
.SH AUTHOR
|
|
.I mkvextract
|
|
was written by Moritz Bunkus <moritz@bunkus.org>.
|
|
.SH SEE ALSO
|
|
.BR mkvmerge (1),
|
|
.BR mkvinfo (1)
|
|
.SH WWW
|
|
The newest version can always be found at
|
|
.UR http://www.bunkus.org/videotools/mkvtoolnix/
|
|
<http://www.bunkus.org/videotools/mkvtoolnix/>
|
|
.UE
|