[svn] / trunk / xvidcore / examples / xvid_encraw.c Repository:
ViewVC logotype

Diff of /trunk/xvidcore/examples/xvid_encraw.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2073, Tue Feb 11 14:48:10 2014 UTC revision 2074, Tue Feb 11 14:48:31 2014 UTC
# Line 126  Line 126 
126    
127  #define MAX_ZONES   64  #define MAX_ZONES   64
128  #define MAX_ENC_INSTANCES 4  #define MAX_ENC_INSTANCES 4
129    #define MAX_XDIM 4096
130    #define MAX_YDIM 4096
131  #define DEFAULT_QUANT 400  #define DEFAULT_QUANT 400
132    #define DEFAULT_BITRATE 700000 /* bitrate expressed in bps, not kbps */
133    #define DEFAULT_INTERLACING 1  /* 1:BFF, 2:TFF */
134    #define DEFAULT_SSIM 2
135    #define DEFAULT_PROGRESS 10    /* show progress every 10 frames by default */
136    
137  typedef struct  typedef struct
138  {  {
# Line 187  Line 193 
193    
194  static  int ARG_NUM_APP_THREADS = 1;  static  int ARG_NUM_APP_THREADS = 1;
195  static  int ARG_CPU_FLAGS = 0;  static  int ARG_CPU_FLAGS = 0;
 static  int ARG_STATS = 0;  
196  static  int ARG_SSIM = -1;  static  int ARG_SSIM = -1;
 static  int ARG_PSNRHVSM = 0;  
197  static  char* ARG_SSIM_PATH = NULL;  static  char* ARG_SSIM_PATH = NULL;
198  static  int ARG_DUMP = 0;  static  int ARG_DUMP = 0;
199  static  int ARG_LUMIMASKING = 0;  static  int ARG_LUMIMASKING = 0;
# Line 219  Line 223 
223  static  int ARG_BQRATIO = 150;  static  int ARG_BQRATIO = 150;
224  static  int ARG_BQOFFSET = 100;  static  int ARG_BQOFFSET = 100;
225  static  int ARG_MAXBFRAMES = 2;  static  int ARG_MAXBFRAMES = 2;
 static  int ARG_PACKED = 1;  
226  static  int ARG_DEBUG = 0;  static  int ARG_DEBUG = 0;
 static  int ARG_VOPDEBUG = 0;  
 static  int ARG_TRELLIS = 1;  
227  static  int ARG_QTYPE = 0;  static  int ARG_QTYPE = 0;
228  static  int ARG_QMATRIX = 0;  static  int ARG_QMATRIX = 0;
 static  int ARG_GMC = 0;  
229  static  int ARG_INTERLACING = 0;  static  int ARG_INTERLACING = 0;
 static  int ARG_QPEL = 0;  
 static  int ARG_TURBO = 0;  
230  static  int ARG_VHQMODE = 1;  static  int ARG_VHQMODE = 1;
 static  int ARG_BVHQ = 0;  
231  static  int ARG_QMETRIC = 0;  static  int ARG_QMETRIC = 0;
 static  int ARG_CLOSED_GOP = 1;  
 static  int ARG_CHROMAME = 1;  
232  static  int ARG_PAR = 1;  static  int ARG_PAR = 1;
233  static  int ARG_PARHEIGHT;  static  int ARG_PARHEIGHT;
234  static  int ARG_PARWIDTH;  static  int ARG_PARWIDTH;
# Line 264  Line 259 
259          /* the path where to save output */          /* the path where to save output */
260  static char filepath[256] = "./";  static char filepath[256] = "./";
261    
262    /* on/off options */
263    static  int ARG_USE_ASSEMBLER = 1;
264    static  int ARG_TURBO         = 0;
265    static  int ARG_BVHQ          = 0;
266    static  int ARG_QPEL          = 0;
267    static  int ARG_GMC           = 0;
268    static  int ARG_PACKED        = 1;
269    static  int ARG_CLOSED_GOP    = 1;
270    static  int ARG_STATS         = 0;
271    static  int ARG_PSNRHVSM      = 0;
272    static  int ARG_VOPDEBUG      = 0;
273    static  int ARG_CHROMAME      = 1;
274    static  int ARG_TRELLIS       = 1;
275    
276  static  unsigned char qmatrix_intra[64];  static  unsigned char qmatrix_intra[64];
277  static  unsigned char qmatrix_inter[64];  static  unsigned char qmatrix_inter[64];
278    
# Line 345  Line 354 
354    
355          int input_num = 0;          int input_num = 0;
356          int totalsize = 0;          int totalsize = 0;
357          int use_assembler = 1;          int use_assembler = ARG_USE_ASSEMBLER;
358          int i;          int i;
359    
360          printf("xvid_encraw - raw mpeg4 bitstream encoder ");          printf("xvid_encraw - raw mpeg4 bitstream encoder ");
# Line 396  Line 405 
405                                          ARG_BITRATE *= 1000;                                          ARG_BITRATE *= 1000;
406                          }                          }
407                          else                          else
408                                  ARG_BITRATE = 700000;                                  ARG_BITRATE = DEFAULT_BITRATE;
409                  } else if (strcmp("-size", argv[i]) == 0 && i < argc - 1) {                  } else if (strcmp("-size", argv[i]) == 0 && i < argc - 1) {
410                          i++;                          i++;
411                          ARG_TARGETSIZE = atoi(argv[i]);                          ARG_TARGETSIZE = atoi(argv[i]);
# Line 445  Line 454 
454                          ARG_PACKED = 2;                          ARG_PACKED = 2;
455                  } else if (strcmp("-nochromame", argv[i]) == 0) {                  } else if (strcmp("-nochromame", argv[i]) == 0) {
456                          ARG_CHROMAME = 0;                          ARG_CHROMAME = 0;
457                    } else if (strcmp("-chromame", argv[i]) == 0) {
458                            ARG_CHROMAME = 1;
459                  } else if (strcmp("-threads", argv[i]) == 0 && i < argc -1) {                  } else if (strcmp("-threads", argv[i]) == 0 && i < argc -1) {
460                          i++;                          i++;
461                          ARG_THREADS = atoi(argv[i]);                          ARG_THREADS = atoi(argv[i]);
# Line 581  Line 592 
592                          ARG_INPUTFILE = argv[i];                          ARG_INPUTFILE = argv[i];
593                  } else if (strcmp("-stats", argv[i]) == 0) {                  } else if (strcmp("-stats", argv[i]) == 0) {
594                          ARG_STATS = 1;                          ARG_STATS = 1;
595                    } else if (strcmp("-nostats", argv[i]) == 0) {
596                            ARG_STATS = 0;
597                  } else if (strcmp("-ssim", argv[i]) == 0) {                  } else if (strcmp("-ssim", argv[i]) == 0) {
598                          ARG_SSIM = 2;                          ARG_SSIM = DEFAULT_SSIM;
599                          if ((i < argc - 1) && (*argv[i+1] != '-')) {                          if ((i < argc - 1) && (*argv[i+1] != '-')) {
600                                  i++;                                  i++;
601                                  ARG_SSIM = atoi(argv[i]);                                  ARG_SSIM = atoi(argv[i]);
602                          }                          }
603                  } else if (strcmp("-psnrhvsm", argv[i]) == 0) {                  } else if (strcmp("-psnrhvsm", argv[i]) == 0) {
604                          ARG_PSNRHVSM = 1;                          ARG_PSNRHVSM = 1;
605                    } else if (strcmp("-nopsnrhvsm", argv[i]) == 0) {
606                            ARG_PSNRHVSM = 0;
607                  } else if (strcmp("-ssim_file", argv[i]) == 0 && i < argc -1) {                  } else if (strcmp("-ssim_file", argv[i]) == 0 && i < argc -1) {
608                          i++;                          i++;
609                          ARG_SSIM_PATH = argv[i];                          ARG_SSIM_PATH = argv[i];
# Line 679  Line 694 
694  #endif  #endif
695                  } else if (strcmp("-vop_debug", argv[i]) == 0) {                  } else if (strcmp("-vop_debug", argv[i]) == 0) {
696                          ARG_VOPDEBUG = 1;                          ARG_VOPDEBUG = 1;
697                    } else if (strcmp("-novop_debug", argv[i]) == 0) {
698                            ARG_VOPDEBUG = 0;
699                    } else if (strcmp("-trellis", argv[i]) == 0) {
700                            ARG_TRELLIS = 1;
701                  } else if (strcmp("-notrellis", argv[i]) == 0) {                  } else if (strcmp("-notrellis", argv[i]) == 0) {
702                          ARG_TRELLIS = 0;                          ARG_TRELLIS = 0;
703                  } else if (strcmp("-bvhq", argv[i]) == 0) {                  } else if (strcmp("-bvhq", argv[i]) == 0) {
704                          ARG_BVHQ = 1;                          ARG_BVHQ = 1;
705                    } else if (strcmp("-nobvhq", argv[i]) == 0) {
706                            ARG_BVHQ = 0;
707                  } else if (strcmp("-qpel", argv[i]) == 0) {                  } else if (strcmp("-qpel", argv[i]) == 0) {
708                          ARG_QPEL = 1;                          ARG_QPEL = 1;
709                    } else if (strcmp("-noqpel", argv[i]) == 0) {
710                            ARG_QPEL = 0;
711                  } else if (strcmp("-turbo", argv[i]) == 0) {                  } else if (strcmp("-turbo", argv[i]) == 0) {
712                          ARG_TURBO = 1;                          ARG_TURBO = 1;
713                    } else if (strcmp("-noturbo", argv[i]) == 0) {
714                            ARG_TURBO = 0;
715                  } else if (strcmp("-gmc", argv[i]) == 0) {                  } else if (strcmp("-gmc", argv[i]) == 0) {
716                          ARG_GMC = 1;                          ARG_GMC = 1;
717                    } else if (strcmp("-nogmc", argv[i]) == 0) {
718                            ARG_GMC = 0;
719                  } else if (strcmp("-interlaced", argv[i]) == 0) {                  } else if (strcmp("-interlaced", argv[i]) == 0) {
720                          if ((i < argc - 1) && (*argv[i+1] != '-')) {                          if ((i < argc - 1) && (*argv[i+1] != '-')) {
721                                  i++;                                  i++;
722                                  ARG_INTERLACING = atoi(argv[i]);                                  ARG_INTERLACING = atoi(argv[i]);
723                          } else {                          } else {
724                                  ARG_INTERLACING = 1;                                  ARG_INTERLACING = DEFAULT_INTERLACING;
725                          }                          }
726                  } else if (strcmp("-noclosed_gop", argv[i]) == 0) {                  } else if (strcmp("-noclosed_gop", argv[i]) == 0) {
727                          ARG_CLOSED_GOP = 0;                          ARG_CLOSED_GOP = 0;
# Line 752  Line 779 
779                          if (ARG_PROGRESS > 0)                          if (ARG_PROGRESS > 0)
780                                  i++;                                  i++;
781                          else                          else
782                                  ARG_PROGRESS = 10;                                  ARG_PROGRESS = DEFAULT_PROGRESS;
783                  } else if (strcmp("-help", argv[i]) == 0) {                  } else if (strcmp("-help", argv[i]) == 0) {
784                          usage();                          usage();
785                          return (0);                          return (0);
# Line 767  Line 794 
794   *                            Arguments checking   *                            Arguments checking
795   ****************************************************************************/   ****************************************************************************/
796    
797          if (XDIM <= 0 || XDIM >= 4096 || YDIM <= 0 || YDIM >= 4096) {          if (XDIM <= 0 || XDIM >= MAX_XDIM || YDIM <= 0 || YDIM >= MAX_YDIM) {
798                  fprintf(stderr,                  fprintf(stderr,
799                                  "Trying to retrieve width and height from input header\n");                                  "Trying to retrieve width and height from input header\n");
800                  if (!ARG_INPUTTYPE)                  if (!ARG_INPUTTYPE)
# Line 1814  Line 1841 
1841          fprintf(stderr, "Input options:\n");          fprintf(stderr, "Input options:\n");
1842          fprintf(stderr, " -i      string : input filename (stdin)\n");          fprintf(stderr, " -i      string : input filename (stdin)\n");
1843  #ifdef XVID_AVI_INPUT  #ifdef XVID_AVI_INPUT
1844          fprintf(stderr, " -type   integer: input data type (yuv=0, pgm=1, avi/avs=2)\n");          fprintf(stderr, " -type   integer : input data type (yuv=0, pgm=1, avi/avs=2) (");
1845  #else  #else
1846          fprintf(stderr, " -type   integer: input data type (yuv=0, pgm=1)\n");          fprintf(stderr, " -type   integer : input data type (yuv=0, pgm=1) (");
1847  #endif  #endif
1848          fprintf(stderr, " -w      integer: frame width ([1.2048])\n");          fprintf(stderr, "%d)\n", ARG_INPUTTYPE);
1849          fprintf(stderr, " -h      integer: frame height ([1.2048])\n");          fprintf(stderr, " -w      integer : frame width ([1.%d])\n", MAX_XDIM);
1850          fprintf(stderr, " -csp    string : colorspace of raw input file i420, yv12 (default)\n");          fprintf(stderr, " -h      integer : frame height ([1.%d])\n", MAX_YDIM);
1851          fprintf(stderr, " -frames integer: number of frames to encode\n");          fprintf(stderr, " -csp    string  : colorspace of raw input file i420%s, yv12%s\n", (ARG_COLORSPACE == XVID_CSP_I420)?" (default)":"", (ARG_COLORSPACE == XVID_CSP_YV12)?" (default)":"");
1852          fprintf(stderr, "\n");          fprintf(stderr, " -frames integer : number of frames to encode (");
1853            if (ARG_MAXFRAMENR==-1)
1854                    fprintf(stderr, "all)");
1855            else
1856                    fprintf(stderr, "%d)", ARG_MAXFRAMENR);
1857            fprintf(stderr, "\n\n");
1858          fprintf(stderr, "Output options:\n");          fprintf(stderr, "Output options:\n");
1859          fprintf(stderr, " -dump      : save decoder output\n");          fprintf(stderr, " -dump      : save decoder output\n");
1860          fprintf(stderr, " -save      : save an Elementary Stream file per frame\n");          fprintf(stderr, " -save      : save an Elementary Stream file per frame\n");
# Line 1834  Line 1866 
1866          fprintf(stderr, " -mkv string: save a MKV file for the complete sequence\n");          fprintf(stderr, " -mkv string: save a MKV file for the complete sequence\n");
1867  #endif  #endif
1868          fprintf(stderr, "\n");          fprintf(stderr, "\n");
         fprintf(stderr, "BFrames options:\n");  
         fprintf(stderr, " -max_bframes   integer: max bframes (2)\n");  
         fprintf(stderr, " -bquant_ratio  integer: bframe quantizer ratio (150)\n");  
         fprintf(stderr, " -bquant_offset integer: bframe quantizer offset (100)\n");  
         fprintf(stderr, "\n");  
1869          fprintf(stderr, "Rate control options:\n");          fprintf(stderr, "Rate control options:\n");
1870          fprintf(stderr, " -framerate float               : target framerate (auto)\n");          fprintf(stderr, " -framerate float               : target framerate (auto)\n");
1871          fprintf(stderr, " -bitrate   [integer]           : target bitrate in kbps (700)\n");          fprintf(stderr, " -bitrate          [integer]  : target bitrate in kbps (%d)\n", DEFAULT_BITRATE/1000);
1872          fprintf(stderr, " -size      integer             : target size in kilobytes\n");          fprintf(stderr, " -size      integer             : target size in kilobytes\n");
1873      fprintf(stderr,     " -single                        : single pass mode (default)\n");          fprintf(stderr, " -single                      : single pass mode%s\n", (ARG_SINGLE)?" (default)":"");
1874          fprintf(stderr, " -cq        float               : single pass constant quantizer\n");          fprintf(stderr, " -cq        float               : single pass constant quantizer\n");
1875          fprintf(stderr, " -pass1     [filename]          : twopass mode (first pass)\n");          fprintf(stderr, " -pass1     [filename]          : twopass mode (first pass)\n");
1876          fprintf(stderr, " -full1pass                     : perform full first pass\n");          fprintf(stderr, " -full1pass                   : perform full quality first pass (disabled)\n");
1877          fprintf(stderr, " -pass2     [filename]          : twopass mode (2nd pass)\n");          fprintf(stderr, " -pass2     [filename]          : twopass mode (2nd pass)\n");
1878            fprintf(stderr, " -max_key_interval integer    : maximum keyframe interval (%d)\n", ARG_MAXKEYINTERVAL);
1879          fprintf(stderr, " -zq starting_frame float       : bitrate zone; quant\n");          fprintf(stderr, " -zq starting_frame float       : bitrate zone; quant\n");
1880          fprintf(stderr, " -zw starting_frame float       : bitrate zone; weight\n");          fprintf(stderr, " -zw starting_frame float       : bitrate zone; weight\n");
     fprintf(stderr, " -max_key_interval integer      : maximum keyframe interval (300)\n");  
1881      fprintf(stderr, "\n");      fprintf(stderr, "\n");
1882          fprintf(stderr, "Single Pass options:\n");          fprintf(stderr, "Single Pass options:\n");
1883          fprintf(stderr, "-reaction   integer             : reaction delay factor (16)\n");          fprintf(stderr, " -reaction         integer    : reaction delay factor (%d)\n", ARG_REACTION);
1884          fprintf(stderr, "-averaging  integer             : averaging period (100)\n");          fprintf(stderr, " -averaging        integer    : averaging period (%d)\n", ARG_AVERAGING);
1885          fprintf(stderr, "-smoother   integer             : smoothing buffer (100)\n");          fprintf(stderr, " -smoother         integer    : smoothing buffer (%d)\n", ARG_SMOOTHER);
1886          fprintf(stderr, "\n");          fprintf(stderr, "\n");
1887          fprintf(stderr, "Second Pass options:\n");          fprintf(stderr, "Second Pass options:\n");
1888          fprintf(stderr, "-kboost     integer             : I frame boost (10)\n");          fprintf(stderr, " -kboost           integer    : I frame boost (%d)\n", ARG_KBOOST);
1889          fprintf(stderr, "-kthresh    integer             : I frame reduction threshold (1)\n");          fprintf(stderr, " -kthresh          integer    : I frame reduction threshold (%d)\n", ARG_KTHRESH);
1890          fprintf(stderr, "-kreduction integer             : I frame reduction amount (20)\n");          fprintf(stderr, " -kreduction       integer    : I frame reduction amount (%d)\n", ARG_KREDUCTION);
1891          fprintf(stderr, "-ostrength  integer             : overflow control strength (5)\n");          fprintf(stderr, " -ostrength        integer    : overflow control strength (%d)\n", ARG_OVERSTRENGTH);
1892          fprintf(stderr, "-oimprove   integer             : max overflow improvement (5)\n");          fprintf(stderr, " -oimprove         integer    : max overflow improvement (%d)\n", ARG_OVERIMPROVE);
1893          fprintf(stderr, "-odegrade   integer             : max overflow degradation (5)\n");          fprintf(stderr, " -odegrade         integer    : max overflow degradation (%d)\n", ARG_OVERDEGRADE);
1894          fprintf(stderr, "-chigh      integer             : high bitrate scenes degradation (0)\n");          fprintf(stderr, " -chigh            integer    : high bitrate scenes degradation (%d)\n", ARG_CHIGH);
1895          fprintf(stderr, "-clow       integer             : low bitrate scenes improvement (0)\n");          fprintf(stderr, " -clow             integer    : low bitrate scenes improvement (%d)\n", ARG_CLOW);
1896          fprintf(stderr, "-overhead   integer             : container frame overhead (0)\n");          fprintf(stderr, " -overhead         integer    : container frame overhead (%d)\n", ARG_OVERHEAD);
1897          fprintf(stderr, "-vbvsize    integer             : use vbv buffer size\n");          fprintf(stderr, "-vbvsize    integer             : use vbv buffer size\n");
1898          fprintf(stderr, "-vbvmax     integer             : vbv max bitrate\n");          fprintf(stderr, "-vbvmax     integer             : vbv max bitrate\n");
1899          fprintf(stderr, "-vbvpeak    integer             : vbv peak bitrate over 1 second\n");          fprintf(stderr, "-vbvpeak    integer             : vbv peak bitrate over 1 second\n");
1900          fprintf(stderr, "\n");          fprintf(stderr, "\n");
1901            fprintf(stderr, "BFrames options:\n");
1902            fprintf(stderr, " -max_bframes      integer    : max bframes (%d)\n", ARG_MAXBFRAMES);
1903            fprintf(stderr, " -bquant_ratio     integer    : bframe quantizer ratio (%d)\n", ARG_BQRATIO);
1904            fprintf(stderr, " -bquant_offset    integer    : bframe quantizer offset (%d)\n", ARG_BQOFFSET);
1905            fprintf(stderr, "\n");
1906          fprintf(stderr, "Other options\n");          fprintf(stderr, "Other options\n");
1907          fprintf(stderr, " -noasm                         : do not use assembly optmized code\n");          if (ARG_USE_ASSEMBLER)
1908          fprintf(stderr, " -turbo                         : use turbo presets for higher encoding speed\n");                  fprintf(stderr, " -noasm                       : do not use assembly optimized code (use)\n");
1909          fprintf(stderr, " -quality integer               : quality ([0..%d]) (6)\n", ME_ELEMENTS - 1);          else
1910          fprintf(stderr, " -vhqmode integer               : level of R-D optimizations ([0..4]) (1)\n");                  fprintf(stderr, " -asm                         : use assembly optimized code (don't use)\n");
1911          fprintf(stderr, " -bvhq                          : use R-D optimizations for B-frames\n");          if (ARG_TURBO)
1912          fprintf(stderr, " -metric integer                : distortion metric for R-D opt (PSNR:0, PSNRHVSM: 1)\n");                  fprintf(stderr, " -noturbo                     : do not use turbo presets for higher encoding speed (use)\n");
1913          fprintf(stderr, " -qpel                          : use quarter pixel ME\n");          else
1914          fprintf(stderr, " -gmc                           : use global motion compensation\n");                  fprintf(stderr, " -turbo                       : use turbo presets for higher encoding speed (don't use)\n");
1915          fprintf(stderr, " -qtype   integer               : quantization type (H263:0, MPEG4:1) (0)\n");          fprintf(stderr, " -quality          integer    : quality ([0..%d]) (%d)\n", ME_ELEMENTS - 1, ARG_QUALITY);
1916            fprintf(stderr, " -vhqmode          integer    : level of R-D optimizations ([0..4]) (%d)\n", ARG_VHQMODE);
1917            if (ARG_BVHQ)
1918                    fprintf(stderr, " -nobvhq                      : do not use R-D optimizations for B-frames (use)\n");
1919            else
1920                    fprintf(stderr, " -bvhq                        : use R-D optimizations for B-frames (don't use)\n");
1921            fprintf(stderr, " -metric           integer    : distortion metric for R-D opt (PSNR:0, PSNRHVSM:1) (%d)\n", ARG_QMETRIC);
1922            if (ARG_QPEL)
1923                    fprintf(stderr, " -noqpel                      : do not use quarter pixel ME (use)\n");
1924            else
1925                    fprintf(stderr, " -qpel                        : use quarter pixel ME (don't use)\n");
1926            if (ARG_GMC)
1927                    fprintf(stderr, " -nogmc                       : do not use global motion compensation (use)\n");
1928            else
1929                    fprintf(stderr, " -gmc                         : use global motion compensation (don't use)\n");
1930            fprintf(stderr, " -qtype            integer    : quantization type (H263:0, MPEG4:1) (%d)\n", ARG_QTYPE);
1931          fprintf(stderr, " -qmatrix filename              : use custom MPEG4 quantization matrix\n");          fprintf(stderr, " -qmatrix filename              : use custom MPEG4 quantization matrix\n");
1932          fprintf(stderr, " -interlaced [integer]          : interlaced encoding (BFF:1, TFF:2) (1)\n");          fprintf(stderr, " -interlaced       [integer]  : interlaced encoding (BFF:1, TFF:2) (%d)\n", DEFAULT_INTERLACING);
1933          fprintf(stderr, " -nopacked                      : Disable packed mode\n");          if (ARG_PACKED)
1934          fprintf(stderr, " -noclosed_gop                  : Disable closed GOP mode\n");                  fprintf(stderr, " -nopacked                    : Disable packed B-frames mode (enabled)\n");
1935          fprintf(stderr, " -masking [integer]             : HVS masking mode (None:0, Lumi:1, Variance:2) (0)\n");          else
1936          fprintf(stderr, " -stats                         : print stats about encoded frames\n");                  fprintf(stderr, " -packed                      : Enable packed B-frames mode (disabled)\n");
1937          fprintf(stderr, " -ssim [integer]                : prints ssim for every frame (accurate: 0 fast: 4) (2)\n");          if (ARG_CLOSED_GOP)
1938                    fprintf(stderr, " -noclosed_gop                : Disable closed GOP mode (enabled)\n");
1939            else
1940                    fprintf(stderr, " -closed_gop                  : Enable closed GOP mode (disabled)\n");
1941            fprintf(stderr, " -masking          [integer]  : HVS masking mode (None:0, Lumi:1, Variance:2) (%d)\n", ARG_LUMIMASKING);
1942            if (ARG_STATS)
1943                    fprintf(stderr, " -nostats                     : do not print stats about encoded frames (print)\n");
1944            else
1945                    fprintf(stderr, " -stats                       : print stats about encoded frames (don't print)\n");
1946            fprintf(stderr, " -ssim             [integer]  : prints ssim for every frame (accurate: 0 fast: 4) (%d)\n", DEFAULT_SSIM);
1947          fprintf(stderr, " -ssim_file filename            : outputs the ssim stats into a file\n");          fprintf(stderr, " -ssim_file filename            : outputs the ssim stats into a file\n");
1948          fprintf(stderr, " -psnrhvsm                      : prints PSNRHVSM metric for every frame\n");          if (ARG_PSNRHVSM)
1949          fprintf(stderr, " -debug                         : activates xvidcore internal debugging output\n");                  fprintf(stderr, " -nopsnrhvsm                  : do not print PSNRHVSM metric for every frame (print)\n");
1950          fprintf(stderr, " -vop_debug                     : print some info directly into encoded frames\n");          else
1951          fprintf(stderr, " -nochromame                    : Disable chroma motion estimation\n");                  fprintf(stderr, " -psnrhvsm                    : print PSNRHVSM metric for every frame (don't print)\n");
1952          fprintf(stderr, " -notrellis                     : Disable trellis quantization\n");          fprintf(stderr, " -debug            integer    : activates xvidcore internal debugging output (don't activate)\n");
1953          fprintf(stderr, " -imin    integer               : Minimum I Quantizer (1..31) (2)\n");          if (ARG_VOPDEBUG)
1954          fprintf(stderr, " -imax    integer               : Maximum I quantizer (1..31) (31)\n");                  fprintf(stderr, " -novop_debug                 : do not print debug info directly into encoded frames (print)\n");
1955          fprintf(stderr, " -bmin    integer               : Minimum B Quantizer (1..31) (2)\n");          else
1956          fprintf(stderr, " -bmax    integer               : Maximum B quantizer (1..31) (31)\n");                  fprintf(stderr, " -vop_debug                   : print some info directly into encoded frames (don't print)\n");
1957          fprintf(stderr, " -pmin    integer               : Minimum P Quantizer (1..31) (2)\n");          if (ARG_CHROMAME)
1958          fprintf(stderr, " -pmax    integer               : Maximum P quantizer (1..31) (31)\n");                  fprintf(stderr, " -nochromame                  : Disable chroma motion estimation (enabled)\n");
1959          fprintf(stderr, " -drop    integer               : Frame Drop Ratio (0..100) (0)\n");          else
1960          fprintf(stderr, " -start   integer               : Starting frame number\n");                  fprintf(stderr, " -chromame                    : Enable chroma motion estimation (disabled)\n");
1961          fprintf(stderr, " -threads integer               : Number of threads\n");          if (ARG_TRELLIS)
1962          fprintf(stderr, " -slices  integer               : Number of slices\n");                  fprintf(stderr, " -notrellis                   : Disable trellis quantization (enabled)\n");
1963          fprintf(stderr, " -progress [integer]            : Show progress updates every n frames (10)\n");          else
1964          fprintf(stderr, " -par     integer[:integer]     : Set Pixel Aspect Ratio.\n");                  fprintf(stderr, " -trellis                     : Enable trellis quantization (disabled)\n");
1965            fprintf(stderr, " -imin             integer    : Minimum I Quantizer (1..31) (%d)\n", ARG_QUANTS[0]);
1966            fprintf(stderr, " -imax             integer    : Maximum I quantizer (1..31) (%d)\n", ARG_QUANTS[1]);
1967            fprintf(stderr, " -bmin             integer    : Minimum B Quantizer (1..31) (%d)\n", ARG_QUANTS[4]);
1968            fprintf(stderr, " -bmax             integer    : Maximum B quantizer (1..31) (%d)\n", ARG_QUANTS[5]);
1969            fprintf(stderr, " -pmin             integer    : Minimum P Quantizer (1..31) (%d)\n", ARG_QUANTS[2]);
1970            fprintf(stderr, " -pmax             integer    : Maximum P quantizer (1..31) (%d)\n", ARG_QUANTS[3]);
1971            fprintf(stderr, " -drop             integer    : Frame Drop Ratio (0..100) (%d)\n", ARG_FRAMEDROP);
1972            fprintf(stderr, " -start            integer    : Starting frame number (%d)\n", ARG_STARTFRAMENR);
1973            fprintf(stderr, " -threads          integer    : Number of threads (auto)\n");
1974            fprintf(stderr, " -slices           integer    : Number of slices (%d)\n", ARG_SLICES);
1975            fprintf(stderr, " -progress         [integer]  : Show progress updates every n frames (%d)\n", DEFAULT_PROGRESS);
1976            fprintf(stderr, " -par       integer[:integer] : Set Pixel Aspect Ratio (%d)\n", ARG_PAR);
1977          fprintf(stderr, "                                  1 = 1:1\n");          fprintf(stderr, "                                  1 = 1:1\n");
1978          fprintf(stderr, "                                  2 = 12:11 (4:3 PAL)\n");          fprintf(stderr, "                                  2 = 12:11 (4:3 PAL)\n");
1979          fprintf(stderr, "                                  3 = 10:11 (4:3 NTSC)\n");          fprintf(stderr, "                                  3 = 10:11 (4:3 NTSC)\n");

Legend:
Removed from v.2073  
changed lines
  Added in v.2074

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4