home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 April / CMCD0404.ISO / Software / Freeware / Multimedia / Mode2cd / readme.txt < prev   
Text File  |  2003-03-14  |  19KB  |  441 lines

  1.  
  2. Mode2 CD Maker v1.5.1
  3. =====================
  4.  
  5. Disclaimer
  6. ----------
  7.  
  8. This program is free software; you can redistribute it and/or modify
  9. it under the terms of the GNU General Public License as published by
  10. the Free Software Foundation; either version 2 of the License, or
  11. (at your option) any later version.
  12.  
  13. This program is distributed in the hope that it will be useful,
  14. but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. GNU General Public License for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with this program; if not, write to the Free Software
  20. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  
  22.  
  23. Purpose
  24. -------
  25.  
  26. With this tool you can build a CD/XA Bridge image using any file you want
  27. (not just MPEGs). What's the point? Well, using Mode2/Form2 you have bigger
  28. user data sector sizes so you can fit more data in a single CD-R (up to 800
  29. MB of data in a 80 min. disc).
  30.  
  31. What's the drawback, then? There is an issue on how Windows handles these
  32. discs. It reads the files burned this way as RAW data, and it also appends
  33. a RIFF/CDXA header at the beggining of the file. So you cannou burn anything
  34. you want ant then just see it like any other file: you must deal with this
  35. RIFF/CDXA stuff.
  36.  
  37. Here you have the theoretical max. capacities for each type of media:
  38.  
  39.           +--------+--------+--------+--------+
  40.           | 74 min | 80 min | 90 min | 99 min |
  41.  +--------+--------+--------+--------+--------+
  42.  | Mode 1 | 650 MB | 700 MB | 790 MB | 870 MB |
  43.  +--------+--------+--------+--------+--------+
  44.  | Mode 2 | 738 MB | 795 MB | 896 MB | 987 MB |
  45.  +--------+--------+--------+--------+--------+
  46.  
  47. The Mode 1 line shows the "original" CD capacity, the Mode 2 the one that
  48. can be achieved using mode2cdmaker. In the practice you'll have to substract
  49. approx. 1 MB from the Mode 2 values since it's reserved for the ISO Bridge
  50. track. In my calculations 1 MB = 2^20 (1024*1024), and not this 1000*1000
  51. stupid value used by the HD makers' marketing division.
  52.  
  53.  
  54. Usage
  55. -----
  56.  
  57. mode2cdmaker -m "movie1.avi" -d dirname -f "readme.txt" -v MODE2CD -e DAT
  58.  
  59. -h, -help    this help
  60. -v, -volume  volume name (default: MODE2CD)
  61. -o, -output  output image base name (*.bin, *.toc, *.cue) (default: image)
  62. -f, -file    add Form1 files
  63. -m, -movie   add movie (Form2) files (by default)
  64. -d, -dir     add subdirectory
  65. -e, -ext     set default extension for Form2 files (default: DAT)
  66. -c, -dos     assume DOS charset for input file names
  67. -x, -extname keep original Form2 file extension
  68. -s, -single  create a single track image
  69. -ccd         output CloneCD image (*.img, *.sub, *.ccd)
  70. -raw         output RAW-96 image (*.img)
  71. -list        use filelist for input Form1 files
  72. -paramfile   use parameter file for input
  73. -isolevel1   force ISO 9660 Level 1 for file names
  74. -isolevel2   force ISO 9660 Level 2 for file names
  75.  
  76. * Add movie files: -m "d:\path\my movie.avi" [...]
  77.  
  78. This is the main option in Mode2 CD Maker. By the use of -m (or -movie) option 
  79. you can add any number of files to the current CD structure that are entitled to 
  80. be burned as Mode2/Form2. You can enter as many files as you want after a single 
  81. -m option, provided you enter the full path for each one. You can also use 
  82. wildcards such as "*.*" or "*.avi" instead of adding single files.
  83.  
  84. Note that by default the original file extension will be changed to ".DAT" for 
  85. all Form2 files. This is needed because once burned as Form2, the original file 
  86. contents won't be the same as the original, because of the way these files are 
  87. readed by the OS (so you need the RIFF/CDXA reader filter to be able to play 
  88. them). You can change this behaviour with the options below.
  89.  
  90. * Add other files: -f "d:\path\my file.ext" [...]
  91.  
  92. The -f (or -file) option works exactly equal as the -m option but in this time 
  93. the files specified here will be recorded as Form1, not taking any advantage of 
  94. the extra CD space, but you can read them just like any other file on the HD. 
  95. This is meant for executable/text and other files that are not supported through 
  96. DirectShow (so you can't read them using the RIFF/CDXA filter). As an example, 
  97. you can add drivers, players or text files to the CD structure this way.
  98.  
  99. Unlike Form2 files, these will retain their original file name and extension, 
  100. since no change is made to their contents.
  101.  
  102. * Add directory: -d "dir name"
  103.  
  104. By the use of the -d (or -dir) option you can add a new subdirectory to the 
  105. current CD structure. After this option any file entered using the -m or -f 
  106. option will lie on the last directory specified. Note that you can't add full 
  107. paths from the HD inluding its directory structure using the -m or -f option, 
  108. hence the usefulness of this option.
  109.  
  110. An example: -m "movie.avi" -d "player" -f "c:\my favorite player\*.*"
  111.  
  112. This will add movie1.dat to the root directory, make a new dir named "player" 
  113. and add the contents of the path specified after -f option to the "player" 
  114. directory on the CD (not including subdirectories, though).
  115.  
  116. Each directory entered after the -d option will be created in root. If you want 
  117. to specify a subdirectory tree, separate each directory level with backslashes, 
  118. but remember to create their parent directory first. An example of nested 
  119. subdirectories:
  120.  
  121. -d "player" -f "c:\my player\*.*" -d "player\filters" -f "c:\my player\filters\*.*"
  122.  
  123. * Force ISO 9660 Level 1 or 2 file names: -isolevel1, -isolevel2
  124.  
  125. By default all names are saved in ASCII form (i.e. they maintain their original 
  126. uppercase/lowercase characters and their length). In case you want to fit to 
  127. standards you can force ISO 9660 Level 1 (i.e. all uppercase, 8+3 filenames) or 
  128. Level 2 (i.e. all uppercase, max. 31 chars per file name) conversion to all file 
  129. names. As an example a file called "My Movie.avi" would become "MY_MOVIE.DAT" 
  130. after being converted to ISO Level 1.
  131.  
  132. * Change default Form2 extension: -e "ext"
  133.  
  134. By default all Form2 files will change their extension to "DAT" as stated above. 
  135. You can change this default extension by using your favorite one thanks to the -
  136. e (or -ext) option.
  137.  
  138. However note that by any means it's recommended using a registered extension 
  139. here since it may lead to problems when trying to play the file (this is the 
  140. case with OGG/OGM, as an example).
  141.  
  142. * Keep original Form2 extension into file name: -x
  143.  
  144. You can keep the original Form2 file extension into the file name by adding the 
  145. -x option to the command line.
  146.  
  147. An example: -m "this is a sample movie.avi" -x
  148.  
  149. Will create "this is a sample movie.avi.dat"
  150.  
  151. * Use DOS charset for source file names: -c
  152.  
  153. In case you want to enter file names with international character sets using DOS 
  154. character set (this is useful for BAT files, and some languages such as Russian) 
  155. you can add the -c (or -dos) option to tell the program to do the appropiate 
  156. conversion before trying to open the file. Otherwise you'd get a "file not 
  157. found" error.
  158.  
  159. * Set CD volume name: -v "name"
  160.  
  161. With this option you can specify a new volume name for the current CD, other 
  162. than the default "MODE2CD".
  163.  
  164. * Set output image base name: -o "d:\path\image"
  165.  
  166. With the -o (or -output) option you can specify a default path and base file 
  167. name for the output image. The default path is current directory and the base 
  168. name "image". Three files will be created using this information: *.cue, *.bin 
  169. and *.toc.
  170.  
  171. An example: -o "d:\cdimages\image"
  172.  
  173. This will create: image.bin, image.cue and image.toc under "d:\cdimages" path.
  174.  
  175. * Create a single track image: -s
  176.  
  177. One of the limitations of standard Mode2/Form2 CDs is the minimum track size 
  178. (300 sectors), so any file being recorded as Mode2/Form2 must be greater than 
  179. 300 Kb in size. On the other side every track must be preceeded by a pregap 
  180. which adds extra 300 Kb for each Form2 file, making it unsuitable for a lot of 
  181. small files such as MP3.
  182.  
  183. In that case you can add the -s (or -single) option which forces the creation of 
  184. a single-track CD. This makes all files lie on a single track, which has the 
  185. following advantages: now each Form2 file can be smaller than 300 Kb, no pregaps 
  186. are added for each one (thus saving more space) and the ISO filesystem is 
  187. smaller, too, because there is no need for a separate ISO Bridge track.
  188.  
  189. This makes a better use of the available CD space, specially for large file 
  190. collections where previously the tool would have not been able to take advantage 
  191. of the extra space (since all gained space was then lost on pregaps).
  192.  
  193. As a disadvantage, these CDs are currently unusable from Linux since the 
  194. software currently available under Linux that can read XCDs works in a track-
  195. basis and not in a filesystem-basis, so it needs each Form2 file to lie on a 
  196. separate track. Examples of this are mplayer as well as the vcdfs and cdfs 
  197. drivers. Unfortunately, seems Linux can't read XCDs the same way as Windows due 
  198. to a lack of support for Form2 files in the iso9660 driver (they are readed as 
  199. Form1 files).
  200.  
  201. * Output CloneCD (CCD) image: -ccd
  202.  
  203. New to 1.5.1 is the possibility to create a CloneCD (CC/IMG/SUB) image set, instead
  204. of the default BIN/CUE image. These images contain more accurate information about
  205. every sector and thus gives less compatibility problems with certain recorders. The
  206. only drawback is that you need a compatible recording tool (such as CloneCD or
  207. Alcohol 120%) in order to burn them.
  208.  
  209. * Output RAW-96 image: -raw
  210.  
  211. With this option you can create a single file RAW-96 image, which is intended to be
  212. recorded with with recent cdrecord versions using the -clone mode. Only single track
  213. images can be created this way. This feature has not been tested, though.
  214.  
  215. * Input Form1 file list: -list listfile.txt
  216.  
  217. With this option you can enter a simple filelist contained in a text file to be
  218. recorded as Form1 content. Every line may contain only a single file with its
  219. complete path. This way you can overcome the max command line length limit when
  220. entering a big amount of files. Subdirectories cannot be created this way (use it
  221. as an equivalent to the -f option). Paths containing spaces should NOT be enclosed
  222. between quotes, as this is a command-line only requirement.
  223.  
  224. * Input parameter file: -paramfile params.txt
  225.  
  226. This option replaces the entire command line structure and takes every option from
  227. a parameter file. The purpose of this is overcoming the max command line lenght.
  228. Every single parameter must stay in a single line, ending with a line feed.
  229. Otherwise the usage is the same as the command line. As with the previous option,
  230. you should NOT enclose paths containing spaces between quotes. An example of a
  231. parameter file:
  232.  
  233. -m
  234. d:\movie\my favorite movie.avi
  235. -d
  236. player
  237. -f
  238. d:\my player\*.zip
  239. -o
  240. d:\burn\cdimage
  241. -ccd
  242. -s
  243. -v
  244. Movie Title
  245.  
  246.  
  247. Burning
  248. -------
  249.  
  250. Beware that if the source Form2 files are not an exact multiple of 2324
  251. bytes, padding zeroes will be added at the end. There's nothing I can do
  252. about this, this is a limitation of Mode2/Form2.
  253.  
  254. While building the image the program will show an estimated CD size required
  255. to hold the data you are putting into the image. This size value is
  256. calculated in terms of Mode 1, so you can easily compare it with the actual
  257. CD size as shown when you retrieve the media information with your favorite
  258. burning program (i.e. 700 MB means a full 80 min CD).
  259.  
  260. Once it's finished you will end with three files:
  261.  
  262. image.cue      CUE file for CDR-WIN
  263. image.toc      TOC file for cdrdao
  264. image.bin      BIN image
  265.  
  266. To burn with CDR-WIN just load the *.cue file and burn it.
  267.  
  268. To burn with cdrdao:
  269.  
  270. > cdrdao scanbus
  271. > cdrdao write --device 1,0,0 --driver generic-mmc image.toc
  272.  
  273. In case you chose CloneCD output five files are created by default:
  274.  
  275. image.ccd      CloneCD cuesheet
  276. image.sub      Subchannel data
  277. image.img      Binary image
  278. image.cue      CDR-WIN CUE for compatibility
  279. image.toc      TOC file for cdrdao
  280.  
  281. Just load the image.ccd file into CloneCD or Alcohol 120% and burn it.
  282.  
  283. If you have troubles you can also use any other recording software that
  284. supports raw BIN images, however this won't be a real CD/XA Bridge, but a
  285. single track, mixed Form1/Form2 CD. anyways Windows can't see the
  286. difference, and it works fine. To burn with Nero as a single track:
  287.  
  288. 1. Choose File/Burn Image menu
  289. 2. Load the BIN file
  290. 3. Select Mode2
  291. 4. Burn!
  292.  
  293.  
  294. Reading
  295. -------
  296.  
  297. To be able to play these files directly from the CD, you'll need either a 
  298. DirectShow filter supporting RIFF/CDXA parsing (such as XCD reader filter made 
  299. by avih & me), or a player with this capability. As an example there is at least 
  300. a portable MP3 player which has been proved to directly support Mode2 Form2 CDs: 
  301. the Freecom Beatman CD/MP3 Player.
  302.  
  303. You can also convert the files back to its original state with a helper tool
  304. I've included called dat2file. The usage is:
  305.  
  306. > dat2file "d:\my movie.dat" "c:\my movie.avi"
  307.  
  308. Beware that if the source file was not an exact multiple of 2324, there will
  309. be some padding zeroes at the end of the file. This might prevent it of
  310. being played properly.
  311.  
  312.  
  313. Credits
  314. -------
  315.  
  316. mode2cdmaker is based on vcdtools-0.4 by Rainer Johanni
  317.  
  318. dat2file is based on cdxa2mpeg by Herbert Valerio Riedel
  319.  
  320. Many thanks to Nic, int 21h, Nah, ubik29 & Martin for their contributions to
  321. this tool, and of course MaTTeR and Kxy for their extensive testing!
  322.  
  323.  
  324. Official homepage: http://webs.ono.com/de_xt/
  325.  
  326. DeXT @ 2003
  327.  
  328.  
  329. History
  330. -------
  331.  
  332. 2003/03/14 - 1.5.1 - Alex Noe & DeXT
  333.     
  334. mkvcdfs.c:  added CloneCD (CCD/SUB/IMG) image output support (Alex Noe)
  335. mkvcdfs.c:  added filelist input support, as well as parameter file (Alex Noe)
  336. mkvcdfs.c:  cuesheets are only written after the image is created
  337. mkvcdfs.c:  enhanced file buffering
  338.  
  339. 2002/11/12 - 1.5a - DeXT
  340.  
  341. mkvcdfs.c:  fixed *stupid* bug that caused Mode2CDMaker to crash when no
  342.             subdirectories were entered (sorry)
  343.  
  344. 2002/11/07 - 1.5 - DeXT
  345.  
  346. mkvcdfs.c:  added -s option (creates single track image, removes minimum file
  347.             size limit, removes pregaps, better use of available space,
  348.             useful for many small Form2 files such as MP3 collections)
  349. mkvcdfs.c:  new command line options parser, options are more user friendly
  350. mkvcdfs.c:  by default all file names are now kept as ASCII (-l and -a
  351.             options removed), added -isolevel1 and -isolevel2 options
  352. mkvcdfs.c:  better memory management: buffers are now allocated at run-time
  353. mkvcdfs.c:  added 2 empty blocks at the end of ISO track to avoid potential
  354.             reading problems when no Form2 files where added
  355. mkvcdfs.c:  show actual data written to the CD along with estimated CD size
  356. vcdisofs.c: each directory can now contain an unlimited number of files (it
  357.             was previously limited to about 32 per directory)
  358. vcdisofs.c: added nested subdirectories support (now you can maintain the
  359.             full directory structure)
  360. vcdisofs.c: better use of ISO track space (files are being recorded right
  361.             after the ISO FS)
  362. vcdisofs.c: fixed international character set support for subdirs, too
  363.  
  364. 2002/08/26 - 1.4.2 - ML & DeXT
  365.  
  366. mkvcdfs.c:  added ML's wildcard code (for MSVC)
  367. mkvcdfs.c:  added -c option (assume DOS character set for input file names,
  368.             useful from BAT and also some languages, such as Russian)
  369. vcdisofs.c: properly support international file names on the CD
  370.  
  371. 2002/06/24 - 1.4.1
  372.  
  373. mkvcdfs.c:  fixed incorrect track numbering in CUE file
  374.  
  375. 2002/06/17 - 1.4
  376.  
  377. mkvcdfs.c:  big speedup thanks to new r/w buffering (up to 3 times faster)
  378. mkvcdfs.c:  BIN image is now referenced as relative in TOC, CUE files
  379. mkvcdfs.c:  new option: -x (keep form2 file extension in the filename)
  380. mkvcdfs.c:  new file collect routine, to allow subdirs for form2 files
  381. mkvcdfs.c:  default screen output is now stdout (so it can be redirected)
  382. mkvcdfs.c:  fixed bug where input files were not closed
  383. vcdisofs.c: subdirs now work for form2 files, too
  384. vcdisofs.c: fixed max filename length calculation (was greater than allowed)
  385. vcdisofs.c: ISO building is now faster for form1 files (no need to reserve space)
  386.  
  387. 2002/05/23 - 1.3
  388.  
  389. mkvcdfs.c:  new options added: -d, -a
  390. vcdisofs.c: added subdirectories support (for Form1 files only)
  391. vcdisofs.c: added ASCII character set support
  392. vcdisofs.c: removed default VCD-like filenames for Form2 files
  393.  
  394. 2002/05/20 - 1.2
  395.  
  396. mkvcdfs.c:  command line parser is now less tolerant to bad syntax
  397. mkvcdfs.c:  ISO FS is now built before copying actual file data
  398. mkvcdfs.c:  show total estimated CD size
  399. mkvcdfs.c:  new XA subheader which is more compatible with DVD players
  400. vcdisofs.c: added Form1 files support (through new option -f)
  401.  
  402. 2002/05/10 - 1.2pre2
  403.  
  404. mkvcdfs.c:  added progress counter and speed indicator
  405. mkvcdfs.c:  fixed DAT filesize (was 1 sector higher w/multiple of 2324)
  406. mkvcdfs.c:  fixed CUE file not being deleted on failure
  407. mkvcdfs.c:  XA subheader now marks EOF
  408. vcdisofs.c: improved XA compatibility (added XA sig for every file/dir)
  409. vcdisofs.c: added long file names support (ISO-9660 Level 2)
  410. vcdisofs.c: fixed emtpy block in ISO track
  411. dat2file:   added nice counter, too
  412. dat2file:   no need to enter destination file name
  413.  
  414. 2002/05/04 - 1.2pre
  415.  
  416. mkvcdfs.c:  new command line option parser (Nic)
  417. mkvcdfs.c:  new features (set volume name, M2F2 ext, output image) (Nic)
  418. mkvcdfs.c:  changed default volume name and image base name
  419. mkvcdfs.c:  added simple d-char (ISO-9660) converter
  420. vcdisofs.c: M2F2 file extension is no longer fixed
  421.  
  422. 2002/04/18 - beta 1.1
  423.  
  424. mkvcdfs.c:  added CUE output support
  425. vcdisofs.c: lowered ISO track size to 302 sectors (~700 Kb)
  426.  
  427. 2002/04/17 - beta 1.0 - first release, based on vcdtools-0.4
  428.  
  429. mkvcdfs.c:  changed output file method to fopen() (open() worked in text
  430.             mode, perhaps a MinGW bug?)
  431. mkvcdfs.c:  removed 30+45 empty sector padding in M2F2 track
  432. mkvcdfs.c:  now will accept any file (not just MPEG)
  433. mkvcdfs.c:  changed CD/XA track subheader to Form2/Data
  434. mkvcdfs.c:  fixed DAT file length and track file length:
  435.             * DAT file now has right size (missed 1 sector)
  436.             * CD/XA track now has 2 "ghost" sectors at the end, to
  437.               prevent any potential TAO problems
  438. vcdisofs.c: fixed make_path_tables() to not add root files as dirs
  439. vcdisofs.c: DAT files are added to the root directory instead of MPEGAV
  440. vcdisofs.c: removed unneeded VCD stuff
  441.