blob: 3495d959e2577d6f33122672556306a0da75dd40
1 | # |
2 | # This is a test configuration file. You can invoke it with |
3 | # ../ffserver -f ffserver.conf |
4 | # when in the tests directory and once the vsynth1 subdirectory |
5 | # has been populated. Then point your browser at http://whatever:9999/teststat.html |
6 | # and you can look at the streams |
7 | # |
8 | |
9 | # |
10 | # Port on which the server is listening. You must select a different |
11 | # port from your standard http web server if it is running on the same |
12 | # computer. |
13 | |
14 | HTTPPort 9999 |
15 | RTSPPort 9990 |
16 | |
17 | # Address on which the server is bound. Only useful if you have |
18 | # several network interfaces. |
19 | |
20 | HTTPBindAddress 0.0.0.0 |
21 | |
22 | # Number of simultaneous requests that can be handled. Since FFServer |
23 | # is very fast, this limit is determined mainly by your Internet |
24 | # connection speed. |
25 | |
26 | MaxClients 1000 |
27 | |
28 | MaxBandwidth 100000 |
29 | |
30 | # Access Log file (uses standard Apache log file format) |
31 | # '-' is the standard output |
32 | |
33 | CustomLog - |
34 | |
35 | ################################################################## |
36 | # Definition of the live feeds. Each live feed contains one video |
37 | # and/or audio sequence coming from an ffmpeg encoder or another |
38 | # ffserver. This sequence may be encoded simultaneously with several |
39 | # codecs at several resolutions. |
40 | |
41 | <Feed feed1.ffm> |
42 | |
43 | # You must use 'ffmpeg' to send a live feed to ffserver. In this |
44 | # example, you can type: |
45 | # |
46 | # ffmpeg http://localhost:8090/feed1.ffm |
47 | |
48 | # ffserver can also do time shifting. It means that it can stream any |
49 | # previously recorded live stream. The request should contain: |
50 | # "http://xxxx?date=[YYYY-MM-DDT][[HH:]MM:]SS[.m...]".You must specify |
51 | # a path where the feed is stored on disk. You also specify the |
52 | # maximum size of the feed (100M bytes here). Default: |
53 | # File=/tmp/feed_name.ffm FileMaxSize=5M |
54 | |
55 | File tests/feed1.ffm |
56 | FileMaxSize 100M |
57 | |
58 | # Fire up ffmpeg pointing at this stream |
59 | |
60 | Launch ./ffmpeg -v 0 -y -f image2 -flags +bitexact -fflags +bitexact -i tests/vsynth1/%02d.pgm -flags +bitexact -fflags +bitexact |
61 | |
62 | ACL allow localhost |
63 | </Feed> |
64 | |
65 | ################################################################## |
66 | # Now you can define each stream which will be generated from the |
67 | # original audio and video stream. Each format has a filename (here |
68 | # 'test128.mpg'). FFServer will send this stream when answering a |
69 | # request containing this filename. |
70 | |
71 | <Stream test_h.avi> |
72 | Feed feed1.ffm |
73 | Format avi |
74 | # |
75 | BitExact |
76 | DctFastint |
77 | IdctSimple |
78 | VideoFrameRate 10 |
79 | VideoSize 352x288 |
80 | VideoBitRate 100 |
81 | VideoGopSize 30 |
82 | NoAudio |
83 | |
84 | PreRoll 10 |
85 | StartSendOnKey |
86 | MaxTime 100 |
87 | |
88 | </Stream> |
89 | |
90 | <Stream test_l.avi> |
91 | Feed feed1.ffm |
92 | Format avi |
93 | # |
94 | BitExact |
95 | DctFastint |
96 | IdctSimple |
97 | VideoFrameRate 2 |
98 | VideoSize 320x240 |
99 | VideoBitRate 40 |
100 | VideoGopSize 20 |
101 | NoAudio |
102 | |
103 | PreRoll 20 |
104 | StartSendOnKey |
105 | MaxTime 100 |
106 | |
107 | </Stream> |
108 | |
109 | #<Stream test_h.mpg> |
110 | #Feed feed1.ffm |
111 | # |
112 | #VideoFrameRate 10 |
113 | #VideoSize 352x288 |
114 | #VideoBitRate 100 |
115 | #VideoGopSize 30 |
116 | #NoAudio |
117 | |
118 | #PreRoll 10 |
119 | #StartSendOnKey |
120 | #MaxTime 100 |
121 | # |
122 | #</Stream> |
123 | # |
124 | #<Stream test_l.mpg> |
125 | #Feed feed1.ffm |
126 | ## |
127 | #VideoFrameRate 2 |
128 | #VideoSize 320x240 |
129 | #VideoBitRate 40 |
130 | #VideoGopSize 20 |
131 | #NoAudio |
132 | # |
133 | #PreRoll 20 |
134 | #StartSendOnKey |
135 | #MaxTime 100 |
136 | # |
137 | #</Stream> |
138 | # |
139 | <Stream test.swf> |
140 | Feed feed1.ffm |
141 | # |
142 | BitExact |
143 | DctFastint |
144 | IdctSimple |
145 | Qscale 10 |
146 | VideoFrameRate 10 |
147 | VideoSize 352x288 |
148 | VideoBitRate 100 |
149 | VideoGopSize 30 |
150 | NoAudio |
151 | |
152 | PreRoll 10 |
153 | StartSendOnKey |
154 | MaxTime 100 |
155 | |
156 | </Stream> |
157 | |
158 | <Stream test_h.asf> |
159 | Feed feed1.ffm |
160 | Format asf |
161 | # |
162 | BitExact |
163 | DctFastint |
164 | IdctSimple |
165 | Qscale 10 |
166 | VideoFrameRate 10 |
167 | VideoSize 320x240 |
168 | VideoBitRate 100 |
169 | VideoGopSize 30 |
170 | NoAudio |
171 | |
172 | PreRoll 10 |
173 | StartSendOnKey |
174 | MaxTime 100 |
175 | |
176 | AVOptionVideo flags +global_header |
177 | |
178 | Metadata title "Test data stream" |
179 | |
180 | </Stream> |
181 | |
182 | <Stream test_l.asf> |
183 | Feed feed1.ffm |
184 | Format asf |
185 | # |
186 | BitExact |
187 | DctFastint |
188 | IdctSimple |
189 | Qscale 10 |
190 | VideoFrameRate 2 |
191 | VideoSize 320x240 |
192 | VideoBitRate 40 |
193 | VideoGopSize 20 |
194 | NoAudio |
195 | |
196 | PreRoll 20 |
197 | StartSendOnKey |
198 | MaxTime 100 |
199 | |
200 | AVOptionVideo flags +global_header |
201 | |
202 | Metadata title "Test data stream" |
203 | |
204 | </Stream> |
205 | |
206 | <Stream test_h.rm> |
207 | |
208 | Feed feed1.ffm |
209 | Format rm |
210 | |
211 | BitExact |
212 | DctFastint |
213 | IdctSimple |
214 | Qscale 10 |
215 | VideoBitRate 100 |
216 | VideoFrameRate 10 |
217 | VideoGopSize 30 |
218 | VideoSize 320x240 |
219 | NoAudio |
220 | |
221 | PreRoll 10 |
222 | StartSendOnKey |
223 | MaxTime 100 |
224 | |
225 | </Stream> |
226 | |
227 | <Stream test_l.rm> |
228 | |
229 | Feed feed1.ffm |
230 | Format rm |
231 | |
232 | BitExact |
233 | DctFastint |
234 | IdctSimple |
235 | Qscale 10 |
236 | VideoBitRate 40 |
237 | VideoFrameRate 2 |
238 | VideoGopSize 20 |
239 | VideoSize 320x240 |
240 | NoAudio |
241 | |
242 | PreRoll 20 |
243 | StartSendOnKey |
244 | MaxTime 100 |
245 | |
246 | </Stream> |
247 | |
248 | |
249 | <Stream test.jpg> |
250 | |
251 | Feed feed1.ffm |
252 | Format jpeg |
253 | Strict -1 |
254 | |
255 | BitExact |
256 | DctFastint |
257 | IdctSimple |
258 | VideoFrameRate 1 |
259 | VideoSize 352x288 |
260 | NoAudio |
261 | |
262 | PreRoll 2 |
263 | |
264 | </Stream> |
265 | |
266 | <Stream test_small.jpg> |
267 | |
268 | Feed feed1.ffm |
269 | Format jpeg |
270 | Strict -1 |
271 | |
272 | BitExact |
273 | DctFastint |
274 | IdctSimple |
275 | VideoFrameRate 1 |
276 | VideoSize 160x128 |
277 | NoAudio |
278 | |
279 | PreRoll 2 |
280 | |
281 | </Stream> |
282 | |
283 | <Stream test.mjpg> |
284 | |
285 | Feed feed1.ffm |
286 | Format mpjpeg |
287 | Strict -1 |
288 | |
289 | BitExact |
290 | DctFastint |
291 | IdctSimple |
292 | VideoFrameRate 1 |
293 | VideoSize 320x240 |
294 | NoAudio |
295 | StartSendOnKey |
296 | |
297 | PreRoll 1 |
298 | MaxTime 100 |
299 | |
300 | </Stream> |
301 | |
302 | |
303 | ################################################################## |
304 | # Special stream : server status |
305 | |
306 | <Stream teststat.html> |
307 | |
308 | Format status |
309 | |
310 | </Stream> |
311 | |
312 |