85f07f22 |
# Port on which the server is listening. You must select a different |
ed815ddb |
# port from your standard HTTP web server if it is running on the same |
85f07f22 |
# computer.
Port 8090
# Address on which the server is bound. Only useful if you have
# several network interfaces.
BindAddress 0.0.0.0
|
1c9ff179 |
# 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
|
85f07f22 |
# Number of simultaneous requests that can be handled. Since FFServer |
34d7008d |
# is very fast, it is more likely that you will want to leave this high
# and use MaxBandwidth, below. |
85f07f22 |
MaxClients 1000
|
9cfe269e |
# This the maximum amount of kbit/sec that you are prepared to |
ed815ddb |
# consume when streaming to clients. |
9cfe269e |
MaxBandwidth 1000
|
ed815ddb |
# Access log file (uses standard Apache log file format)
# '-' is the standard output. |
85f07f22 |
CustomLog -
|
ed815ddb |
# Suppress that if you want to launch ffserver as a daemon. |
bc4a1ffe |
NoDaemon
|
34d7008d |
|
85f07f22 |
##################################################################
# 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.
<Feed feed1.ffm>
# You must use 'ffmpeg' to send a live feed to ffserver. In this
# example, you can type: |
115329f1 |
# |
85f07f22 |
# 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 |
6b0bdc75 |
# maximum size of the feed, where zero means unlimited. Default: |
85f07f22 |
# File=/tmp/feed_name.ffm FileMaxSize=5M
File /tmp/feed1.ffm |
4e33b83b |
FileMaxSize 200K
|
e322ea48 |
# You could specify
# ReadOnlyFile /saved/specialvideo.ffm |
ed815ddb |
# This marks the file as readonly and it will not be deleted or updated. |
e322ea48 |
|
ed815ddb |
# Specify launch in order to start ffmpeg automatically. |
ac6a655b |
# First ffmpeg must be defined with an appropriate path if needed,
# after that options can follow, but avoid adding the http:// field
#Launch ffmpeg |
85f07f22 |
|
ed815ddb |
# Only allow connections from localhost to the feed. |
a28d4f86 |
ACL allow 127.0.0.1
|
85f07f22 |
</Feed>
|
34d7008d |
|
85f07f22 |
##################################################################
# Now you can define each stream which will be generated from the
# original audio and video stream. Each format has a filename (here |
34d7008d |
# 'test1.mpg'). FFServer will send this stream when answering a |
85f07f22 |
# request containing this filename.
<Stream test1.mpg>
# coming from live feed 'feed1'
Feed feed1.ffm
# Format of the stream : you can choose among: |
ed815ddb |
# 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) |
34d7008d |
# ogg : Ogg format (Vorbis audio codec) |
2adf8482 |
# rm : RealNetworks-compatible stream. Multiplexed audio and video.
# ra : RealNetworks-compatible stream. Audio only. |
85f07f22 |
# mpjpeg : Multipart JPEG (works with Netscape without any plugin)
# jpeg : Generate a single JPEG image. |
6a6362f0 |
# asf : ASF compatible streaming (Windows Media Player format). |
2adf8482 |
# swf : Macromedia Flash compatible stream |
f5f30f1b |
# avi : AVI format (MPEG-4 video, MPEG audio sound) |
85f07f22 |
Format mpeg
|
34d7008d |
# Bitrate for the audio stream. Codecs usually support only a few |
115329f1 |
# different bitrates. |
85f07f22 |
AudioBitRate 32
|
2adf8482 |
# Number of audio channels: 1 = mono, 2 = stereo |
85f07f22 |
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
|
ed815ddb |
# Bitrate for the video stream |
85f07f22 |
VideoBitRate 64
|
d4d1de91 |
# Ratecontrol buffer size
VideoBufferSize 40
|
85f07f22 |
# Number of frames per second
VideoFrameRate 3
|
2adf8482 |
# Size of the video frame: WxH (default: 160x128) |
7d88b5ca |
# 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 |
34d7008d |
VideoSize 160x128 |
85f07f22 |
|
ed815ddb |
# Transmit only intra frames (useful for low bitrates, but kills frame rate). |
f359a5be |
#VideoIntraOnly |
85f07f22 |
|
ed815ddb |
# If non-intra only, an intra frame is transmitted every VideoGopSize
# frames. Video synchronization can only begin at an intra frame. |
f359a5be |
VideoGopSize 12
|
ed815ddb |
# More MPEG-4 parameters |
e322ea48 |
# VideoHighQuality
# Video4MotionVector
|
115329f1 |
# Choose your codecs: |
f359a5be |
#AudioCodec mp2
#VideoCodec mpeg1video |
85f07f22 |
# Suppress audio
#NoAudio
# Suppress video
#NoVideo
|
9cfe269e |
#VideoQMin 3
#VideoQMax 31
# 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 |
ed815ddb |
# for a keyframe to appear in the data stream. |
a2632fd2 |
#Preroll 15 |
9cfe269e |
|
a28d4f86 |
# ACL:
# You can allow ranges of addresses (or single addresses) |
34d7008d |
#ACL ALLOW <first address> <last address> |
a28d4f86 |
# You can deny ranges of addresses (or single addresses) |
34d7008d |
#ACL DENY <first address> <last address> |
a28d4f86 |
|
34d7008d |
# 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. |
85f07f22 |
# |
115329f1 |
# Thus 'ACL allow localhost' only allows access from localhost. |
34d7008d |
# 'ACL deny 1.0.0.0 1.255.255.255' would deny the whole of network 1 and
# allow everybody else. |
85f07f22 |
</Stream>
################################################################## |
34d7008d |
# Example streams |
85f07f22 |
|
34d7008d |
# Multipart JPEG |
85f07f22 |
|
f359a5be |
#<Stream test.mjpg>
#Feed feed1.ffm
#Format mpjpeg
#VideoFrameRate 2
#VideoIntraOnly
#NoAudio |
97246091 |
#Strict -1 |
f359a5be |
#</Stream> |
85f07f22 |
|
34d7008d |
# Single JPEG |
85f07f22 |
|
f359a5be |
#<Stream test.jpg>
#Feed feed1.ffm
#Format jpeg |
115329f1 |
#VideoFrameRate 2 |
f359a5be |
#VideoIntraOnly
##VideoSize 352x240
#NoAudio |
97246091 |
#Strict -1 |
f359a5be |
#</Stream> |
85f07f22 |
|
34d7008d |
# Flash |
85f07f22 |
|
34d7008d |
#<Stream test.swf> |
f359a5be |
#Feed feed1.ffm
#Format swf
#VideoFrameRate 2
#VideoIntraOnly
#NoAudio
#</Stream> |
85f07f22 |
|
34d7008d |
# ASF compatible |
85f07f22 |
|
41fc0dd5 |
<Stream test.asf>
Feed feed1.ffm
Format asf
VideoFrameRate 15
VideoSize 352x240
VideoBitRate 256 |
d4d1de91 |
VideoBufferSize 40 |
41fc0dd5 |
VideoGopSize 30
AudioBitRate 64
StartSendOnKey
</Stream> |
85f07f22 |
|
115329f1 |
# MP3 audio |
85f07f22 |
|
34d7008d |
#<Stream test.mp3>
#Feed feed1.ffm
#Format mp2
#AudioCodec mp3
#AudioBitRate 64
#AudioChannels 1
#AudioSampleRate 44100
#NoVideo
#</Stream> |
4e33b83b |
|
34d7008d |
# Ogg Vorbis audio |
4e33b83b |
|
34d7008d |
#<Stream test.ogg>
#Feed feed1.ffm
#Title "Stream title"
#AudioBitRate 64
#AudioChannels 2
#AudioSampleRate 44100
#NoVideo
#</Stream> |
4e33b83b |
|
34d7008d |
# Real with audio only at 32 kbits
#<Stream test.ra>
#Feed feed1.ffm
#Format rm
#AudioBitRate 32
#NoVideo
#NoAudio
#</Stream>
# Real with audio and video at 64 kbits
#<Stream test.rm>
#Feed feed1.ffm
#Format rm
#AudioBitRate 32
#VideoBitRate 128
#VideoFrameRate 25
#VideoGopSize 25
#NoAudio
#</Stream>
|
4e33b83b |
|
85f07f22 |
################################################################## |
2adf8482 |
# A stream coming from a file: you only need to set the input |
ed815ddb |
# filename and optionally a new format. Supported conversions:
# AVI -> ASF |
bc4a1ffe |
|
34d7008d |
#<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>
##################################################################
# RTSP examples |
bc4a1ffe |
# |
ed815ddb |
# You can access this stream with the RTSP URL: |
34d7008d |
# rtsp://localhost:5454/test1-rtsp.mpg |
bc4a1ffe |
# |
ed815ddb |
# A non-standard RTSP redirector is also created. Its URL is: |
34d7008d |
# http://localhost:8090/test1-rtsp.rtsp
|
bc4a1ffe |
#<Stream test1-rtsp.mpg>
#Format rtp
#File "/usr/local/httpd/htdocs/test1.mpg"
#</Stream>
|
34d7008d |
|
8190f62f |
# Transcode an incoming live feed to another live feed,
# using libx264 and video presets
#<Stream live.h264>
#Format rtp
#Feed feed1.ffm
#VideoCodec libx264
#VideoFrameRate 24
#VideoBitRate 100
#VideoSize 480x272
#AVPresetVideo default
#AVPresetVideo baseline
#AVOptionVideo flags +global_header
#
#AudioCodec libfaac
#AudioBitRate 32
#AudioChannels 2
#AudioSampleRate 22050
#AVOptionAudio flags +global_header
#</Stream>
|
bc4a1ffe |
################################################################## |
6891b9d4 |
# SDP/multicast examples |
34d7008d |
# |
6891b9d4 |
# 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. |
115329f1 |
# |
6891b9d4 |
# The 'NoLoop' option can be used to avoid looping when the stream is
# terminated. |
34d7008d |
|
6891b9d4 |
#<Stream test1-sdp.mpg>
#Format rtp
#File "/usr/local/httpd/htdocs/test1.mpg"
#MulticastAddress 224.124.0.1
#MulticastPort 5000
#MulticastTTL 16
#NoLoop
#</Stream>
|
34d7008d |
|
6891b9d4 |
################################################################## |
34d7008d |
# Special streams |
85f07f22 |
|
34d7008d |
# Server status |
85f07f22 |
|
34d7008d |
<Stream stat.html> |
85f07f22 |
Format status
|
ed815ddb |
# Only allow local people to get the status |
a28d4f86 |
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
|
34d7008d |
#FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico |
85f07f22 |
</Stream> |
4e33b83b |
|
34d7008d |
# Redirect index.html to the appropriate site
|
4e33b83b |
<Redirect index.html> |
67c311fa |
URL http://www.ffmpeg.org/ |
4e33b83b |
</Redirect> |
34d7008d |
|