## This is a test configuration file. You can invoke it with# ../ffserver -f ffserver.conf# when in the tests directory and once the vsynth1 subdirectory# has been populated. Then point your browser at http://whatever:9999/teststat.html# and you can look at the streams### 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.HTTPPort 9999RTSPPort 9990# Address on which the server is bound. Only useful if you have# several network interfaces.HTTPBindAddress 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.MaxClients 1000MaxBandwidth 100000# Access Log file (uses standard Apache log file format)# '-' is the standard outputCustomLog -################################################################### 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:## 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 (100M bytes here). Default:# File=/tmp/feed_name.ffm FileMaxSize=5MFile tests/feed1.ffmFileMaxSize 100M# Fire up ffmpeg pointing at this streamLaunch ./ffmpeg -v 0 -y -f image2 -flags +bitexact -fflags +bitexact -i tests/vsynth1/%02d.pgm -flags +bitexact -fflags +bitexactACL allow localhost</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# request containing this filename.<Stream test_h.avi>Feed feed1.ffmFormat avi#BitExactDctFastintIdctSimpleVideoFrameRate 10VideoSize 352x288VideoBitRate 100VideoGopSize 30NoAudioPreRoll 10StartSendOnKeyMaxTime 100</Stream><Stream test_l.avi>Feed feed1.ffmFormat avi#BitExactDctFastintIdctSimpleVideoFrameRate 2VideoSize 320x240VideoBitRate 40VideoGopSize 20NoAudioPreRoll 20StartSendOnKeyMaxTime 100</Stream>#<Stream test_h.mpg>#Feed feed1.ffm##VideoFrameRate 10#VideoSize 352x288#VideoBitRate 100#VideoGopSize 30#NoAudio#PreRoll 10#StartSendOnKey#MaxTime 100##</Stream>##<Stream test_l.mpg>#Feed feed1.ffm###VideoFrameRate 2#VideoSize 320x240#VideoBitRate 40#VideoGopSize 20#NoAudio##PreRoll 20#StartSendOnKey#MaxTime 100##</Stream>#<Stream test.swf>Feed feed1.ffm#BitExactDctFastintIdctSimpleQscale 10VideoFrameRate 10VideoSize 352x288VideoBitRate 100VideoGopSize 30NoAudioPreRoll 10StartSendOnKeyMaxTime 100</Stream><Stream test_h.asf>Feed feed1.ffmFormat asf#BitExactDctFastintIdctSimpleQscale 10VideoFrameRate 10VideoSize 320x240VideoBitRate 100VideoGopSize 30NoAudioPreRoll 10StartSendOnKeyMaxTime 100AVOptionVideo flags +global_headerMetadata title "Test data stream"</Stream><Stream test_l.asf>Feed feed1.ffmFormat asf#BitExactDctFastintIdctSimpleQscale 10VideoFrameRate 2VideoSize 320x240VideoBitRate 40VideoGopSize 20NoAudioPreRoll 20StartSendOnKeyMaxTime 100AVOptionVideo flags +global_headerMetadata title "Test data stream"</Stream><Stream test_h.rm>Feed feed1.ffmFormat rmBitExactDctFastintIdctSimpleQscale 10VideoBitRate 100VideoFrameRate 10VideoGopSize 30VideoSize 320x240NoAudioPreRoll 10StartSendOnKeyMaxTime 100</Stream><Stream test_l.rm>Feed feed1.ffmFormat rmBitExactDctFastintIdctSimpleQscale 10VideoBitRate 40VideoFrameRate 2VideoGopSize 20VideoSize 320x240NoAudioPreRoll 20StartSendOnKeyMaxTime 100</Stream><Stream test.jpg>Feed feed1.ffmFormat jpegStrict -1BitExactDctFastintIdctSimpleVideoFrameRate 1VideoSize 352x288NoAudioPreRoll 2</Stream><Stream test_small.jpg>Feed feed1.ffmFormat jpegStrict -1BitExactDctFastintIdctSimpleVideoFrameRate 1VideoSize 160x128NoAudioPreRoll 2</Stream><Stream test.mjpg>Feed feed1.ffmFormat mpjpegStrict -1BitExactDctFastintIdctSimpleVideoFrameRate 1VideoSize 320x240NoAudioStartSendOnKeyPreRoll 1MaxTime 100</Stream>################################################################### Special stream : server status<Stream teststat.html>Format status</Stream>
#
# This is a test configuration file. You can invoke it with
# ../ffserver -f ffserver.conf
# when in the tests directory and once the vsynth1 subdirectory
# has been populated. Then point your browser at http://whatever:9999/teststat.html
# and you can look at the streams
#
#
# 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.
HTTPPort 9999
RTSPPort 9990
# Address on which the server is bound. Only useful if you have
# several network interfaces.
HTTPBindAddress 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.
MaxClients 1000
MaxBandwidth 100000
# Access Log file (uses standard Apache log file format)
# '-' is the standard output
CustomLog -
##################################################################
# 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:
#
# 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 (100M bytes here). Default:
# File=/tmp/feed_name.ffm FileMaxSize=5M
File tests/feed1.ffm
FileMaxSize 100M
# Fire up ffmpeg pointing at this stream
Launch ./ffmpeg -v 0 -y -f image2 -flags +bitexact -fflags +bitexact -i tests/vsynth1/%02d.pgm -flags +bitexact -fflags +bitexact
ACL allow localhost
</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
# request containing this filename.
<Stream test_h.avi>
Feed feed1.ffm
Format avi
#
BitExact
DctFastint
IdctSimple
VideoFrameRate 10
VideoSize 352x288
VideoBitRate 100
VideoGopSize 30
NoAudio
PreRoll 10
StartSendOnKey
MaxTime 100
</Stream>
<Stream test_l.avi>
Feed feed1.ffm
Format avi
#
BitExact
DctFastint
IdctSimple
VideoFrameRate 2
VideoSize 320x240
VideoBitRate 40
VideoGopSize 20
NoAudio
PreRoll 20
StartSendOnKey
MaxTime 100
</Stream>
#<Stream test_h.mpg>
#Feed feed1.ffm
#
#VideoFrameRate 10
#VideoSize 352x288
#VideoBitRate 100
#VideoGopSize 30
#NoAudio
#PreRoll 10
#StartSendOnKey
#MaxTime 100
#
#</Stream>
#
#<Stream test_l.mpg>
#Feed feed1.ffm
##
#VideoFrameRate 2
#VideoSize 320x240
#VideoBitRate 40
#VideoGopSize 20
#NoAudio
#
#PreRoll 20
#StartSendOnKey
#MaxTime 100
#
#</Stream>
#
<Stream test.swf>
Feed feed1.ffm
#
BitExact
DctFastint
IdctSimple
Qscale 10
VideoFrameRate 10
VideoSize 352x288
VideoBitRate 100
VideoGopSize 30
NoAudio
PreRoll 10
StartSendOnKey
MaxTime 100
</Stream>
<Stream test_h.asf>
Feed feed1.ffm
Format asf
#
BitExact
DctFastint
IdctSimple
Qscale 10
VideoFrameRate 10
VideoSize 320x240
VideoBitRate 100
VideoGopSize 30
NoAudio
PreRoll 10
StartSendOnKey
MaxTime 100
AVOptionVideo flags +global_header
Metadata title "Test data stream"
</Stream>
<Stream test_l.asf>
Feed feed1.ffm
Format asf
#
BitExact
DctFastint
IdctSimple
Qscale 10
VideoFrameRate 2
VideoSize 320x240
VideoBitRate 40
VideoGopSize 20
NoAudio
PreRoll 20
StartSendOnKey
MaxTime 100
AVOptionVideo flags +global_header
Metadata title "Test data stream"
</Stream>
<Stream test_h.rm>
Feed feed1.ffm
Format rm
BitExact
DctFastint
IdctSimple
Qscale 10
VideoBitRate 100
VideoFrameRate 10
VideoGopSize 30
VideoSize 320x240
NoAudio
PreRoll 10
StartSendOnKey
MaxTime 100
</Stream>
<Stream test_l.rm>
Feed feed1.ffm
Format rm
BitExact
DctFastint
IdctSimple
Qscale 10
VideoBitRate 40
VideoFrameRate 2
VideoGopSize 20
VideoSize 320x240
NoAudio
PreRoll 20
StartSendOnKey
MaxTime 100
</Stream>
<Stream test.jpg>
Feed feed1.ffm
Format jpeg
Strict -1
BitExact
DctFastint
IdctSimple
VideoFrameRate 1
VideoSize 352x288
NoAudio
PreRoll 2
</Stream>
<Stream test_small.jpg>
Feed feed1.ffm
Format jpeg
Strict -1
BitExact
DctFastint
IdctSimple
VideoFrameRate 1
VideoSize 160x128
NoAudio
PreRoll 2
</Stream>
<Stream test.mjpg>
Feed feed1.ffm
Format mpjpeg
Strict -1
BitExact
DctFastint
IdctSimple
VideoFrameRate 1
VideoSize 320x240
NoAudio
StartSendOnKey
PreRoll 1
MaxTime 100
</Stream>
##################################################################
# Special stream : server status
<Stream teststat.html>
Format status
</Stream>