home *** CD-ROM | disk | FTP | other *** search
-
- Mode2 CD Maker v1.5.1
- =====================
-
- Disclaimer
- ----------
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
- Purpose
- -------
-
- With this tool you can build a CD/XA Bridge image using any file you want
- (not just MPEGs). What's the point? Well, using Mode2/Form2 you have bigger
- user data sector sizes so you can fit more data in a single CD-R (up to 800
- MB of data in a 80 min. disc).
-
- What's the drawback, then? There is an issue on how Windows handles these
- discs. It reads the files burned this way as RAW data, and it also appends
- a RIFF/CDXA header at the beggining of the file. So you cannou burn anything
- you want ant then just see it like any other file: you must deal with this
- RIFF/CDXA stuff.
-
- Here you have the theoretical max. capacities for each type of media:
-
- +--------+--------+--------+--------+
- | 74 min | 80 min | 90 min | 99 min |
- +--------+--------+--------+--------+--------+
- | Mode 1 | 650 MB | 700 MB | 790 MB | 870 MB |
- +--------+--------+--------+--------+--------+
- | Mode 2 | 738 MB | 795 MB | 896 MB | 987 MB |
- +--------+--------+--------+--------+--------+
-
- The Mode 1 line shows the "original" CD capacity, the Mode 2 the one that
- can be achieved using mode2cdmaker. In the practice you'll have to substract
- approx. 1 MB from the Mode 2 values since it's reserved for the ISO Bridge
- track. In my calculations 1 MB = 2^20 (1024*1024), and not this 1000*1000
- stupid value used by the HD makers' marketing division.
-
-
- Usage
- -----
-
- mode2cdmaker -m "movie1.avi" -d dirname -f "readme.txt" -v MODE2CD -e DAT
-
- -h, -help this help
- -v, -volume volume name (default: MODE2CD)
- -o, -output output image base name (*.bin, *.toc, *.cue) (default: image)
- -f, -file add Form1 files
- -m, -movie add movie (Form2) files (by default)
- -d, -dir add subdirectory
- -e, -ext set default extension for Form2 files (default: DAT)
- -c, -dos assume DOS charset for input file names
- -x, -extname keep original Form2 file extension
- -s, -single create a single track image
- -ccd output CloneCD image (*.img, *.sub, *.ccd)
- -raw output RAW-96 image (*.img)
- -list use filelist for input Form1 files
- -paramfile use parameter file for input
- -isolevel1 force ISO 9660 Level 1 for file names
- -isolevel2 force ISO 9660 Level 2 for file names
-
- * Add movie files: -m "d:\path\my movie.avi" [...]
-
- This is the main option in Mode2 CD Maker. By the use of -m (or -movie) option
- you can add any number of files to the current CD structure that are entitled to
- be burned as Mode2/Form2. You can enter as many files as you want after a single
- -m option, provided you enter the full path for each one. You can also use
- wildcards such as "*.*" or "*.avi" instead of adding single files.
-
- Note that by default the original file extension will be changed to ".DAT" for
- all Form2 files. This is needed because once burned as Form2, the original file
- contents won't be the same as the original, because of the way these files are
- readed by the OS (so you need the RIFF/CDXA reader filter to be able to play
- them). You can change this behaviour with the options below.
-
- * Add other files: -f "d:\path\my file.ext" [...]
-
- The -f (or -file) option works exactly equal as the -m option but in this time
- the files specified here will be recorded as Form1, not taking any advantage of
- the extra CD space, but you can read them just like any other file on the HD.
- This is meant for executable/text and other files that are not supported through
- DirectShow (so you can't read them using the RIFF/CDXA filter). As an example,
- you can add drivers, players or text files to the CD structure this way.
-
- Unlike Form2 files, these will retain their original file name and extension,
- since no change is made to their contents.
-
- * Add directory: -d "dir name"
-
- By the use of the -d (or -dir) option you can add a new subdirectory to the
- current CD structure. After this option any file entered using the -m or -f
- option will lie on the last directory specified. Note that you can't add full
- paths from the HD inluding its directory structure using the -m or -f option,
- hence the usefulness of this option.
-
- An example: -m "movie.avi" -d "player" -f "c:\my favorite player\*.*"
-
- This will add movie1.dat to the root directory, make a new dir named "player"
- and add the contents of the path specified after -f option to the "player"
- directory on the CD (not including subdirectories, though).
-
- Each directory entered after the -d option will be created in root. If you want
- to specify a subdirectory tree, separate each directory level with backslashes,
- but remember to create their parent directory first. An example of nested
- subdirectories:
-
- -d "player" -f "c:\my player\*.*" -d "player\filters" -f "c:\my player\filters\*.*"
-
- * Force ISO 9660 Level 1 or 2 file names: -isolevel1, -isolevel2
-
- By default all names are saved in ASCII form (i.e. they maintain their original
- uppercase/lowercase characters and their length). In case you want to fit to
- standards you can force ISO 9660 Level 1 (i.e. all uppercase, 8+3 filenames) or
- Level 2 (i.e. all uppercase, max. 31 chars per file name) conversion to all file
- names. As an example a file called "My Movie.avi" would become "MY_MOVIE.DAT"
- after being converted to ISO Level 1.
-
- * Change default Form2 extension: -e "ext"
-
- By default all Form2 files will change their extension to "DAT" as stated above.
- You can change this default extension by using your favorite one thanks to the -
- e (or -ext) option.
-
- However note that by any means it's recommended using a registered extension
- here since it may lead to problems when trying to play the file (this is the
- case with OGG/OGM, as an example).
-
- * Keep original Form2 extension into file name: -x
-
- You can keep the original Form2 file extension into the file name by adding the
- -x option to the command line.
-
- An example: -m "this is a sample movie.avi" -x
-
- Will create "this is a sample movie.avi.dat"
-
- * Use DOS charset for source file names: -c
-
- In case you want to enter file names with international character sets using DOS
- character set (this is useful for BAT files, and some languages such as Russian)
- you can add the -c (or -dos) option to tell the program to do the appropiate
- conversion before trying to open the file. Otherwise you'd get a "file not
- found" error.
-
- * Set CD volume name: -v "name"
-
- With this option you can specify a new volume name for the current CD, other
- than the default "MODE2CD".
-
- * Set output image base name: -o "d:\path\image"
-
- With the -o (or -output) option you can specify a default path and base file
- name for the output image. The default path is current directory and the base
- name "image". Three files will be created using this information: *.cue, *.bin
- and *.toc.
-
- An example: -o "d:\cdimages\image"
-
- This will create: image.bin, image.cue and image.toc under "d:\cdimages" path.
-
- * Create a single track image: -s
-
- One of the limitations of standard Mode2/Form2 CDs is the minimum track size
- (300 sectors), so any file being recorded as Mode2/Form2 must be greater than
- 300 Kb in size. On the other side every track must be preceeded by a pregap
- which adds extra 300 Kb for each Form2 file, making it unsuitable for a lot of
- small files such as MP3.
-
- In that case you can add the -s (or -single) option which forces the creation of
- a single-track CD. This makes all files lie on a single track, which has the
- following advantages: now each Form2 file can be smaller than 300 Kb, no pregaps
- are added for each one (thus saving more space) and the ISO filesystem is
- smaller, too, because there is no need for a separate ISO Bridge track.
-
- This makes a better use of the available CD space, specially for large file
- collections where previously the tool would have not been able to take advantage
- of the extra space (since all gained space was then lost on pregaps).
-
- As a disadvantage, these CDs are currently unusable from Linux since the
- software currently available under Linux that can read XCDs works in a track-
- basis and not in a filesystem-basis, so it needs each Form2 file to lie on a
- separate track. Examples of this are mplayer as well as the vcdfs and cdfs
- drivers. Unfortunately, seems Linux can't read XCDs the same way as Windows due
- to a lack of support for Form2 files in the iso9660 driver (they are readed as
- Form1 files).
-
- * Output CloneCD (CCD) image: -ccd
-
- New to 1.5.1 is the possibility to create a CloneCD (CC/IMG/SUB) image set, instead
- of the default BIN/CUE image. These images contain more accurate information about
- every sector and thus gives less compatibility problems with certain recorders. The
- only drawback is that you need a compatible recording tool (such as CloneCD or
- Alcohol 120%) in order to burn them.
-
- * Output RAW-96 image: -raw
-
- With this option you can create a single file RAW-96 image, which is intended to be
- recorded with with recent cdrecord versions using the -clone mode. Only single track
- images can be created this way. This feature has not been tested, though.
-
- * Input Form1 file list: -list listfile.txt
-
- With this option you can enter a simple filelist contained in a text file to be
- recorded as Form1 content. Every line may contain only a single file with its
- complete path. This way you can overcome the max command line length limit when
- entering a big amount of files. Subdirectories cannot be created this way (use it
- as an equivalent to the -f option). Paths containing spaces should NOT be enclosed
- between quotes, as this is a command-line only requirement.
-
- * Input parameter file: -paramfile params.txt
-
- This option replaces the entire command line structure and takes every option from
- a parameter file. The purpose of this is overcoming the max command line lenght.
- Every single parameter must stay in a single line, ending with a line feed.
- Otherwise the usage is the same as the command line. As with the previous option,
- you should NOT enclose paths containing spaces between quotes. An example of a
- parameter file:
-
- -m
- d:\movie\my favorite movie.avi
- -d
- player
- -f
- d:\my player\*.zip
- -o
- d:\burn\cdimage
- -ccd
- -s
- -v
- Movie Title
-
-
- Burning
- -------
-
- Beware that if the source Form2 files are not an exact multiple of 2324
- bytes, padding zeroes will be added at the end. There's nothing I can do
- about this, this is a limitation of Mode2/Form2.
-
- While building the image the program will show an estimated CD size required
- to hold the data you are putting into the image. This size value is
- calculated in terms of Mode 1, so you can easily compare it with the actual
- CD size as shown when you retrieve the media information with your favorite
- burning program (i.e. 700 MB means a full 80 min CD).
-
- Once it's finished you will end with three files:
-
- image.cue CUE file for CDR-WIN
- image.toc TOC file for cdrdao
- image.bin BIN image
-
- To burn with CDR-WIN just load the *.cue file and burn it.
-
- To burn with cdrdao:
-
- > cdrdao scanbus
- > cdrdao write --device 1,0,0 --driver generic-mmc image.toc
-
- In case you chose CloneCD output five files are created by default:
-
- image.ccd CloneCD cuesheet
- image.sub Subchannel data
- image.img Binary image
- image.cue CDR-WIN CUE for compatibility
- image.toc TOC file for cdrdao
-
- Just load the image.ccd file into CloneCD or Alcohol 120% and burn it.
-
- If you have troubles you can also use any other recording software that
- supports raw BIN images, however this won't be a real CD/XA Bridge, but a
- single track, mixed Form1/Form2 CD. anyways Windows can't see the
- difference, and it works fine. To burn with Nero as a single track:
-
- 1. Choose File/Burn Image menu
- 2. Load the BIN file
- 3. Select Mode2
- 4. Burn!
-
-
- Reading
- -------
-
- To be able to play these files directly from the CD, you'll need either a
- DirectShow filter supporting RIFF/CDXA parsing (such as XCD reader filter made
- by avih & me), or a player with this capability. As an example there is at least
- a portable MP3 player which has been proved to directly support Mode2 Form2 CDs:
- the Freecom Beatman CD/MP3 Player.
-
- You can also convert the files back to its original state with a helper tool
- I've included called dat2file. The usage is:
-
- > dat2file "d:\my movie.dat" "c:\my movie.avi"
-
- Beware that if the source file was not an exact multiple of 2324, there will
- be some padding zeroes at the end of the file. This might prevent it of
- being played properly.
-
-
- Credits
- -------
-
- mode2cdmaker is based on vcdtools-0.4 by Rainer Johanni
-
- dat2file is based on cdxa2mpeg by Herbert Valerio Riedel
-
- Many thanks to Nic, int 21h, Nah, ubik29 & Martin for their contributions to
- this tool, and of course MaTTeR and Kxy for their extensive testing!
-
-
- Official homepage: http://webs.ono.com/de_xt/
-
- DeXT @ 2003
-
-
- History
- -------
-
- 2003/03/14 - 1.5.1 - Alex Noe & DeXT
-
- mkvcdfs.c: added CloneCD (CCD/SUB/IMG) image output support (Alex Noe)
- mkvcdfs.c: added filelist input support, as well as parameter file (Alex Noe)
- mkvcdfs.c: cuesheets are only written after the image is created
- mkvcdfs.c: enhanced file buffering
-
- 2002/11/12 - 1.5a - DeXT
-
- mkvcdfs.c: fixed *stupid* bug that caused Mode2CDMaker to crash when no
- subdirectories were entered (sorry)
-
- 2002/11/07 - 1.5 - DeXT
-
- mkvcdfs.c: added -s option (creates single track image, removes minimum file
- size limit, removes pregaps, better use of available space,
- useful for many small Form2 files such as MP3 collections)
- mkvcdfs.c: new command line options parser, options are more user friendly
- mkvcdfs.c: by default all file names are now kept as ASCII (-l and -a
- options removed), added -isolevel1 and -isolevel2 options
- mkvcdfs.c: better memory management: buffers are now allocated at run-time
- mkvcdfs.c: added 2 empty blocks at the end of ISO track to avoid potential
- reading problems when no Form2 files where added
- mkvcdfs.c: show actual data written to the CD along with estimated CD size
- vcdisofs.c: each directory can now contain an unlimited number of files (it
- was previously limited to about 32 per directory)
- vcdisofs.c: added nested subdirectories support (now you can maintain the
- full directory structure)
- vcdisofs.c: better use of ISO track space (files are being recorded right
- after the ISO FS)
- vcdisofs.c: fixed international character set support for subdirs, too
-
- 2002/08/26 - 1.4.2 - ML & DeXT
-
- mkvcdfs.c: added ML's wildcard code (for MSVC)
- mkvcdfs.c: added -c option (assume DOS character set for input file names,
- useful from BAT and also some languages, such as Russian)
- vcdisofs.c: properly support international file names on the CD
-
- 2002/06/24 - 1.4.1
-
- mkvcdfs.c: fixed incorrect track numbering in CUE file
-
- 2002/06/17 - 1.4
-
- mkvcdfs.c: big speedup thanks to new r/w buffering (up to 3 times faster)
- mkvcdfs.c: BIN image is now referenced as relative in TOC, CUE files
- mkvcdfs.c: new option: -x (keep form2 file extension in the filename)
- mkvcdfs.c: new file collect routine, to allow subdirs for form2 files
- mkvcdfs.c: default screen output is now stdout (so it can be redirected)
- mkvcdfs.c: fixed bug where input files were not closed
- vcdisofs.c: subdirs now work for form2 files, too
- vcdisofs.c: fixed max filename length calculation (was greater than allowed)
- vcdisofs.c: ISO building is now faster for form1 files (no need to reserve space)
-
- 2002/05/23 - 1.3
-
- mkvcdfs.c: new options added: -d, -a
- vcdisofs.c: added subdirectories support (for Form1 files only)
- vcdisofs.c: added ASCII character set support
- vcdisofs.c: removed default VCD-like filenames for Form2 files
-
- 2002/05/20 - 1.2
-
- mkvcdfs.c: command line parser is now less tolerant to bad syntax
- mkvcdfs.c: ISO FS is now built before copying actual file data
- mkvcdfs.c: show total estimated CD size
- mkvcdfs.c: new XA subheader which is more compatible with DVD players
- vcdisofs.c: added Form1 files support (through new option -f)
-
- 2002/05/10 - 1.2pre2
-
- mkvcdfs.c: added progress counter and speed indicator
- mkvcdfs.c: fixed DAT filesize (was 1 sector higher w/multiple of 2324)
- mkvcdfs.c: fixed CUE file not being deleted on failure
- mkvcdfs.c: XA subheader now marks EOF
- vcdisofs.c: improved XA compatibility (added XA sig for every file/dir)
- vcdisofs.c: added long file names support (ISO-9660 Level 2)
- vcdisofs.c: fixed emtpy block in ISO track
- dat2file: added nice counter, too
- dat2file: no need to enter destination file name
-
- 2002/05/04 - 1.2pre
-
- mkvcdfs.c: new command line option parser (Nic)
- mkvcdfs.c: new features (set volume name, M2F2 ext, output image) (Nic)
- mkvcdfs.c: changed default volume name and image base name
- mkvcdfs.c: added simple d-char (ISO-9660) converter
- vcdisofs.c: M2F2 file extension is no longer fixed
-
- 2002/04/18 - beta 1.1
-
- mkvcdfs.c: added CUE output support
- vcdisofs.c: lowered ISO track size to 302 sectors (~700 Kb)
-
- 2002/04/17 - beta 1.0 - first release, based on vcdtools-0.4
-
- mkvcdfs.c: changed output file method to fopen() (open() worked in text
- mode, perhaps a MinGW bug?)
- mkvcdfs.c: removed 30+45 empty sector padding in M2F2 track
- mkvcdfs.c: now will accept any file (not just MPEG)
- mkvcdfs.c: changed CD/XA track subheader to Form2/Data
- mkvcdfs.c: fixed DAT file length and track file length:
- * DAT file now has right size (missed 1 sector)
- * CD/XA track now has 2 "ghost" sectors at the end, to
- prevent any potential TAO problems
- vcdisofs.c: fixed make_path_tables() to not add root files as dirs
- vcdisofs.c: DAT files are added to the root directory instead of MPEGAV
- vcdisofs.c: removed unneeded VCD stuff
-