]> git.sesse.net Git - ffmpeg/blobdiff - doc/ffserver.conf
Implement av_bmg_next(), a Box-Muller Gaussian random generator.
[ffmpeg] / doc / ffserver.conf
index 8b5d926a12f6fb2b77ccbbcc49ea4644c7ba8477..2fbfecd683ac875dbc476dd44778cd5041344a33 100644 (file)
 # Port on which the server is listening. You must select a different
-# port from your standard http web server if it is running on the same
+# port from your standard HTTP web server if it is running on the same
 # computer.
-
-Port 8080
+Port 8090
 
 # Address on which the server is bound. Only useful if you have
 # several network interfaces.
-
 BindAddress 0.0.0.0
 
-# Host and port of the master server if you which that this server
-# duplicates another existing server. Otherwise, the server does the
-# audio/video grab itself. See the following options for the grab parameters 
+# Number of simultaneous HTTP connections that can be handled. It has
+# to be defined *before* the MaxClients parameter, since it defines the
+# MaxClients maximum limit.
+MaxHTTPConnections 2000
+
+# Number of simultaneous requests that can be handled. Since FFServer
+# is very fast, it is more likely that you will want to leave this high
+# and use MaxBandwidth, below.
+MaxClients 1000
 
-#MasterServer http://localhost:80/index.html
+# This the maximum amount of kbit/sec that you are prepared to
+# consume when streaming to clients.
+MaxBandwidth 1000
 
-# Grab parameters
+# Access log file (uses standard Apache log file format)
+# '-' is the standard output.
+CustomLog -
 
-#AudioDevice /dev/dsp
-#VideoDevice /dev/video
+# Suppress that if you want to launch ffserver as a daemon.
+NoDaemon
 
-# Number of simultaneous requests that can be handled. Since FFServer
-# is very fast, this limit is determined mainly by your Internet
-# connection speed.
 
-MaxClients 1000
+##################################################################
+# Definition of the live feeds. Each live feed contains one video
+# and/or audio sequence coming from an ffmpeg encoder or another
+# ffserver. This sequence may be encoded simultaneously with several
+# codecs at several resolutions.
 
-# Access Log file (uses standard Apache log file format)
-# '-' is the standard output
+<Feed feed1.ffm>
+
+# You must use 'ffmpeg' to send a live feed to ffserver. In this
+# example, you can type:
+#
+# ffmpeg http://localhost:8090/feed1.ffm
+
+# ffserver can also do time shifting. It means that it can stream any
+# previously recorded live stream. The request should contain:
+# "http://xxxx?date=[YYYY-MM-DDT][[HH:]MM:]SS[.m...]".You must specify
+# a path where the feed is stored on disk. You also specify the
+# maximum size of the feed, where zero means unlimited. Default:
+# File=/tmp/feed_name.ffm FileMaxSize=5M
+File /tmp/feed1.ffm
+FileMaxSize 200K
+
+# You could specify
+# ReadOnlyFile /saved/specialvideo.ffm
+# This marks the file as readonly and it will not be deleted or updated.
+
+# Specify launch in order to start ffmpeg automatically.
+# First ffmpeg must be defined with an appropriate path if needed,
+# after that options can follow, but avoid adding the http:// field
+#Launch ffmpeg
+
+# Only allow connections from localhost to the feed.
+ACL allow 127.0.0.1
+
+</Feed>
 
-CustomLog -
 
 ##################################################################
 # Now you can define each stream which will be generated from the
 # original audio and video stream. Each format has a filename (here
-# 'test128.mpg'). FFServer will send this stream when answering a
+# 'test1.mpg'). FFServer will send this stream when answering a
 # request containing this filename.
 
 <Stream test1.mpg>
 
+# coming from live feed 'feed1'
+Feed feed1.ffm
+
 # Format of the stream : you can choose among:
-# mpeg1      : MPEG1 multiplexed video and audio
-# mpeg1video : only MPEG1 video
-# mp2        : MPEG audio layer 2
-# mp3        : MPEG audio layer 3 (currently sent as layer 2)
-# rm         : Real Networks compatible stream. Multiplexed audio and video.
-# ra         : Real Networks compatible stream. Audio only.
+# mpeg       : MPEG-1 multiplexed video and audio
+# mpegvideo  : only MPEG-1 video
+# mp2        : MPEG-2 audio (use AudioCodec to select layer 2 and 3 codec)
+# ogg        : Ogg format (Vorbis audio codec)
+# rm         : RealNetworks-compatible stream. Multiplexed audio and video.
+# ra         : RealNetworks-compatible stream. Audio only.
 # mpjpeg     : Multipart JPEG (works with Netscape without any plugin)
 # jpeg       : Generate a single JPEG image.
-# asf        : ASF compatible stream (Windows Media Player format)
-# swf        : Macromedia flash(tm) compatible stream
-# master     : special ffmpeg stream used to duplicate a server
-
-Format mpeg1
-
-# Bitrate for the audio stream. Codecs usually support only a few different bitrates. 
+# asf        : ASF compatible streaming (Windows Media Player format).
+# swf        : Macromedia Flash compatible stream
+# avi        : AVI format (MPEG-4 video, MPEG audio sound)
+Format mpeg
 
+# Bitrate for the audio stream. Codecs usually support only a few
+# different bitrates.
 AudioBitRate 32
 
-# Number of audio channels : 1 = mono, 2 = stereo
-
+# Number of audio channels: 1 = mono, 2 = stereo
 AudioChannels 1
 
 # Sampling frequency for audio. When using low bitrates, you should
 # lower this frequency to 22050 or 11025. The supported frequencies
 # depend on the selected audio codec.
-
 AudioSampleRate 44100
 
-# Bitrate for the video stream.
+# Bitrate for the video stream
 VideoBitRate 64
 
+# Ratecontrol buffer size
+VideoBufferSize 40
+
 # Number of frames per second
 VideoFrameRate 3
 
-# Size of the video frame : WxH
-# W : width, H : height
-# The following abbreviation are defined : sqcif, qcif, cif, 4cif
-#VideoSize    352x240
+# Size of the video frame: WxH (default: 160x128)
+# The following abbreviations are defined: sqcif, qcif, cif, 4cif, qqvga,
+# qvga, vga, svga, xga, uxga, qxga, sxga, qsxga, hsxga, wvga, wxga, wsxga,
+# wuxga, woxga, wqsxga, wquxga, whsxga, whuxga, cga, ega, hd480, hd720,
+# hd1080
+VideoSize 160x128
 
-# transmit only intra frames (useful for low bitrates) 
-VideoIntraOnly
+# Transmit only intra frames (useful for low bitrates, but kills frame rate).
+#VideoIntraOnly
 
-# If non intra only, an intra frame is transmitted every VideoGopSize
-# frames Video synchronization can only begin at an I frames.
-#VideoGopSize 12
+# If non-intra only, an intra frame is transmitted every VideoGopSize
+# frames. Video synchronization can only begin at an intra frame.
+VideoGopSize 12
 
-</Stream>
+# More MPEG-4 parameters
+# VideoHighQuality
+# Video4MotionVector
 
-# second mpeg stream with high frame rate
+# Choose your codecs:
+#AudioCodec mp2
+#VideoCodec mpeg1video
 
-<Stream test2.mpg>
-Format mpeg1video
-VideoBitRate 128
-VideoFrameRate 25
-#VideoSize    352x240
-VideoGopSize 25
-</Stream>
+# Suppress audio
+#NoAudio
 
-##################################################################
-# Another stream : used to download data to another server which
-# duplicates this one
+# Suppress video
+#NoVideo
 
-<Stream master>
+#VideoQMin 3
+#VideoQMax 31
 
-Format master
+# Set this to the number of seconds backwards in time to start. Note that
+# most players will buffer 5-10 seconds of video, and also you need to allow
+# for a keyframe to appear in the data stream.
+#Preroll 15
 
-</Stream>
+# ACL:
 
-##################################################################
-# Another stream : Real with audio only at 32 kbits
+# You can allow ranges of addresses (or single addresses)
+#ACL ALLOW <first address> <last address>
 
-<Stream test.ra>
+# You can deny ranges of addresses (or single addresses)
+#ACL DENY <first address> <last address>
 
-Format ra
-AudioBitRate 32
+# You can repeat the ACL allow/deny as often as you like. It is on a per
+# stream basis. The first match defines the action. If there are no matches,
+# then the default is the inverse of the last ACL statement.
+#
+# Thus 'ACL allow localhost' only allows access from localhost.
+# 'ACL deny 1.0.0.0 1.255.255.255' would deny the whole of network 1 and
+# allow everybody else.
 
 </Stream>
 
+
 ##################################################################
-# Another stream : Real with audio and video at 64 kbits
+# Example streams
 
-<Stream test.rm>
 
-Format rm
+# Multipart JPEG
 
-AudioBitRate 32
-VideoBitRate 20
-VideoFrameRate 2
-VideoIntraOnly
+#<Stream test.mjpg>
+#Feed feed1.ffm
+#Format mpjpeg
+#VideoFrameRate 2
+#VideoIntraOnly
+#NoAudio
+#Strict -1
+#</Stream>
 
-</Stream>
 
-##################################################################
-# Another stream : Mpeg audio layer 2 at 64 kbits.
+# Single JPEG
 
-<Stream test.mp2>
+#<Stream test.jpg>
+#Feed feed1.ffm
+#Format jpeg
+#VideoFrameRate 2
+#VideoIntraOnly
+##VideoSize 352x240
+#NoAudio
+#Strict -1
+#</Stream>
 
-Format mp2
-AudioBitRate 64
-AudioSampleRate 44100
 
-</Stream>
+# Flash
 
-<Stream test1.mp2>
+#<Stream test.swf>
+#Feed feed1.ffm
+#Format swf
+#VideoFrameRate 2
+#VideoIntraOnly
+#NoAudio
+#</Stream>
 
-Format mp2
-AudioBitRate 32
-AudioSampleRate 16000
 
+# ASF compatible
+
+<Stream test.asf>
+Feed feed1.ffm
+Format asf
+VideoFrameRate 15
+VideoSize 352x240
+VideoBitRate 256
+VideoBufferSize 40
+VideoGopSize 30
+AudioBitRate 64
+StartSendOnKey
 </Stream>
 
-##################################################################
-# Another stream : Multipart JPEG
 
-<Stream test.mjpg>
+# MP3 audio
 
-Format mpjpeg
+#<Stream test.mp3>
+#Feed feed1.ffm
+#Format mp2
+#AudioCodec mp3
+#AudioBitRate 64
+#AudioChannels 1
+#AudioSampleRate 44100
+#NoVideo
+#</Stream>
 
-VideoFrameRate 2
-VideoIntraOnly
 
-</Stream>
+# Ogg Vorbis audio
 
-##################################################################
-# Another stream : Multipart JPEG
+#<Stream test.ogg>
+#Feed feed1.ffm
+#Title "Stream title"
+#AudioBitRate 64
+#AudioChannels 2
+#AudioSampleRate 44100
+#NoVideo
+#</Stream>
 
-<Stream test.jpg>
 
-Format jpeg
+# Real with audio only at 32 kbits
 
-# the parameters are choose here to take the same output as the
-# Multipart JPEG one.
-VideoFrameRate 2 
-VideoIntraOnly
+#<Stream test.ra>
+#Feed feed1.ffm
+#Format rm
+#AudioBitRate 32
+#NoVideo
+#NoAudio
+#</Stream>
 
-</Stream>
 
-##################################################################
-# Another stream : Flash
+# Real with audio and video at 64 kbits
 
-<Stream test.swf>
+#<Stream test.rm>
+#Feed feed1.ffm
+#Format rm
+#AudioBitRate 32
+#VideoBitRate 128
+#VideoFrameRate 25
+#VideoGopSize 25
+#NoAudio
+#</Stream>
 
-Format swf
 
-VideoFrameRate 2
-VideoIntraOnly
+##################################################################
+# A stream coming from a file: you only need to set the input
+# filename and optionally a new format. Supported conversions:
+#    AVI -> ASF
 
-</Stream>
+#<Stream file.rm>
+#File "/usr/local/httpd/htdocs/tlive.rm"
+#NoAudio
+#</Stream>
+
+#<Stream file.asf>
+#File "/usr/local/httpd/htdocs/test.asf"
+#NoAudio
+#Author "Me"
+#Copyright "Super MegaCorp"
+#Title "Test stream from disk"
+#Comment "Test comment"
+#</Stream>
 
 
 ##################################################################
-# Another stream : ASF compatible
+# RTSP examples
+#
+# You can access this stream with the RTSP URL:
+#   rtsp://localhost:5454/test1-rtsp.mpg
+#
+# A non-standard RTSP redirector is also created. Its URL is:
+#   http://localhost:8090/test1-rtsp.rtsp
 
-<Stream test.asf>
+#<Stream test1-rtsp.mpg>
+#Format rtp
+#File "/usr/local/httpd/htdocs/test1.mpg"
+#</Stream>
 
-Format asf
 
-AudioBitRate 64
-AudioSampleRate 44100
-VideoFrameRate 2
-VideoIntraOnly
+##################################################################
+# SDP/multicast examples
+#
+# If you want to send your stream in multicast, you must set the
+# multicast address with MulticastAddress. The port and the TTL can
+# also be set.
+#
+# An SDP file is automatically generated by ffserver by adding the
+# 'sdp' extension to the stream name (here
+# http://localhost:8090/test1-sdp.sdp). You should usually give this
+# file to your player to play the stream.
+#
+# The 'NoLoop' option can be used to avoid looping when the stream is
+# terminated.
+
+#<Stream test1-sdp.mpg>
+#Format rtp
+#File "/usr/local/httpd/htdocs/test1.mpg"
+#MulticastAddress 224.124.0.1
+#MulticastPort 5000
+#MulticastTTL 16
+#NoLoop
+#</Stream>
 
-</Stream>
 
 ##################################################################
-# Another stream : server status
+# Special streams
 
-<Stream stat.html>
+# Server status
 
+<Stream stat.html>
 Format status
 
+# Only allow local people to get the status
+ACL allow localhost
+ACL allow 192.168.0.0 192.168.255.255
+
+#FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico
 </Stream>
+
+
+# Redirect index.html to the appropriate site
+
+<Redirect index.html>
+URL http://www.ffmpeg.org/
+</Redirect>
+
+