Applied Mark Hill's patches.
authorPhilip Gladstone <philipjsg@users.sourceforge.net>
Sat, 21 Dec 2002 20:43:40 +0000 (20:43 +0000)
committerPhilip Gladstone <philipjsg@users.sourceforge.net>
Sat, 21 Dec 2002 20:43:40 +0000 (20:43 +0000)
Originally committed as revision 1356 to svn://svn.ffmpeg.org/ffmpeg/trunk

doc/ffmpeg-doc.texi
doc/ffserver.conf

index de287ac..9b37c18 100644 (file)
@@ -402,8 +402,8 @@ solutions.
 @tab MP3 encoding is supported thru the external library LAME
 @item AC3                    @tab  IX  @tab  X
 @tab liba52 is used internally for decoding.
-@item Vorbis                 @tab  X   @tab
-@tab encoding is supported thru the external library libvorbis.
+@item Vorbis                 @tab  X   @tab  X
+@tab supported thru the external library libvorbis.
 @item WMA V1/V2              @tab      @tab X
 
 @end multitable
@@ -447,7 +447,7 @@ that ffmpeg negates when returning. This ends up turning errors into
 valid results, then crashes.
 (To be fixed)
 
-@chapter Developpers Guide
+@chapter Developers Guide
 
 @section API
 @itemize
index 29cf780..7aa87ae 100644 (file)
@@ -1,33 +1,29 @@
 # 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
 # computer.
-
 Port 8090
 
 # Address on which the server is bound. Only useful if you have
 # several network interfaces.
-
 BindAddress 0.0.0.0
 
 # Number of simultaneous requests that can be handled. Since FFServer
-# is very fast, this limit is determined mainly by your Internet
-# connection speed.
-
+# is very fast, it is more likely that you will want to leave this high
+# and use MaxBandwidth, below.
 MaxClients 1000
 
 # This the maximum amount of kbit/sec that you are prepared to
 # consume when streaming to clients
-
 MaxBandwidth 1000
 
 # Access Log file (uses standard Apache log file format)
 # '-' is the standard output
-
 CustomLog -
 
 # Suppress that if you want to launch ffserver as a daemon
 NoDaemon
 
+
 ##################################################################
 # Definition of the live feeds. Each live feed contains one video
 # and/or audio sequence coming from an ffmpeg encoder or another
@@ -47,22 +43,22 @@ NoDaemon
 # a path where the feed is stored on disk. You also specify the
 # maximum size of the feed (100M bytes here). Default:
 # File=/tmp/feed_name.ffm FileMaxSize=5M
-
 File /tmp/feed1.ffm
 FileMaxSize 200K
 
 # Specify launch in order to start ffmpeg automatically
-# Launch
+#Launch
 
 # Only allow connections from localhost to the feed
 ACL allow 127.0.0.1
 
 </Feed>
 
+
 ##################################################################
 # 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>
@@ -73,31 +69,28 @@ Feed feed1.ffm
 # Format of the stream : you can choose among:
 # mpeg       : MPEG1 multiplexed video and audio
 # mpegvideo  : only MPEG1 video
-# mp2        : MPEG audio layer 2
-# mp3        : MPEG audio layer 3 (currently sent as layer 2)
+# mp2        : MPEG2 audio (use AudioCodec to select layer 2 and 3 codec)
+# ogg        : Ogg format (Vorbis audio codec)
 # rm         : Real Networks compatible stream. Multiplexed audio and video.
 # ra         : Real Networks 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). Not finished yet.
+# asf        : ASF compatible stream (Windows Media Player format).
 # swf        : Macromedia flash(tm) compatible stream
 # avi        : AVI format (open divx video, mpeg audio sound)
 # master     : special ffmpeg stream used to duplicate a server
-
 Format mpeg
 
-# Bitrate for the audio stream. Codecs usually support only a few different bitrates. 
-
+# Bitrate for the audio stream. Codecs usually support only a few
+# different bitrates. 
 AudioBitRate 32
 
 # 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.
@@ -107,9 +100,8 @@ VideoBitRate 64
 VideoFrameRate 3
 
 # Size of the video frame : WxH (default: 160x128)
-# W : width, H : height
 # The following abbreviation are defined : sqcif, qcif, cif, 4cif
-VideoSize    160x128
+VideoSize 160x128
 
 # transmit only intra frames (useful for low bitrates, but kills frame rate) 
 #VideoIntraOnly
@@ -119,7 +111,6 @@ VideoSize    160x128
 VideoGopSize 12
 
 # Choose your codecs: 
-
 #AudioCodec mp2
 #VideoCodec mpeg1video
 
@@ -140,209 +131,161 @@ VideoGopSize 12
 # ACL:
 
 # You can allow ranges of addresses (or single addresses)
-# ACL ALLOW <first address> <last address>
+#ACL ALLOW <first address> <last address>
 
 # You can deny ranges of addresses (or single addresses)
-# ACL DENY <first address> <last address>
+#ACL DENY <first address> <last address>
 
-# 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>
-
-# second mpeg stream with high frame rate
-
-#<Stream test2.mpg>
-#Feed feed1.ffm
-#Format mpegvideo
-#VideoBitRate 128
-#VideoFrameRate 25
-###VideoSize    352x240
-#VideoGopSize 25
-#NoAudio
-#</Stream>
-#
-##################################################################
-# A stream coming from a file : you only need to set the input
-# filename and optionnally a new format. Supported conversions:
-#    avi -> asf
+# 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.
 #
-
-# another file streaming
-<Stream file.rm>
-
-File "/usr/local/httpd/htdocs/tlive.rm"
-NoAudio
+# 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>
 
-<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 : Real with audio only at 32 kbits
+# Example streams
 
-<Stream test.ra>
 
-Feed feed1.ffm
-Format rm
-AudioBitRate 32
-NoVideo
-NoAudio
-
-</Stream>
-
-##################################################################
-# Another 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>
-
-<Stream test2.rm>
-
-Feed feed1.ffm
-Format rm
-
-VideoBitRate 128
-VideoFrameRate 15
-VideoGopSize 25
-VideoSize    320x240
-AudioBitRate 64
-
-</Stream>
-
-##################################################################
-# Another stream : Multipart JPEG
+# Multipart JPEG
 
 #<Stream test.mjpg>
-#
 #Feed feed1.ffm
 #Format mpjpeg
-#
 #VideoFrameRate 2
 #VideoIntraOnly
 #NoAudio
-#
 #</Stream>
 
-##################################################################
-# Another stream : Multipart JPEG
+
+# Single JPEG
 
 #<Stream test.jpg>
-#
 #Feed feed1.ffm
 #Format jpeg
-#
-## the parameters are choose here to take the same output as the
-## Multipart JPEG one.
 #VideoFrameRate 2 
 #VideoIntraOnly
 ##VideoSize 352x240
 #NoAudio
-#
 #</Stream>
 
-##################################################################
-# Another stream : Flash
 
-#<Stream test.swf>
+# Flash
 
+#<Stream test.swf>
 #Feed feed1.ffm
 #Format swf
-#
 #VideoFrameRate 2
 #VideoIntraOnly
 #NoAudio
-#
 #</Stream>
 
 
-##################################################################
-# Another stream : ASF compatible
+# ASF compatible
 
-<Stream test.asf>
+#<Stream test.asf>
+#Feed feed1.ffm
+#Format asf
+#VideoFrameRate 15
+#VideoSize 352x240
+#VideoBitRate 256
+#VideoGopSize 30
+#AudioBitRate 64
+#StartSendOnKey
+#</Stream>
 
-Feed feed1.ffm
-Format asf
-#
-VideoFrameRate 15
-VideoSize 352x240
-VideoBitRate 256
-VideoGopSize 30
-AudioBitRate 64
-StartSendOnKey
 
-</Stream>
+# MP3 audio 
 
-<Stream testv.asf>
+#<Stream test.mp3>
+#Feed feed1.ffm
+#Format mp2
+#AudioCodec mp3
+#AudioBitRate 64
+#AudioChannels 1
+#AudioSampleRate 44100
+#NoVideo
+#</Stream>
 
-Feed feed1.ffm
-Format asf
-#
-VideoFrameRate 15
-VideoSize 352x240
-VideoBitRate 256
-VideoGopSize 30
-NoAudio
-StartSendOnKey
 
-</Stream>
+# Ogg Vorbis audio
 
-<Stream testv2.asf>
+#<Stream test.ogg>
+#Feed feed1.ffm
+#Title "Stream title"
+#AudioBitRate 64
+#AudioChannels 2
+#AudioSampleRate 44100
+#NoVideo
+#</Stream>
 
-Feed feed1.ffm
-Format asf
-#
-VideoFrameRate 15
-VideoSize 352x240
-VideoBitRate 128
-VideoGopSize 30
-NoAudio
-StartSendOnKey
 
-</Stream>
+# 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>
+
 
 ##################################################################
-# RTSP examples
+# A stream coming from a file : you only need to set the input
+# filename and optionnally a new format. Supported conversions:
+#    avi -> asf
 
-# You can access to this stream with the RTSP URL:
+#<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
 #
-# rtsp://localhost:5454/test1-rtsp.mpg
+# You can access to 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
-#
+#   http://localhost:8090/test1-rtsp.rtsp
+
 #<Stream test1-rtsp.mpg>
-#
 #Format rtp
 #File "/usr/local/httpd/htdocs/test1.mpg"
-#
 #</Stream>
 
+
 ##################################################################
 # 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.
@@ -354,36 +297,37 @@ StartSendOnKey
 # 
 # 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>
 
+
 ##################################################################
-# Special stream : server status
+# Special streams
 
-<Stream stat.html>
+# Server status
 
+<Stream stat.html>
 Format status
 
 # Only allow local people to get to the status
-
 ACL allow localhost
 ACL allow 192.168.0.0 192.168.255.255
 
-FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico
-
+#FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico
 </Stream>
 
 
+# Redirect index.html to the appropriate site
+
 <Redirect index.html>
-# maps index.html to the appropriate site
 URL http://ffmpeg.sourceforge.net/
 </Redirect>
+
+