1: # parameter file template with lots of comments to assist you
2: #
3: # you can use this as a template, copying it to a separate file then modifying
4: # the copy
5: #
6: #
7: # any line beginning with '#' is a comment
8: #
9: # no line should be longer than 255 characters
10: #
11: #
12: # general format of each line is:
13: #
14: #
15: # lines can generally be in any order
16: #
17: # an exception is the option 'INPUT' which must be followed by input
18: # files in the order in which they must appear, followed by 'END_INPUT'
19: #
20: # Also, if you use the `command` method of generating input file names,
21: # the command will only be executed in the INPUT_DIR if INPUT_DIR preceeds
22: # the INPUT parameter.
23: #
24: # MUST be in UPPER CASE
25: #
26:
27: PATTERN IBBPBBPBBPBBPBBP
28: OUTPUT output.mpg
29:
30: # mpeg_encode really only accepts 3 different file formats, but using a
31: # conversion statement it can effectively handle ANY file format
32: #
33: # You must specify the type of the input files. The choices are:
34: # YUV, PPM, JMOVIE, Y, JPEG, PNM
35: # (must be upper case)
36: #
37: BASE_FILE_FORMAT PPM
38:
39: #
40: # if YUV format (or using parallel version), must provide width and height
41: # YUV_SIZE widthxheight
42: # this option is ignored if BASE_FILE_FORMAT is not YUV and you're running
43: # on just one machine
44: #
45: YUV_SIZE 352x240
46:
47: # If you are using YUV, there are different supported file formats.
48: # EYUV or UCB are the same as previous versions of this encoder.
49: # (All the Y's, then U's then V's, in 4:2:0 subsampling.)
50: # Other formats, such as Abekas, Phillips, or a general format are
51: # permissible, the general format is a string of Y's, U's, and V's
52: # to specify the file order.
53:
54: INPUT_FORMAT UCB
55:
56: # the conversion statement
57: #
58: # Each occurrence of '*' will be replaced by the input file
59: #
60: # e.g., if you have a bunch of GIF files, then this might be:
61: # INPUT_CONVERT giftoppm *
62: #
63: # e.g., if you have a bunch of files like a.Y a.U a.V, etc., then:
64: # INPUT_CONVERT cat *.Y *.U *.V
65: #
66: # e.g., if you are grabbing from laser disc you might have something like
67: # INPUT_CONVERT goto frame *; grabppm
68: # 'INPUT_CONVERT *' means the files are already in the base file format
69: #
70: INPUT_CONVERT *
71:
72: # number of frames in a GOP.
73: #
74: # since each GOP must have at least one I-frame, the encoder will find the
75: # the first I-frame after GOP_SIZE frames to start the next GOP
76: #
77: # later, will add more flexible GOP signalling
78: #
79: GOP_SIZE 16
80:
81: # number of slices in a frame
82: #
83: # 1 is a good number. another possibility is the number of macroblock rows
84: # (which is the height divided by 16)
85: #
86: SLICES_PER_FRAME 1
87:
88: # directory to get all input files from (makes this file easier to read)
89: INPUT_DIR ./
90:
91: # There are a bunch of ways to specify the input files.
92: # from a simple one-per-line listing, to the following
93: # way of numbering them. See the manual for more information.
94: INPUT
95: # '*' is replaced by the numbers 01, 02, 03, 04
96: # if I instead do [01-11], it would be 01, 02, ..., 09, 10, 11
97: # if I instead do [1-11], it would be 1, 2, 3, ..., 9, 10, 11
98: # if I instead do [1-11+3], it would be 1, 4, 7, 10
99: # the program assumes none of your input files has a name ending in ']'
100: # if you do, too bad!!!
101: #
102: #
103: anim*.ppm [0001-0060]
104: # can have more files here if you want...there is no limit on the number
105: # of files
106: END_INPUT
107:
108:
109:
110: # Many of the remaining options have to do with the motion search and qscale
111:
112: # FULL or HALF -- must be upper case
113: PIXEL HALF
114:
115: # means +/- this many pixels for both P and B frame searches
116: # specify two numbers if you wish to serc different ranges in the two.
117: RANGE 10
118:
119: # this must be one of {EXHAUSTIVE, SUBSAMPLE, LOGARITHMIC}
120: PSEARCH_ALG LOGARITHMIC
121:
122: # this must be one of {SIMPLE, CROSS2, EXHAUSTIVE}
123: #
124: # note that EXHAUSTIVE is really, really, really slow
125: #
126: BSEARCH_ALG CROSS2
127:
128: #
129: # these specify the q-scale for I, P, and B frames
130: # (values must be between 1 and 31)
131: # These are the Qscale values for the entire frame in variable bit-rate
132: # mode, and starting points (but not important) for constant bit rate
133: #
134: IQSCALE 8
135: PQSCALE 10
136: BQSCALE 25
137:
138: # this must be ORIGINAL or DECODED
139: REFERENCE_FRAME ORIGINAL
140:
141: # for parallel parameters see parallel.param in the exmaples subdirectory
142:
143: # if you want constant bit-rate mode, specify it as follows (number is bits/sec):
144: BIT_RATE 1000000
145:
146: # To specify the buffer size (327680 is default, measused in bits, for 16bit words)
147: BUFFER_SIZE 327680
148:
149: # The frame rate is the number of frames/second (legal values:
150: # 23.976, 24, 25, 29.97, 30, 50 ,59.94, 60
151: FRAME_RATE 30
152:
153: # There are many more options, see the users manual for examples....
154: # ASPECT_RATIO, USER_DATA, GAMMA, IQTABLE, etc.