makemkvcon.1 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. .TH MAKEMKVCON "1" "May 2014" "MakeMKV 1.8"
  2. \" Completely disable hyphenation. It is a very annoying feature while reading man pages, in my opinion.
  3. .nh
  4. .SH NAME
  5. makemkvcon \- Decrypt DVD and Blu-ray discs to your hard disk using a simple command line interface.
  6. .SH SYNOPSIS
  7. .B makemkvcon
  8. [\fIOPTIONS\fR]
  9. \fICOMMAND\fR
  10. [\fIPARAMETERS\fR]
  11. .SH DESCRIPTION
  12. MakeMKV is a simple solution to convert video that you own into a free and patents-unencumbered format which can be played everywhere. MakeMKV is a format converter, otherwise called a "transcoder". It converts the video clips from proprietary (and usually encrypted) disc into a set of MKV files, preserving most information but not changing it in any way. Additionally MakeMKV can instantly stream decrypted video without intermediate conversion to wide range of media players.
  13. .SH GENERAL\ OPTIONS
  14. The options described below apply to all makemkvcon \fICOMMANDS\fR.
  15. .IP \fB--messages\fR=\fIFILE\fR
  16. Output all messages to \fIFILE\fR instead of stdandard output.
  17. The following special \fIFILE\fR names are recognized:
  18. .TS
  19. left allbox tab(%);
  20. c c
  21. l l
  22. l l
  23. l l.
  24. \fBFILE\fR % \fBSpecial Meaning\fR
  25. -stdout % standard output
  26. -stderr % standard error
  27. -null % disable output
  28. .TE
  29. .IP \fB--progress\fR=\fIFILE\fR
  30. Output all progress messages to \fIFILE\fR. By default no progress is output.
  31. The same special \fIFILE\fR names as supported by \fI--messages\fR are recognized, with one addition:
  32. .TS
  33. left allbox tab(%);
  34. c c
  35. l l.
  36. \fBFILE\fR % \fBSpecial Meaning\fR
  37. -same % output to the same \fIFILE\fR as \fI--messages\fR
  38. .TE
  39. .IP \fB--debug\fR[=\fIFILE\fR]
  40. Enable debug messages, and, optionally, output those messages to \fIFILE\fR instead of the debug location specified in program preferences.
  41. .IP \fB--directio\fR=\fIBOOL\fR
  42. Disable direct disc access if \fIBOOL\fR is \fIfalse\fR. Enable direct disc access if \fIBOOL\fR is \fItrue\fR.
  43. .IP \fB--noscan\fR
  44. Do not access any media while scanning a disc, and do not check for media insertion and removal. This option may be helpful when other applications are actively accessing discs in other drives. It does not, however, alleviate the need to MakeMKV to have exclusive access to the disc drive you specify to this program.
  45. .IP \fB--cache\fR=\fISIZE\fR
  46. Specify the maximum \fISIZE\fR of the read cache used by MakeMKV (in megabytes). By default this program may consume a very large amount of memory. Although this high memory consumption allows MakeMKV to quickly and efficiently buffer chunks of data from the DVD or Blu-ray disc, it may noticeably slow down memory-constrained systems or those with very little free RAM. If you choose to limit the cache \fISIZE\fR with this option, please keep in mind that 128 MB is the recommended minimum for streaming and backup, at least 512 MB is necessary for smooth DVD conversion, and at least 1024 MB is necessary for smooth Blu-ray conversion.
  47. .SH CONVERSION\ OPTIONS
  48. The options described below are for source conversion and apply only to the \fImkv\fR \fICOMMAND\fR.
  49. .IP \fB--minlength\fR=\fILENGTH\fR
  50. Only capture titles that are at least \fILENGTH\fR seconds long.
  51. .SH STREAMING\ OPTIONS
  52. The options described below are for network related and apply only to the \fIstream\fR \fICOMMAND\fR.
  53. .IP \fB--upnp\fR=\fIBOOL\fR
  54. Disable Universal Plug-and-Play (UPNP) streaming if \fIBOOL\fR is \fIfalse\fR. Enable UPNP streaming if \fIBOOL\fR is \fItrue\fR.
  55. .IP \fB--bindip\fR=\fIADDRESS\fR
  56. Exclusively bind the UPNP server to \fIADDRESS\fR. By default server binds to the first available address, and its local web server listens on all available addresses.
  57. .IP \fB--bindport\fR=\fIPORT\fR
  58. Bind the web server to \fIPORT\fR instead of 51000.
  59. .SH BACKUP\ OPTIONS
  60. The options described below related to backup purposes and apply only to the \fIbackup\fR \fICOMMAND\fR.
  61. .IP \fB--decrypt\fR
  62. Decrypt stream files during backup. By default a strict backup will be made, which means nothing is decrypted sans this option.
  63. .SH AUTOMATION\ OPTIONS
  64. The options described below are designed to be used by those wishing to automate aspects of this program. They are particularly useful in shell scripts.
  65. .IP \fB-r\fR,\ \fB--robot\fR
  66. Enable automation mode. In this mode MakeMKV will output more information in a format that is easier to parse by scripts (particularly with regular expressions), but may slightly hinder direct human consumption. All output is line-based and flushed on line end. All strings are quoted, and all control characters and quotes are escaped by backlashes. If you intend to automate this program, it is highly recommended that you use this option. Some options make reference to \fIapdefs.h\fR, which is among the open-source components of MakeMKV and can be found in the makemkv-oss source package in Debian. These values will not change in future versions.
  67. .SH COMMANDS
  68. Each instantiation of this program requires a \fICOMMAND\fR. This \fICOMMAND\fR determines, on a holistic level, which action MakeMKV should attempt to perform. All supported commands are described below.
  69. .IP \fBinfo\fR\ \fISOURCE\fR
  70. Print detailed descriptory information about the \fISOURCE\fR disc.
  71. .IP \fBmkv\fR\ \fISOURCE\fR\ \fITITLE_ID\fR\ \fIDESTINATION_DIRECTORY\fR
  72. Save the title on the \fISOURCE\fR disc with the ID \fITITLE_ID\fR to an MKV file in the directory \fIDESTINATION_DIRECTORY\fR.
  73. .IP \fBstream\fR\ \fISOURCE\fR
  74. Start a local streaming server backed by the titles on \fISOURCE\fR.
  75. .IP \fBbackup\fR\ \fISOURCE\fR\ \fIDESTINATION_DIRECTORY\fR
  76. Faithfully backup the contents of \fISOURCE\fR to the \fIDESTINATION_DIRECTORY\fR on your hard disk.
  77. .SH SOURCES
  78. Since MakeMKV is primarily designed to operate on optical media, each \fICOMMAND\fR must be immediately postfixed by a \fISOURCE\fR. However, because this program supports a wide range of input sources - including ISO images, directories, optical discs, and raw devices - each \fISOURCE\fR must be specified according to the source specification detailed below. The prefixes mandated by this specification hint to MakeMKV the type of media it should attempt to access. If in doubt, try the \fIdisc\fR \fISOURCE\fR; it is the most commonly used.
  79. .TS
  80. left allbox tab(%);
  81. c c
  82. l l
  83. l l
  84. l l
  85. l l.
  86. \fBSOURCE\fR % \fBDescription\fR
  87. iso:\fIFILE\fR % Open the ISO image specified by \fIFILE\fR.
  88. file:\fIDIRECTORY\fR % Open the files contained in \fIDIRECTORY\fR.
  89. disc:\fIDISC_ID\fR % Open the optical disc with the ID \fIDISC_ID\fR. Use the \fIinfo\fR command to get a list available \fIDISC_ID\fR's.
  90. dev:\fIDEVICE\fR % Open the raw device with the name \fIDEVICE\fR. On Linux the first optical disc drive (and hence the first available \fIDEVICE\fR) is typically /dev/sr0.
  91. .TE
  92. .SH MESSAGE\ FORMATS
  93. There are several different types of messages that MakeMKV might generate. Each type is documented below. The short codes documented first are used to prefix messages in \fI--robot\fR mode.
  94. \fBMessage Output Format:\fR\ \fIMSG\fR:code,flags,count,message,format,param0,param1,...
  95. .TS
  96. left allbox tab(%);
  97. c c
  98. l l
  99. l l
  100. l l
  101. l l
  102. l l
  103. l l.
  104. \fBMSG\fR % \fBDescription\fR
  105. code % unique message code which should be used to identify a particular string in a language-neutral way
  106. flags % message flags (see \fIAP_UIMSG_xxx\fR flags in \fIapdefs.h\fR)
  107. count % number of parameters
  108. message % raw message string suitable for output
  109. format % localized format string used for the message
  110. param[0-9]+ % parameter for the message
  111. .TE
  112. .br
  113. \fBCurrent Progress Title Format:\fR\ \fIPRGC\fR:code,id,name
  114. .br
  115. \fBTotal Progress Title Format:\fR\ \fIPRGT\fR:code,id,name
  116. .TS
  117. left allbox tab(%);
  118. c c
  119. l l
  120. l l
  121. l l.
  122. \fBPRGC|PRGT\fR % \fBDescription\fR
  123. code % unique message code
  124. id % operation sub-id
  125. name % name string
  126. .TE
  127. .br
  128. \fBProgress Bar Format (for current and total progress)\fR:\ \fIPRGV\fR:current,total,max
  129. .TS
  130. left allbox tab(%);
  131. c c
  132. l l
  133. l l
  134. l l.
  135. \fBPRGV\fR % \fBDescription\fR
  136. current % current progress value
  137. total % total progress value
  138. max % maximum possible value for a progress bar (constant)
  139. .TE
  140. .br
  141. \fBDrive Scan Message Format\fR:\ \fIDRV\fR:index,visible,enabled,flags,drive_name,disc_name
  142. .TS
  143. left allbox tab(%);
  144. c c
  145. l l
  146. l l
  147. l l
  148. l l
  149. l l
  150. l l.
  151. \fBDRV\fR % \fBDescription\fR
  152. index % drive index
  153. visible % set to 1 if drive is present
  154. enabled % set to 1 if drive is accessible
  155. flags % media flags (see \fIAP_DskFsFlagXXX\fR in \fIapdefs.h\fR)
  156. drive name % drive name string
  157. disc name % disc name string
  158. .TE
  159. .br
  160. \fBDisc Information Output Format\fR:\ \fITCOUT\fR:count
  161. .TS
  162. left allbox tab(%);
  163. c c
  164. l l.
  165. \fBTCOUT\fR % \fBDescription\fR
  166. count % number of titles on the disc
  167. .TE
  168. .br
  169. \fBDisc Information Format\fR:\ \fICINFO\fR:id,code,value
  170. .br
  171. \fBTitle Information Format\fR:\ \fITINFO\fR:id,code,value
  172. .br
  173. \fBStream Information Format\fR:\ \fISINFO\fR:id,code,value
  174. .TS
  175. left allbox tab(%);
  176. c c
  177. l l
  178. l l
  179. l l.
  180. \fBCINFO|TINFO|SINFO\fR % \fBDescription\fR
  181. id % attribute id (see \fIAP_ItemAttributeId\fR in \fIapdefs.h\fR)
  182. code % message code (if the attribute value is a constant string)
  183. value % attribute value
  184. .TE
  185. .SH EXAMPLES
  186. The following examples demonstrate the proper syntax for performing various common operations. If you need more help interpreting them, read the documentation above, and use common sense.
  187. \fB1.\fR\ Copy all titles from the first disc, and save them as decrypted MKV files in the \fIVideos\fR directory in your home folder.
  188. .br
  189. \fBmakemkvcon mkv disc:0 all ~/Videos\fR
  190. \fB2.\fR\ List all available disc drives.
  191. .br
  192. \fBmakemkvcon -r --cache=1 info disc:9999\fR
  193. \fB3.\fR\ Decrypt and backup the first disc to \fI/tmp\fR in automation mode with progress output.
  194. .br
  195. \fBmakemkvcon backup --decrypt --cache=16 --noscan -r --progress=-same disc:0 /tmp\fR
  196. \fB4.\fR\ Start a UPNP streaming server with all output suppressed on port 51000 with the address 192.168.1.102.
  197. .br
  198. \fBmakemvcon stream --upnp=1 --cache=128 --bindip=192.168.1.102 --bindport=51000 --messages=-none\fR
  199. .SH AUTHOR
  200. This manual page was written by Karl Lenz <xorangekiller@gmail.com> for the Debian project (but may be used by others).
  201. .SH COPYRIGHT
  202. 2007-2014 GuinpinSoft Inc.
  203. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.
  204. The MakeMKV console interface is provided "as is" with no warranty. This program is proprietary software: you can redistribute it under the terms of the MakeMKV End-User License Agreement (EULA) as provided by GuinpinSoft Incorporated. On Debian systems, the complete text of this license can be found in "/usr/share/doc/makemkv-cli/copyright".
  205. .SH SEE\ ALSO
  206. .BR makemkv (1),
  207. .BR mmdtsdec (1),
  208. .BR ffmpeg (1),
  209. .BR vlc (1),
  210. .BR mpv (1)