diff --git a/src/bin/jp2/opj_compress.c b/src/bin/jp2/opj_compress.c index dc27fb62..8e9840f1 100644 --- a/src/bin/jp2/opj_compress.c +++ b/src/bin/jp2/opj_compress.c @@ -86,27 +86,12 @@ typedef struct img_folder{ }img_fol_t; static void encode_help_display(void) { - fprintf(stdout,"This is the opj_compress utility from the OpenJPEG project.\n" + fprintf(stdout,"\nThis is the opj_compress utility from the OpenJPEG project.\n" + "It compresses various image formats with the JPEG 2000 algorithm.\n" "It has been compiled against openjp2 library v%s.\n\n",opj_version()); - fprintf(stdout,"HELP\n----\n\n"); - fprintf(stdout,"- the -h option displays this help information on screen\n\n"); - /* UniPG>> */ - fprintf(stdout,"List of parameters for the JPEG 2000 " - #ifdef USE_JPWL - "+ JPWL " - #endif /* USE_JPWL */ - "encoder:\n"); - /* <\n"); + fprintf(stdout," Input file\n"); + fprintf(stdout," Known extensions are \n"); + fprintf(stdout," If used, '-o ' must be provided\n"); + fprintf(stdout,"-o \n"); + fprintf(stdout," Output file (accepted extensions are j2k or jp2).\n"); + fprintf(stdout,"-ImgDir \n"); + fprintf(stdout," Image file Directory path (example ../Images) \n"); fprintf(stdout," When using this option -OutFor must be used\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-OutFor \n"); - fprintf(stdout," REQUIRED only if -ImgDir is used\n"); - fprintf(stdout," Need to specify only format without filename \n"); - fprintf(stdout," Currently accepts PBM, PGM, PPM, PNM, PAM, PGX, PNG, BMP, TIF, RAW (MSB), RAWL (LSB) and TGA formats\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-i : source file (-i source.pnm also *pbm, *.pgm, *.ppm, *.pam, *.pgx, *png, *.bmp, *.tif, *.raw, *.tga) \n"); - fprintf(stdout," When using this option -o must be used\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-o : destination file (-o dest.j2k or .jp2) \n"); + fprintf(stdout,"-OutFor \n"); + fprintf(stdout," Output format for compressed files.\n"); + fprintf(stdout," Required only if -ImgDir is used\n"); + fprintf(stdout,"-F ,,,,{s,u}@x:...:x\n"); + fprintf(stdout," Characteristics of the raw input image\n"); + fprintf(stdout," If subsampling is omitted, 1x1 is assumed for all components\n"); + fprintf(stdout," Example: -F 512,512,3,8,u@1x1:2x2:2x2\n"); + fprintf(stdout," for raw 512x512 image with 4:2:0 subsampling\n"); + fprintf(stdout," Required only if RAW or RAWL input file is provided.\n"); fprintf(stdout,"\n"); fprintf(stdout,"Optional Parameters:\n"); fprintf(stdout,"\n"); - fprintf(stdout,"-h : display the help information \n "); - fprintf(stdout,"\n"); - fprintf(stdout,"-cinema2K : Digital Cinema 2K profile compliant codestream for 2K resolution.(-CINEMA2K 24 or 48) \n"); - fprintf(stdout," Need to specify the frames per second for a 2K resolution. Only 24 or 48 fps is allowed\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-cinema4K : Digital Cinema 4K profile compliant codestream for 4K resolution \n"); - fprintf(stdout," Frames per second not required. Default value is 24fps\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-r : different compression ratios for successive layers (-r 20,10,5)\n "); - fprintf(stdout," - The rate specified for each quality level is the desired \n"); - fprintf(stdout," compression factor.\n"); - fprintf(stdout," Example: -r 20,10,1 means quality 1: compress 20x, \n"); - fprintf(stdout," quality 2: compress 10x and quality 3: compress lossless\n"); - fprintf(stdout,"\n"); - fprintf(stdout," (options -r and -q cannot be used together)\n "); - fprintf(stdout,"\n"); - - fprintf(stdout,"-q : different psnr for successive layers (-q 30,40,50) \n "); - - fprintf(stdout," (options -r and -q cannot be used together)\n "); - - fprintf(stdout,"\n"); - fprintf(stdout,"-n : number of resolutions (-n 3) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-b : size of code block (-b 32,32) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-c : size of precinct (-c 128,128) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-t : size of tile (-t 512,512) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-p : progression order (-p LRCP) [LRCP, RLCP, RPCL, PCRL, CPRL] \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-s : subsampling factor (-s 2,2) [-s X,Y] \n"); - fprintf(stdout," Remark: subsampling bigger than 2 can produce error\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-POC : Progression order change (-POC T1=0,0,1,5,3,CPRL/T1=5,0,1,6,3,CPRL) \n"); - fprintf(stdout," Example: T1=0,0,1,5,3,CPRL \n"); - fprintf(stdout," : Ttilenumber=Resolution num start,Component num start,Layer num end,Resolution num end,Component num end,Progression order\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-SOP : write SOP marker before each packet \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-EPH : write EPH marker after each header packet \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-M : mode switch (-M 3) [1=BYPASS(LAZY) 2=RESET 4=RESTART(TERMALL)\n"); - fprintf(stdout," 8=VSC 16=ERTERM(SEGTERM) 32=SEGMARK(SEGSYM)] \n"); - fprintf(stdout," Indicate multiple modes by adding their values. \n"); - fprintf(stdout," ex: RESTART(4) + RESET(2) + SEGMARK(32) = -M 38\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-TP : divide packets of every tile into tile-parts (-TP R) [R, L, C]\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-x : create an index file *.Idx (-x index_name.Idx) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-ROI : c=%%d,U=%%d : quantization indices upshifted \n"); - fprintf(stdout," for component c=%%d [%%d = 0,1,2]\n"); - fprintf(stdout," with a value of U=%%d [0 <= %%d <= 37] (i.e. -ROI c=0,U=25) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-d : offset of the origin of the image (-d 150,300) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-T : offset of the origin of the tiles (-T 100,75) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-I : use the irreversible DWT 9-7 (-I) \n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-F : characteristics of the raw input image\n"); - fprintf(stdout," -F rawWidth,rawHeight,rawComp,rawBitDepth,s/u (Signed/Unsigned)\n"); - fprintf(stdout," Example: -i lena.raw -o lena.j2k -F 512,512,3,8,u\n"); - fprintf(stdout,"\n"); - fprintf(stdout,"-mct {0,1,2} : explicitely specifies if a Multiple Component Transform has to be used.\n"); - fprintf(stdout," 0: no MCT ; 1: RGB->YCC conversion ; 2: custom MCT.\n"); - fprintf(stdout," If custom MCT, \"-m\" option has to be used (see hereunder).\n"); - fprintf(stdout," By default, RGB->YCC conversion is used if there are 3 components or more,\n"); - fprintf(stdout," no conversion otherwise.\n"); - fprintf(stdout,"-m : use array-based MCT, values are coma separated, line by line\n"); - fprintf(stdout," no specific separators between lines, no space allowed between values\n"); - fprintf(stdout," If this option is used, it automatically sets \"-mct\" option to 2.\n"); - fprintf(stdout,"-jpip : write jpip codestream index box in JP2 output file\n"); - fprintf(stdout," NOTICE: currently supports only RPCL order\n"); - fprintf(stdout,"\n"); + fprintf(stdout,"-h\n"); + fprintf(stdout," Display the help information.\n"); + fprintf(stdout,"-r ,,...\n"); + fprintf(stdout," Different compression ratios for successive layers.\n"); + fprintf(stdout," The rate specified for each quality level is the desired\n"); + fprintf(stdout," compression factor.\n"); + fprintf(stdout," Decreasing ratios required.\n"); + fprintf(stdout," Example: -r 20,10,1 means \n"); + fprintf(stdout," quality layer 1: compress 20x, \n"); + fprintf(stdout," quality layer 2: compress 10x \n"); + fprintf(stdout," quality layer 3: compress lossless\n"); + fprintf(stdout," Options -r and -q cannot be used together.\n"); + fprintf(stdout,"-q ,,,...\n"); + fprintf(stdout," Different psnr for successive layers (-q 30,40,50).\n"); + fprintf(stdout," Increasing PSNR values required.\n"); + fprintf(stdout," Options -r and -q cannot be used together.\n"); + fprintf(stdout,"-n \n"); + fprintf(stdout," Number of resolutions.\n"); + fprintf(stdout," It corresponds to the number of DWT decompositions +1. \n"); + fprintf(stdout," Default: 6.\n"); + fprintf(stdout,"-b ,\n"); + fprintf(stdout," Code-block size. The dimension must respect the constraint \n"); + fprintf(stdout," defined in the JPEG-2000 standard (no dimension smaller than 4 \n"); + fprintf(stdout," or greater than 1024, no code-block with more than 4096 coefficients).\n"); + fprintf(stdout," The maximum value authorized is 64x64. \n"); + fprintf(stdout," Default: 64x64.\n"); + fprintf(stdout,"-c [,],[,],...\n"); + fprintf(stdout," Precinct size. Values specified must be power of 2. \n"); + fprintf(stdout," Multiple records may be supplied, in which case the first record refers\n"); + fprintf(stdout," to the highest resolution level and subsequent records to lower \n"); + fprintf(stdout," resolution levels. The last specified record is right-shifted for each \n"); + fprintf(stdout," remaining lower resolution levels.\n"); + fprintf(stdout," Default: 215x215 at each resolution.\n"); + fprintf(stdout,"-t ,\n"); + fprintf(stdout," Tile size.\n"); + fprintf(stdout," Default: the dimension of the whole image, thus only one tile.\n"); + fprintf(stdout,"-p \n"); + fprintf(stdout," Progression order.\n"); + fprintf(stdout," Default: LRCP.\n"); + fprintf(stdout,"-s \n"); + fprintf(stdout," Subsampling factor.\n"); + fprintf(stdout," Subsampling bigger than 2 can produce error\n"); + fprintf(stdout," Default: no subsampling.\n"); + fprintf(stdout,"-POC //...\n"); + fprintf(stdout," Progression order change.\n"); + fprintf(stdout," The syntax of a progression order change is the following:\n"); + fprintf(stdout," T=,,,,,\n"); + fprintf(stdout," Example: -POC T1=0,0,1,5,3,CPRL/T1=5,0,1,6,3,CPRL\n"); + fprintf(stdout,"-SOP\n"); + fprintf(stdout," Write SOP marker before each packet.\n"); + fprintf(stdout,"-EPH\n"); + fprintf(stdout," Write EPH marker after each header packet.\n"); + fprintf(stdout,"-M \n"); + fprintf(stdout," Mode switch.\n"); + fprintf(stdout," [1=BYPASS(LAZY) 2=RESET 4=RESTART(TERMALL)\n"); + fprintf(stdout," 8=VSC 16=ERTERM(SEGTERM) 32=SEGMARK(SEGSYM)]\n"); + fprintf(stdout," Indicate multiple modes by adding their values.\n"); + fprintf(stdout," Example: RESTART(4) + RESET(2) + SEGMARK(32) => -M 38\n"); + fprintf(stdout,"-TP \n"); + fprintf(stdout," Divide packets of every tile into tile-parts.\n"); + fprintf(stdout," Division is made by grouping Resolutions (R), Layers (L)\n"); + fprintf(stdout," or Components (C).\n"); + fprintf(stdout,"-x \n"); + fprintf(stdout," Create an index file.\n"); + fprintf(stdout,"-ROI c=,U=\n"); + fprintf(stdout," Quantization indices upshifted for a component. \n"); + fprintf(stdout," Warning: This option does not implement the usual ROI (Region of Interest).\n"); + fprintf(stdout," It should be understood as a 'Component of Interest'. It offers the \n"); + fprintf(stdout," possibility to upshift the value of a component during quantization step.\n"); + fprintf(stdout," The value after c= is the component number [0, 1, 2, ...] and the value \n"); + fprintf(stdout," after U= is the value of upshifting. U must be in the range [0, 37].\n"); + fprintf(stdout,"-d \n"); + fprintf(stdout," Offset of the origin of the image.\n"); + fprintf(stdout,"-T \n"); + fprintf(stdout," Offset of the origin of the tiles.\n"); + fprintf(stdout,"-I\n"); + fprintf(stdout," Use the irreversible DWT 9-7.\n"); + fprintf(stdout,"-mct <0|1|2>\n"); + fprintf(stdout," Explicitely specifies if a Multiple Component Transform has to be used.\n"); + fprintf(stdout," 0: no MCT ; 1: RGB->YCC conversion ; 2: custom MCT.\n"); + fprintf(stdout," If custom MCT, \"-m\" option has to be used (see hereunder).\n"); + fprintf(stdout," By default, RGB->YCC conversion is used if there are 3 components or more,\n"); + fprintf(stdout," no conversion otherwise.\n"); + fprintf(stdout,"-m \n"); + fprintf(stdout," Use array-based MCT, values are coma separated, line by line\n"); + fprintf(stdout," No specific separators between lines, no space allowed between values.\n"); + fprintf(stdout," If this option is used, it automatically sets \"-mct\" option to 2.\n"); + fprintf(stdout,"-cinema2K <24|48>\n"); + fprintf(stdout," Digital Cinema 2K profile compliant codestream.\n"); + fprintf(stdout," Need to specify the frames per second for a 2K resolution.\n"); + fprintf(stdout," Only 24 or 48 fps are currently allowed.\n"); + fprintf(stdout,"-cinema4K\n"); + fprintf(stdout," Digital Cinema 4K profile compliant codestream.\n"); + fprintf(stdout," Frames per second not required. Default value is 24fps.\n"); + fprintf(stdout,"-jpip\n"); + fprintf(stdout," Write jpip codestream index box in JP2 output file.\n"); + fprintf(stdout," Currently supports only RPCL order.\n"); + fprintf(stdout,"-C \n"); + fprintf(stdout," Add in the comment marker segment.\n"); /* UniPG>> */ #ifdef USE_JPWL - fprintf(stdout,"-W : adoption of JPWL (Part 11) capabilities (-W params)\n"); - fprintf(stdout," The parameters can be written and repeated in any order:\n"); - fprintf(stdout," [h<=type>,s<=method>,a=,...\n"); - fprintf(stdout," ...,z=,g=,p<=type>]\n"); - fprintf(stdout,"\n"); - fprintf(stdout," h selects the header error protection (EPB): 'type' can be\n"); - fprintf(stdout," [0=none 1,absent=predefined 16=CRC-16 32=CRC-32 37-128=RS]\n"); - fprintf(stdout," if 'tilepart' is absent, it is for main and tile headers\n"); - fprintf(stdout," if 'tilepart' is present, it applies from that tile\n"); - fprintf(stdout," onwards, up to the next h<> spec, or to the last tilepart\n"); - fprintf(stdout," in the codestream (max. %d specs)\n", JPWL_MAX_NO_TILESPECS); - fprintf(stdout,"\n"); - fprintf(stdout," p selects the packet error protection (EEP/UEP with EPBs)\n"); - fprintf(stdout," to be applied to raw data: 'type' can be\n"); - fprintf(stdout," [0=none 1,absent=predefined 16=CRC-16 32=CRC-32 37-128=RS]\n"); - fprintf(stdout," if 'tilepart:pack' is absent, it is from tile 0, packet 0\n"); - fprintf(stdout," if 'tilepart:pack' is present, it applies from that tile\n"); - fprintf(stdout," and that packet onwards, up to the next packet spec\n"); - fprintf(stdout," or to the last packet in the last tilepart in the stream\n"); - fprintf(stdout," (max. %d specs)\n", JPWL_MAX_NO_PACKSPECS); - fprintf(stdout,"\n"); - fprintf(stdout," s enables sensitivity data insertion (ESD): 'method' can be\n"); - fprintf(stdout," [-1=NO ESD 0=RELATIVE ERROR 1=MSE 2=MSE REDUCTION 3=PSNR\n"); - fprintf(stdout," 4=PSNR INCREMENT 5=MAXERR 6=TSE 7=RESERVED]\n"); - fprintf(stdout," if 'tilepart' is absent, it is for main header only\n"); - fprintf(stdout," if 'tilepart' is present, it applies from that tile\n"); - fprintf(stdout," onwards, up to the next s<> spec, or to the last tilepart\n"); - fprintf(stdout," in the codestream (max. %d specs)\n", JPWL_MAX_NO_TILESPECS); - fprintf(stdout,"\n"); - fprintf(stdout," g determines the addressing mode: can be\n"); - fprintf(stdout," [0=PACKET 1=BYTE RANGE 2=PACKET RANGE]\n"); - fprintf(stdout,"\n"); - fprintf(stdout," a determines the size of data addressing: can be\n"); - fprintf(stdout," 2/4 bytes (small/large codestreams). If not set, auto-mode\n"); - fprintf(stdout,"\n"); - fprintf(stdout," z determines the size of sensitivity values: can be\n"); - fprintf(stdout," 1/2 bytes, for the transformed pseudo-floating point value\n"); - fprintf(stdout,"\n"); - fprintf(stdout," ex.:\n"); - fprintf(stdout," h,h0=64,h3=16,h5=32,p0=78,p0:24=56,p1,p3:0=0,p3:20=32,s=0,\n"); - fprintf(stdout," s0=6,s3=-1,a=0,g=1,z=1\n"); - fprintf(stdout," means\n"); - fprintf(stdout," predefined EPB in MH, rs(64,32) from TPH 0 to TPH 2,\n"); - fprintf(stdout," CRC-16 in TPH 3 and TPH 4, CRC-32 in remaining TPHs,\n"); - fprintf(stdout," UEP rs(78,32) for packets 0 to 23 of tile 0,\n"); - fprintf(stdout," UEP rs(56,32) for packs. 24 to the last of tilepart 0,\n"); - fprintf(stdout," UEP rs default for packets of tilepart 1,\n"); - fprintf(stdout," no UEP for packets 0 to 19 of tilepart 3,\n"); - fprintf(stdout," UEP CRC-32 for packs. 20 of tilepart 3 to last tilepart,\n"); - fprintf(stdout," relative sensitivity ESD for MH,\n"); - fprintf(stdout," TSE ESD from TPH 0 to TPH 2, byte range with automatic\n"); - fprintf(stdout," size of addresses and 1 byte for each sensitivity value\n"); - fprintf(stdout,"\n"); - fprintf(stdout," ex.:\n"); - fprintf(stdout," h,s,p\n"); - fprintf(stdout," means\n"); - fprintf(stdout," default protection to headers (MH and TPHs) as well as\n"); - fprintf(stdout," data packets, one ESD in MH\n"); - fprintf(stdout,"\n"); - fprintf(stdout," N.B.: use the following recommendations when specifying\n"); - fprintf(stdout," the JPWL parameters list\n"); - fprintf(stdout," - when you use UEP, always pair the 'p' option with 'h'\n"); - fprintf(stdout," \n"); + fprintf(stdout,"-W \n"); + fprintf(stdout," Adoption of JPWL (Part 11) capabilities (-W params)\n"); + fprintf(stdout," The field can be written and repeated in any order:\n"); + fprintf(stdout," [h<=type>,s<=method>,a=,...\n"); + fprintf(stdout," ...,z=,g=,p<=type>]\n"); + fprintf(stdout," h selects the header error protection (EPB): 'type' can be\n"); + fprintf(stdout," [0=none 1,absent=predefined 16=CRC-16 32=CRC-32 37-128=RS]\n"); + fprintf(stdout," if 'tilepart' is absent, it is for main and tile headers\n"); + fprintf(stdout," if 'tilepart' is present, it applies from that tile\n"); + fprintf(stdout," onwards, up to the next h<> spec, or to the last tilepart\n"); + fprintf(stdout," in the codestream (max. %d specs)\n", JPWL_MAX_NO_TILESPECS); + fprintf(stdout," p selects the packet error protection (EEP/UEP with EPBs)\n"); + fprintf(stdout," to be applied to raw data: 'type' can be\n"); + fprintf(stdout," [0=none 1,absent=predefined 16=CRC-16 32=CRC-32 37-128=RS]\n"); + fprintf(stdout," if 'tilepart:pack' is absent, it is from tile 0, packet 0\n"); + fprintf(stdout," if 'tilepart:pack' is present, it applies from that tile\n"); + fprintf(stdout," and that packet onwards, up to the next packet spec\n"); + fprintf(stdout," or to the last packet in the last tilepart in the stream\n"); + fprintf(stdout," (max. %d specs)\n", JPWL_MAX_NO_PACKSPECS); + fprintf(stdout," s enables sensitivity data insertion (ESD): 'method' can be\n"); + fprintf(stdout," [-1=NO ESD 0=RELATIVE ERROR 1=MSE 2=MSE REDUCTION 3=PSNR\n"); + fprintf(stdout," 4=PSNR INCREMENT 5=MAXERR 6=TSE 7=RESERVED]\n"); + fprintf(stdout," if 'tilepart' is absent, it is for main header only\n"); + fprintf(stdout," if 'tilepart' is present, it applies from that tile\n"); + fprintf(stdout," onwards, up to the next s<> spec, or to the last tilepart\n"); + fprintf(stdout," in the codestream (max. %d specs)\n", JPWL_MAX_NO_TILESPECS); + fprintf(stdout," g determines the addressing mode: can be\n"); + fprintf(stdout," [0=PACKET 1=BYTE RANGE 2=PACKET RANGE]\n"); + fprintf(stdout," a determines the size of data addressing: can be\n"); + fprintf(stdout," 2/4 bytes (small/large codestreams). If not set, auto-mode\n"); + fprintf(stdout," z determines the size of sensitivity values: can be\n"); + fprintf(stdout," 1/2 bytes, for the transformed pseudo-floating point value\n"); + fprintf(stdout," ex.:\n"); + fprintf(stdout," h,h0=64,h3=16,h5=32,p0=78,p0:24=56,p1,p3:0=0,p3:20=32,s=0,\n"); + fprintf(stdout," s0=6,s3=-1,a=0,g=1,z=1\n"); + fprintf(stdout," means\n"); + fprintf(stdout," predefined EPB in MH, rs(64,32) from TPH 0 to TPH 2,\n"); + fprintf(stdout," CRC-16 in TPH 3 and TPH 4, CRC-32 in remaining TPHs,\n"); + fprintf(stdout," UEP rs(78,32) for packets 0 to 23 of tile 0,\n"); + fprintf(stdout," UEP rs(56,32) for packs. 24 to the last of tilepart 0,\n"); + fprintf(stdout," UEP rs default for packets of tilepart 1,\n"); + fprintf(stdout," no UEP for packets 0 to 19 of tilepart 3,\n"); + fprintf(stdout," UEP CRC-32 for packs. 20 of tilepart 3 to last tilepart,\n"); + fprintf(stdout," relative sensitivity ESD for MH,\n"); + fprintf(stdout," TSE ESD from TPH 0 to TPH 2, byte range with automatic\n"); + fprintf(stdout," size of addresses and 1 byte for each sensitivity value\n"); + fprintf(stdout," ex.:\n"); + fprintf(stdout," h,s,p\n"); + fprintf(stdout," means\n"); + fprintf(stdout," default protection to headers (MH and TPHs) as well as\n"); + fprintf(stdout," data packets, one ESD in MH\n"); + fprintf(stdout," N.B.: use the following recommendations when specifying\n"); + fprintf(stdout," the JPWL parameters list\n"); + fprintf(stdout," - when you use UEP, always pair the 'p' option with 'h'\n"); #endif /* USE_JPWL */ /* <> */ - fprintf(stdout,"List of parameters for the JPEG 2000 " -#ifdef USE_JPWL - "+ JPWL " -#endif /* USE_JPWL */ - "decoder:\n"); -/* < \n"); fprintf(stdout," Image file Directory path \n"); - fprintf(stdout," -OutFor \n"); + fprintf(stdout," -OutFor \n"); fprintf(stdout," REQUIRED only if -ImgDir is used\n"); - fprintf(stdout," Need to specify only format without filename \n"); - fprintf(stdout," Currently accepts PGM, PPM, PNM, PGX, PNG, BMP, TIF, RAW and TGA formats\n"); + fprintf(stdout," Output format for decompressed images.\n"); fprintf(stdout," -i \n"); - fprintf(stdout," REQUIRED only if an Input image directory not specified\n"); + fprintf(stdout," REQUIRED only if an Input image directory is not specified\n"); fprintf(stdout," Currently accepts J2K-files, JP2-files and JPT-files. The file type\n"); fprintf(stdout," is identified based on its suffix.\n"); fprintf(stdout," -o \n"); fprintf(stdout," REQUIRED\n"); - fprintf(stdout," Currently accepts PGM, PPM, PNM, PGX, PNG, BMP, TIF, RAW and TGA files\n"); + fprintf(stdout," Currently accepts formats specified above (see OutFor option)\n"); fprintf(stdout," Binary data is written to the file (not ascii). If a PGX\n"); fprintf(stdout," filename is given, there will be as many output files as there are\n"); fprintf(stdout," components: an indice starting from 0 will then be appended to the\n"); diff --git a/src/bin/jp2/opj_dump.c b/src/bin/jp2/opj_dump.c index c40f3686..a85cfe90 100644 --- a/src/bin/jp2/opj_dump.c +++ b/src/bin/jp2/opj_dump.c @@ -91,21 +91,14 @@ static int parse_cmdline_decoder(int argc, char **argv, opj_dparameters_t *param /* -------------------------------------------------------------------------- */ static void decode_help_display(void) { - fprintf(stdout,"This is the opj_dump utility from the OpenJPEG project.\n" + fprintf(stdout,"\nThis is the opj_dump utility from the OpenJPEG project.\n" + "It dumps JPEG 2000 codestream info to stdout or a given file.\n" "It has been compiled against openjp2 library v%s.\n\n",opj_version()); - fprintf(stdout,"HELP\n----\n\n"); - fprintf(stdout,"- the -h option displays this help information on screen\n\n"); -/* UniPG>> */ - fprintf(stdout,"List of parameters for the JPEG 2000 " -#ifdef USE_JPWL - "+ JPWL " -#endif /* USE_JPWL */ - "dump utility:\n"); -/* <\n"); fprintf(stdout," Image file Directory path \n"); fprintf(stdout," -i \n"); fprintf(stdout," REQUIRED only if an Input image directory not specified\n"); @@ -115,10 +108,10 @@ static void decode_help_display(void) { fprintf(stdout," OPTIONAL\n"); fprintf(stdout," Output file where file info will be dump.\n"); fprintf(stdout," By default it will be in the stdout.\n"); - fprintf(stdout," -quiet "); /* FIXME WIP_MSD */ + fprintf(stdout," -v "); /* FIXME WIP_MSD */ fprintf(stdout," OPTIONAL\n"); - fprintf(stdout," Suppress informative messages\n"); - fprintf(stdout," By default verbose mode is on.\n"); + fprintf(stdout," Enable informative messages\n"); + fprintf(stdout," By default verbose mode is off.\n"); fprintf(stdout,"\n"); }