cae1a140c944f0f7bfabf9e0647e6d78ca27db27
[ffmpeg.git] / doc / ffserver.conf
1 # Port on which the server is listening. You must select a different
2 # port from your standard HTTP web server if it is running on the same
3 # computer.
4 Port 8090
5
6 # Address on which the server is bound. Only useful if you have
7 # several network interfaces.
8 BindAddress 0.0.0.0
9
10 # Number of simultaneous requests that can be handled. Since FFServer
11 # is very fast, it is more likely that you will want to leave this high
12 # and use MaxBandwidth, below.
13 MaxClients 1000
14
15 # This the maximum amount of kbit/sec that you are prepared to
16 # consume when streaming to clients.
17 MaxBandwidth 1000
18
19 # Access log file (uses standard Apache log file format)
20 # '-' is the standard output.
21 CustomLog -
22
23 # Suppress that if you want to launch ffserver as a daemon.
24 NoDaemon
25
26
27 ##################################################################
28 # Definition of the live feeds. Each live feed contains one video
29 # and/or audio sequence coming from an ffmpeg encoder or another
30 # ffserver. This sequence may be encoded simultaneously with several
31 # codecs at several resolutions.
32
33 <Feed feed1.ffm>
34
35 # You must use 'ffmpeg' to send a live feed to ffserver. In this
36 # example, you can type:
37 #
38 # ffmpeg http://localhost:8090/feed1.ffm
39
40 # ffserver can also do time shifting. It means that it can stream any
41 # previously recorded live stream. The request should contain:
42 # "http://xxxx?date=[YYYY-MM-DDT][[HH:]MM:]SS[.m...]".You must specify
43 # a path where the feed is stored on disk. You also specify the
44 # maximum size of the feed, where zero means unlimited. Default:
45 # File=/tmp/feed_name.ffm FileMaxSize=5M
46 File /tmp/feed1.ffm
47 FileMaxSize 200K
48
49 # You could specify
50 # ReadOnlyFile /saved/specialvideo.ffm
51 # This marks the file as readonly and it will not be deleted or updated.
52
53 # Specify launch in order to start ffmpeg automatically.
54 # First ffmpeg must be defined with an appropriate path if needed,
55 # after that options can follow, but avoid adding the http:// field
56 #Launch ffmpeg
57
58 # Only allow connections from localhost to the feed.
59 ACL allow 127.0.0.1
60
61 </Feed>
62
63
64 ##################################################################
65 # Now you can define each stream which will be generated from the
66 # original audio and video stream. Each format has a filename (here
67 # 'test1.mpg'). FFServer will send this stream when answering a
68 # request containing this filename.
69
70 <Stream test1.mpg>
71
72 # coming from live feed 'feed1'
73 Feed feed1.ffm
74
75 # Format of the stream : you can choose among:
76 # mpeg       : MPEG-1 multiplexed video and audio
77 # mpegvideo  : only MPEG-1 video
78 # mp2        : MPEG-2 audio (use AudioCodec to select layer 2 and 3 codec)
79 # ogg        : Ogg format (Vorbis audio codec)
80 # rm         : RealNetworks-compatible stream. Multiplexed audio and video.
81 # ra         : RealNetworks-compatible stream. Audio only.
82 # mpjpeg     : Multipart JPEG (works with Netscape without any plugin)
83 # jpeg       : Generate a single JPEG image.
84 # asf        : ASF compatible streaming (Windows Media Player format).
85 # swf        : Macromedia Flash compatible stream
86 # avi        : AVI format (MPEG-4 video, MPEG audio sound)
87 Format mpeg
88
89 # Bitrate for the audio stream. Codecs usually support only a few
90 # different bitrates.
91 AudioBitRate 32
92
93 # Number of audio channels: 1 = mono, 2 = stereo
94 AudioChannels 1
95
96 # Sampling frequency for audio. When using low bitrates, you should
97 # lower this frequency to 22050 or 11025. The supported frequencies
98 # depend on the selected audio codec.
99 AudioSampleRate 44100
100
101 # Bitrate for the video stream
102 VideoBitRate 64
103
104 # Ratecontrol buffer size
105 VideoBufferSize 40
106
107 # Number of frames per second
108 VideoFrameRate 3
109
110 # Size of the video frame: WxH (default: 160x128)
111 # The following abbreviations are defined: sqcif, qcif, cif, 4cif, qqvga,
112 # qvga, vga, svga, xga, uxga, qxga, sxga, qsxga, hsxga, wvga, wxga, wsxga,
113 # wuxga, woxga, wqsxga, wquxga, whsxga, whuxga, cga, ega, hd480, hd720,
114 # hd1080
115 VideoSize 160x128
116
117 # Transmit only intra frames (useful for low bitrates, but kills frame rate).
118 #VideoIntraOnly
119
120 # If non-intra only, an intra frame is transmitted every VideoGopSize
121 # frames. Video synchronization can only begin at an intra frame.
122 VideoGopSize 12
123
124 # More MPEG-4 parameters
125 # VideoHighQuality
126 # Video4MotionVector
127
128 # Choose your codecs:
129 #AudioCodec mp2
130 #VideoCodec mpeg1video
131
132 # Suppress audio
133 #NoAudio
134
135 # Suppress video
136 #NoVideo
137
138 #VideoQMin 3
139 #VideoQMax 31
140
141 # Set this to the number of seconds backwards in time to start. Note that
142 # most players will buffer 5-10 seconds of video, and also you need to allow
143 # for a keyframe to appear in the data stream.
144 #Preroll 15
145
146 # ACL:
147
148 # You can allow ranges of addresses (or single addresses)
149 #ACL ALLOW <first address> <last address>
150
151 # You can deny ranges of addresses (or single addresses)
152 #ACL DENY <first address> <last address>
153
154 # You can repeat the ACL allow/deny as often as you like. It is on a per
155 # stream basis. The first match defines the action. If there are no matches,
156 # then the default is the inverse of the last ACL statement.
157 #
158 # Thus 'ACL allow localhost' only allows access from localhost.
159 # 'ACL deny 1.0.0.0 1.255.255.255' would deny the whole of network 1 and
160 # allow everybody else.
161
162 </Stream>
163
164
165 ##################################################################
166 # Example streams
167
168
169 # Multipart JPEG
170
171 #<Stream test.mjpg>
172 #Feed feed1.ffm
173 #Format mpjpeg
174 #VideoFrameRate 2
175 #VideoIntraOnly
176 #NoAudio
177 #Strict -1
178 #</Stream>
179
180
181 # Single JPEG
182
183 #<Stream test.jpg>
184 #Feed feed1.ffm
185 #Format jpeg
186 #VideoFrameRate 2
187 #VideoIntraOnly
188 ##VideoSize 352x240
189 #NoAudio
190 #Strict -1
191 #</Stream>
192
193
194 # Flash
195
196 #<Stream test.swf>
197 #Feed feed1.ffm
198 #Format swf
199 #VideoFrameRate 2
200 #VideoIntraOnly
201 #NoAudio
202 #</Stream>
203
204
205 # ASF compatible
206
207 <Stream test.asf>
208 Feed feed1.ffm
209 Format asf
210 VideoFrameRate 15
211 VideoSize 352x240
212 VideoBitRate 256
213 VideoBufferSize 40
214 VideoGopSize 30
215 AudioBitRate 64
216 StartSendOnKey
217 </Stream>
218
219
220 # MP3 audio
221
222 #<Stream test.mp3>
223 #Feed feed1.ffm
224 #Format mp2
225 #AudioCodec mp3
226 #AudioBitRate 64
227 #AudioChannels 1
228 #AudioSampleRate 44100
229 #NoVideo
230 #</Stream>
231
232
233 # Ogg Vorbis audio
234
235 #<Stream test.ogg>
236 #Feed feed1.ffm
237 #Title "Stream title"
238 #AudioBitRate 64
239 #AudioChannels 2
240 #AudioSampleRate 44100
241 #NoVideo
242 #</Stream>
243
244
245 # Real with audio only at 32 kbits
246
247 #<Stream test.ra>
248 #Feed feed1.ffm
249 #Format rm
250 #AudioBitRate 32
251 #NoVideo
252 #NoAudio
253 #</Stream>
254
255
256 # Real with audio and video at 64 kbits
257
258 #<Stream test.rm>
259 #Feed feed1.ffm
260 #Format rm
261 #AudioBitRate 32
262 #VideoBitRate 128
263 #VideoFrameRate 25
264 #VideoGopSize 25
265 #NoAudio
266 #</Stream>
267
268
269 ##################################################################
270 # A stream coming from a file: you only need to set the input
271 # filename and optionally a new format. Supported conversions:
272 #    AVI -> ASF
273
274 #<Stream file.rm>
275 #File "/usr/local/httpd/htdocs/tlive.rm"
276 #NoAudio
277 #</Stream>
278
279 #<Stream file.asf>
280 #File "/usr/local/httpd/htdocs/test.asf"
281 #NoAudio
282 #Author "Me"
283 #Copyright "Super MegaCorp"
284 #Title "Test stream from disk"
285 #Comment "Test comment"
286 #</Stream>
287
288
289 ##################################################################
290 # RTSP examples
291 #
292 # You can access this stream with the RTSP URL:
293 #   rtsp://localhost:5454/test1-rtsp.mpg
294 #
295 # A non-standard RTSP redirector is also created. Its URL is:
296 #   http://localhost:8090/test1-rtsp.rtsp
297
298 #<Stream test1-rtsp.mpg>
299 #Format rtp
300 #File "/usr/local/httpd/htdocs/test1.mpg"
301 #</Stream>
302
303
304 ##################################################################
305 # SDP/multicast examples
306 #
307 # If you want to send your stream in multicast, you must set the
308 # multicast address with MulticastAddress. The port and the TTL can
309 # also be set.
310 #
311 # An SDP file is automatically generated by ffserver by adding the
312 # 'sdp' extension to the stream name (here
313 # http://localhost:8090/test1-sdp.sdp). You should usually give this
314 # file to your player to play the stream.
315 #
316 # The 'NoLoop' option can be used to avoid looping when the stream is
317 # terminated.
318
319 #<Stream test1-sdp.mpg>
320 #Format rtp
321 #File "/usr/local/httpd/htdocs/test1.mpg"
322 #MulticastAddress 224.124.0.1
323 #MulticastPort 5000
324 #MulticastTTL 16
325 #NoLoop
326 #</Stream>
327
328
329 ##################################################################
330 # Special streams
331
332 # Server status
333
334 <Stream stat.html>
335 Format status
336
337 # Only allow local people to get the status
338 ACL allow localhost
339 ACL allow 192.168.0.0 192.168.255.255
340
341 #FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico
342 </Stream>
343
344
345 # Redirect index.html to the appropriate site
346
347 <Redirect index.html>
348 URL http://www.ffmpeg.org/
349 </Redirect>
350
351