.TH "AdvanceCOMP MNG Compression Utility" 1 .SH NAME advmng \(hy AdvanceCOMP MNG Compression Utility .SH SYNOPSIS advmng [\(hyl, \(hy\(hylist] [\(hyz, \(hy\(hyrecompress] .PD 0 .PP .PD [\(hyx, \(hy\(hyextract] [\(hya, \(hy\(hyadd RATE MNG_FILE PNG_FILES...] .PD 0 .PP .PD [\(hy0, \(hy\(hyshrink\(hystore] [\(hy1, \(hy\(hyshrink\(hyfast] [\(hy2, \(hy\(hyshrink\(hynormal] .PD 0 .PP .PD [\(hy3, \(hy\(hyshrink\(hyextra] [\(hy4, \(hy\(hyshrink\(hyinsane] .PD 0 .PP .PD [\(hys, \(hy\(hyscroll HxV] [\(hyS, \(hy\(hyscroll\(hysquare] .PD 0 .PP .PD [\(hye, \(hy\(hyexpand] [\(hyr, \(hy\(hyreduce] .PD 0 .PP .PD [\(hyc, \(hy\(hylc] [\(hyC, \(hy\(hyvlc] [\(hyf, \(hy\(hyforce] [\(hyq, \(hy\(hyquiet] [\(hyv, \(hy\(hyverbose] .PD 0 .PP .PD [\(hyh, \(hy\(hyhelp] [\(hyV, \(hy\(hyversion] FILES... .PD 0 .PP .PD .SH DESCRIPTION The main purpose of this utility is to recompress MNG files to get the smallest possible size. .PP Please note that this utility is not able to read a generic file. It\(cqs granted to be able to read only the files generated by the AdvanceMAME emulator. .PP To compress the files this utility uses the following strategies: .PD 0 .IP \(bu Remove all ancillary chunks. .IP \(bu Use the MNG Delta feature to compress video clips with only small changes between frames. .IP \(bu Use the MNG Move feature to compress video clips with a scrolling background (option \(hys). .IP \(bu Reduce the color depth to 8 bit (option \(hyr). .IP \(bu Use the 7zip Deflate implementation. .PD .SH COMMANDS .TP .B \(hyl, \(hy\(hylist FILES... List the content of the specified files. .TP .B \(hyz, \(hy\(hyrecompress FILES... Recompress the specified files. If the \(hy1, \(hy2, \(hy3 options are specified, it\(cqs used the smallest file choice from the previous compressed data and the new compression. If the \(hy0 option is specified the file is always rewritten without any compression. .TP .B \(hyx, \(hy\(hyextract FILES... Extract all the .png frames in the .mng clips. You can use the \(hy\(hyshrink options to control the compression ratio of the .png files. The extracted images are always 24 bit images with alpha channel. You can remove the alpha channel with the \(hyn option. .TP .B \(hya, \(hy\(hyadd RATE MNG_FILE PNG_FILES... Compress all the .png files on the command line as a .mng file. All the .png files must have the same size and the same bit depth. You must also specify an integer frame rate to use in the .mng file. .SH OPTIONS .TP .B \(hy0, \(hy\(hyshrink\(hystore Disable the compression. The file is only stored and not compressed. The file is always rewritten also if it\(cqs bigger. .TP .B \(hy1, \(hy\(hyshrink\(hyfast Set the compression level to \(a"fast\(a". .TP .B \(hy2, \(hy\(hyshrink\(hynormal Set the compression level to \(a"normal\(a". This is the default level of compression. .TP .B \(hy3, \(hy\(hyshrink\(hyextra Set the compression level to \(a"extra\(a". .TP .B \(hy4, \(hy\(hyshrink\(hyinsane Set the compression level to \(a"insane\(a". It\(cqs VERY SLOW. .TP .B \(hys, \(hy\(hyscroll HxV The \(a"\(hys HxV\(a" option specifies the size of the pattern (H width x V height) used to check for a scrolling background. The size is expressed in pixels and it must be bigger or equal than the scrolling speed of the background. For example take the game 1942 that scrolls vertically by 1 pixel every frame. If you recorded with an interleave factor of 2 the vertical scrolling speed is 1*2 = 2. In this case the minimum pattern is \(a"\(hys 0x2\(a". Generally you can use \(a"\(hys 8x8\(a" and use bigger values only for games scrolling faster. If the game scrolls only horizontally or vertically you can speed up a lot the compression with monodirectional patterns like \(a"\(hys 16x0\(a" or \(a"\(hys 0x16\(a". .TP .B \(hyS, \(hy\(hyscroll\(hysquare N This option is like the option \(a"\(hys NxN\(a" but excludes big movement on both directions reducing the computation time. Specifically the check done is X+Y<=N. .TP .B \(hyr, \(hy\(hyreduce Force the color reduction to 8 bit. The reduction is really done only if any frame have less than 256 colors and if no alpha channel is present. To force the reduction also if an alpha channel is present use the \(hyn option. .TP .B \(hye, \(hy\(hyexpand Force the color expansion to 24 bit. .TP .B \(hyn, \(hy\(hynoalpha Remove the alpha channel if present. .TP .B \(hyc, \(hy\(hylc Force the use of the MNG LC (Low Complexity) specifications. It disables the delta compression. The file is always rewritten also if it\(cqs bigger. .TP .B \(hyC, \(hy\(hyvlc Force the use of the MNG VLC (Very Low Complexity) specifications. It disables the delta compression and the precise timing. Warning! you may lose the correct timing information because the VLC format only supports integer frequency. The file is always rewritten also if it\(cqs bigger. .TP .B \(hyf, \(hy\(hyforce Force the use of the new file also if it\(cqs bigger. .TP .B \(hyq, \(hy\(hyquiet Don\(cqt print the filenames. .TP .B \(hyv, \(hy\(hyverbose Print more information on the compression process. .SH EXAMPLES A good tradeoff of recompression and time is the command : .PP .RS 4 advmng \(hyz \(hyr \(hyS 16 *.mng .RE .PP To create a .mng file from a series of .png files use the command : .PP .RS 4 advmng \(hya 30 video.mng video*.png .RE .PP To extract all the images in a .mng file use the command : .PP .RS 4 advmng \(hyx video.mng .RE .SH COPYRIGHT This file is Copyright (C) 2003 Andrea Mazzoleni, Filipe Estima .SH SEE ALSO advzip(1), advpng(1), advdef(1)