[Ffmpeg-devel] [Ffmpeg-devel-old] Segfaults when streaming
Adam K Kirchhoff
adamk
Mon Aug 8 17:13:15 CEST 2005
Adam K Kirchhoff wrote:
>
> How about this:
> Has anyone gotten this to work with a brooktree card and a version
> from CVS? If so, can you send your ffserver.conf file and tell me the
> date of the pull from CVS?
>
> Adam
>
Alright... So apparently this is a bug that no one wants to deal with
at the moment. Is there a bug tracker for ffmpeg? Should I just leave
this problem as is and assume it's being worked on?
Adam
>
> Adam K Kirchhoff wrote:
>
>>
>> No one knows what's wrong?
>>
>> Adam
>>
>> Adam K Kirchhoff wrote:
>>
>>>
>>> Hello all,
>>>
>>> I'm trying to get ffserver and ffmpeg to stream live video from
>>> my brooktree card, but I'm running into some problems.
>>>
>>> ffmpeg is from cvs (late last week), and was configured with
>>> "--enable-mp3lame --enable-xvid --enable-faad --enable-faac
>>> --enable-libogg --enable-gpl --enable-vorbis". It built without
>>> problems.
>>>
>>> I'm using the ffserver.conf file from the doc directory, but have
>>> commented out all streams except for the mpeg one (I'm attaching my
>>> ffserver.conf file, just in case). I start up ffserver without any
>>> problems. When I go try to send a feed to the server, this is what
>>> I get:
>>>
>>> [ adamk at thorn - ~ ]: ffmpeg http://localhost:8090/feed1.ffm ffmpeg
>>> version CVS, build 4759, Copyright (c) 2000-2004 Fabrice Bellard
>>> configuration: --enable-mp3lame --enable-xvid --enable-faad
>>> --enable-faac --enable-libogg --enable-gpl --enable-vorbis
>>> built on Aug 3 2005 14:07:46, gcc: 3.3.4
>>> Input #0, video4linux, from '':
>>> Duration: N/A, bitrate: N/A
>>> Stream #0.0: Video: rawvideo, yuv420p, 320x240, 3.00 fps
>>> Input #1, audio_device, from '':
>>> Duration: N/A, bitrate: N/A
>>> Stream #1.0: Audio: pcm_s16le, 44100 Hz, mono, 705 kb/s
>>> picture size invalid (0x236)
>>> Segmentation fault
>>>
>>> Run through gdb:
>>>
>>> [ adamk at thorn - ~/saved/source/ffmpeg ]: gdb ./ffmpeg_g
>>> GNU gdb 6.3
>>> Copyright 2004 Free Software Foundation, Inc.
>>> GDB is free software, covered by the GNU General Public License, and
>>> you are
>>> welcome to change it and/or distribute copies of it under certain
>>> conditions.
>>> Type "show copying" to see the conditions.
>>> There is absolutely no warranty for GDB. Type "show warranty" for
>>> details.
>>> This GDB was configured as "i486-slackware-linux"...Using host
>>> libthread_db library "/lib/libthread_db.so.1".
>>>
>>> (gdb) set args http://localhost:8090/feed1.ffm
>>> (gdb) run
>>> Starting program: /home/adamk/saved/source/ffmpeg/ffmpeg_g
>>> http://localhost:8090/feed1.ffm
>>> ffmpeg version CVS, build 4759, Copyright (c) 2000-2004 Fabrice Bellard
>>> configuration: --enable-mp3lame --enable-xvid --enable-faad
>>> --enable-faac --enable-libogg --enable-gpl --enable-vorbis
>>> built on Aug 3 2005 14:07:46, gcc: 3.3.4
>>> Input #0, video4linux, from '':
>>> Duration: N/A, bitrate: N/A
>>> Stream #0.0: Video: rawvideo, yuv420p, 320x240, 3.00 fps
>>> Input #1, audio_device, from '':
>>> Duration: N/A, bitrate: N/A
>>> Stream #1.0: Audio: pcm_s16le, 44100 Hz, mono, 705 kb/s
>>> picture size invalid (0x236)
>>>
>>> Program received signal SIGSEGV, Segmentation fault.
>>> 0xb7bc828a in img_resample_close () from /usr/local/lib/libavcodec.so
>>> (gdb) bt
>>> #0 0xb7bc828a in img_resample_close () from
>>> /usr/local/lib/libavcodec.so
>>> #1 0x0804bc3f in av_encode (output_files=0x805aa40,
>>> nb_output_files=1, input_files=0x805a940, nb_input_files=2,
>>> stream_maps=0x805aaa0,
>>> nb_stream_maps=0) at ffmpeg.c:2165
>>> #2 0x0804a821 in main (argc=8998, argv=0xbfe76724) at ffmpeg.c:4491
>>> (gdb) disass $pc-32 $pc+32
>>> Dump of assembler code from 0xb7bc826a to 0xb7bc82aa:
>>> 0xb7bc826a <img_resample+186>: decl 0x5e5bf465(%ebp)
>>> 0xb7bc8270 <img_resample+192>: pop %edi
>>> 0xb7bc8271 <img_resample+193>: pop %ebp
>>> 0xb7bc8272 <img_resample+194>: ret 0xb7bc8273
>>> <img_resample+195>: lea 0x0(%esi),%esi
>>> 0xb7bc8279 <img_resample+201>: lea 0x0(%edi),%edi
>>> 0xb7bc8280 <img_resample_close+0>: push %ebp
>>> 0xb7bc8281 <img_resample_close+1>: mov %esp,%ebp
>>> 0xb7bc8283 <img_resample_close+3>: push %ebx
>>> 0xb7bc8284 <img_resample_close+4>: sub $0x10,%esp
>>> 0xb7bc8287 <img_resample_close+7>: mov 0x8(%ebp),%ebx
>>> 0xb7bc828a <img_resample_close+10>: mov 0x140(%ebx),%edx
>>> 0xb7bc8290 <img_resample_close+16>: push %edx
>>> 0xb7bc8291 <img_resample_close+17>: call 0xb7abd940 <av_free>
>>> 0xb7bc8296 <img_resample_close+22>: mov %ebx,0x8(%ebp)
>>> 0xb7bc8299 <img_resample_close+25>: add $0x10,%esp
>>> 0xb7bc829c <img_resample_close+28>: mov 0xfffffffc(%ebp),%ebx
>>> 0xb7bc829f <img_resample_close+31>: mov %ebp,%esp
>>> 0xb7bc82a1 <img_resample_close+33>: pop %ebp
>>> 0xb7bc82a2 <img_resample_close+34>: jmp 0xb7abd940 <av_free>
>>> 0xb7bc82a7 <img_resample_close+39>: mov %esi,%esi
>>> 0xb7bc82a9 <img_resample_close+41>: lea 0x0(%edi),%edi
>>> End of assembler dump.
>>> eax 0x1 1
>>> ecx 0x806ae84 134655620
>>> edx 0x0 0
>>> ebx 0x0 0
>>> esp 0xbfe76024 0xbfe76024
>>> ebp 0xbfe76038 0xbfe76038
>>> esi 0x0 0
>>> edi 0x806ad70 134655344
>>> eip 0xb7bc828a 0xb7bc828a
>>> eflags 0x10286 66182
>>> cs 0x73 115
>>> ss 0x7b 123
>>> ds 0x7b 123
>>> es 0x7b 123
>>> fs 0x0 0
>>> gs 0x0 0
>>> st0 0 (raw 0x00000000000000000000)
>>> st1 0 (raw 0x00000000000000000000)
>>> st2 0 (raw 0x00000000000000000000)
>>> st3 0 (raw 0x00000000000000000000)
>>> st4 21.994216536704321640627313172444701 (raw
>>> 0x4003aff427ccb24cb000)
>>> st5 16 (raw 0x40038000000000000000)
>>> st6 -5.4564792608687668826195071858364827e-12 (raw
>>> 0xbfd9bffb988f00000000)
>>> st7 32768 (raw 0x400e8000000000000000)
>>> fctrl 0x37f 895
>>> fstat 0x32 50
>>> ftag 0xffff 65535
>>> fiseg 0x73 115
>>> fioff 0xb7ae9c43 -1213293501
>>> foseg 0x7b 123
>>> fooff 0xbfe75f40 -1075355840
>>> fop 0x1c9 457
>>> xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0,
>>> 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0},
>>> v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
>>> mxcsr 0x1f80 8064
>>> mm0 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 =
>>> {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
>>> 0x0}}
>>> mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 =
>>> {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
>>> 0x0}}
>>> mm2 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 =
>>> {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
>>> 0x0}}
>>> mm3 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 =
>>> {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
>>> 0x0}}
>>> mm4 {uint64 = 0xaff427ccb24cb000, v2_int32 = {0xb24cb000,
>>> 0xaff427cc}, v4_int16 = {0xb000, 0xb24c, 0x27cc, 0xaff4}, v8_int8 = {
>>> 0x0, 0xb0, 0x4c, 0xb2, 0xcc, 0x27, 0xf4, 0xaf}}
>>> mm5 {uint64 = 0x8000000000000000, v2_int32 = {0x0,
>>> 0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0,
>>> 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x80}}
>>> mm6 {uint64 = 0xbffb988f00000000, v2_int32 = {0x0,
>>> 0xbffb988f}, v4_int16 = {0x0, 0x0, 0x988f, 0xbffb}, v8_int8 = {0x0,
>>> 0x0, 0x0,
>>> 0x0, 0x8f, 0x98, 0xfb, 0xbf}}
>>> mm7 {uint64 = 0x8000000000000000, v2_int32 = {0x0,
>>> 0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0,
>>> 0x0, 0x0,
>>> 0x0, 0x0, 0x0, 0x0, 0x80}}
>>>
>>> I've also tried modifying ffserver.conf so, uncommenting the NoVideo
>>> line. This time I get something different:
>>>
>>> (gdb) set args http://localhost:8090/feed1.ffm
>>> (gdb) run
>>> Starting program: /home/adamk/saved/source/ffmpeg/ffmpeg_g
>>> http://localhost:8090/feed1.ffm
>>> ffmpeg version CVS, build 4759, Copyright (c) 2000-2004 Fabrice Bellard
>>> configuration: --enable-mp3lame --enable-xvid --enable-faad
>>> --enable-faac --enable-libogg --enable-gpl --enable-vorbis
>>> built on Aug 3 2005 14:07:46, gcc: 3.3.4
>>> Input #0, audio_device, from '':
>>> Duration: N/A, bitrate: N/A
>>> Stream #0.0: Audio: pcm_s16le, 44100 Hz, mono, 705 kb/s
>>> Output #0, ffm, to 'http://localhost:8090/feed1.ffm':
>>> Stream #0.0: Audio: mp2, 44100 Hz, mono
>>> Stream mapping:
>>> Stream #0.0 -> #0.0
>>> Press [q] to stop encoding
>>>
>>> Program received signal SIGSEGV, Segmentation fault.
>>> 0x0804b810 in av_encode (output_files=0x805aa40, nb_output_files=1,
>>> input_files=0x805a940, nb_input_files=1, stream_maps=0x805aaa0,
>>> nb_stream_maps=0) at ffmpeg.c:2028
>>> 2028 if(ost->frame_number >=
>>> max_frames[ost->st->codec->codec_type]){
>>> (gdb) disass $pc-32 $pc+32
>>> Dump of assembler code from 0x804b7f0 to 0x804b830:
>>> 0x0804b7f0 <av_encode+2400>: inc %ebp
>>> 0x0804b7f1 <av_encode+2401>: jne 0x804bf10 <av_encode+4224>
>>> 0x0804b7f7 <av_encode+2407>: test %ebx,%ebx
>>> 0x0804b7f9 <av_encode+2409>: fstpl 0xfffffa80(%ebp)
>>> 0x0804b7ff <av_encode+2415>: jne 0x804b807 <av_encode+2423>
>>> 0x0804b801 <av_encode+2417>: mov %edx,0xfffffa98(%ebp)
>>> 0x0804b807 <av_encode+2423>: mov 0x8(%ecx),%edi
>>> 0x0804b80a <av_encode+2426>: mov 0xe0(%edi),%edx
>>> 0x0804b810 <av_encode+2432>: mov 0x805a5a8(,%edx,4),%esi
>>> 0x0804b817 <av_encode+2439>: mov 0xfffffac0(%ebp),%ecx
>>> 0x0804b81d <av_encode+2445>: cmp %esi,0x14(%ecx)
>>> 0x0804b820 <av_encode+2448>: jge 0x804b9c6 <av_encode+2870>
>>> 0x0804b826 <av_encode+2454>: incl 0xfffffad8(%ebp)
>>> 0x0804b82c <av_encode+2460>: mov 0xfffffac8(%ebp),%eax
>>> End of assembler dump.
>>>
>>> I'll spare you from the all-registers info this time, but let me
>>> know if you'd like me to send it along.
>>>
>>> Any help would be appreciated. Thanks!
>>>
>>> Adam
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> # 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, 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
>>> # 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 /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.
>>> #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
>>> # '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:
>>> # 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 streaming (Windows Media Player format).
>>> # swf : Macromedia Flash compatible stream
>>> # avi : AVI format (MPEG-4 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. 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
>>> VideoBitRate 64
>>>
>>> # Ratecontrol buffer size
>>> VideoBufferSize 40
>>>
>>> # Number of frames per second
>>> VideoFrameRate 3
>>>
>>> # Size of the video frame: WxH (default: 160x128)
>>> # The following abbreviations are defined: sqcif, qcif, cif, 4cif
>>> #VideoSize 160x128
>>> VideoSize 320x240
>>>
>>> # 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 intra frame.
>>> VideoGopSize 12
>>>
>>> # More MPEG-4 parameters
>>> # VideoHighQuality
>>> # Video4MotionVector
>>>
>>> # Choose your codecs: #AudioCodec mp2
>>> #VideoCodec mpeg1video
>>>
>>> # Suppress audio
>>> #NoAudio
>>>
>>> # Suppress video
>>> #NoVideo
>>>
>>> #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
>>> # for a keyframe to appear in the data stream.
>>> #Preroll 15
>>>
>>> # ACL:
>>>
>>> # You can allow ranges of addresses (or single addresses)
>>> #ACL ALLOW <first address> <last address>
>>>
>>> # You can deny ranges of addresses (or single addresses)
>>> #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>
>>>
>>>
>>> ##################################################################
>>> # Example streams
>>>
>>>
>>> # Multipart JPEG
>>>
>>> #<Stream test.mjpg>
>>> #Feed feed1.ffm
>>> #Format mpjpeg
>>> #VideoFrameRate 2
>>> #VideoIntraOnly
>>> #NoAudio
>>> #</Stream>
>>>
>>>
>>> # Single JPEG
>>>
>>> #<Stream test.jpg>
>>> #Feed feed1.ffm
>>> #Format jpeg
>>> #VideoFrameRate 2 #VideoIntraOnly
>>> ##VideoSize 352x240
>>> #NoAudio
>>> #</Stream>
>>>
>>>
>>> # Flash
>>>
>>> #<Stream test.swf>
>>> #Feed feed1.ffm
>>> #Format swf
>>> #VideoFrameRate 2
>>> #VideoIntraOnly
>>> #NoAudio
>>> #</Stream>
>>>
>>>
>>> # ASF compatible
>>>
>>> #<Stream test.asf>
>>> #Feed feed1.ffm
>>> #Format asf
>>> #VideoFrameRate 15
>>> #VideoSize 352x240
>>> #VideoBitRate 256
>>> #VideoBufferSize 40
>>> #VideoGopSize 30
>>> #AudioBitRate 64
>>> #StartSendOnKey
>>> #</Stream>
>>>
>>>
>>> # MP3 audio
>>> #<Stream test.mp3>
>>> #Feed feed1.ffm
>>> #Format mp2
>>> #AudioCodec mp3
>>> #AudioBitRate 64
>>> #AudioChannels 1
>>> #AudioSampleRate 44100
>>> #NoVideo
>>> #</Stream>
>>>
>>>
>>> # Ogg Vorbis audio
>>>
>>> #<Stream test.ogg>
>>> #Feed feed1.ffm
>>> #Title "Stream title"
>>> #AudioBitRate 64
>>> #AudioChannels 2
>>> #AudioSampleRate 44100
>>> #NoVideo
>>> #</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>
>>>
>>>
>>> ##################################################################
>>> # A stream coming from a file: you only need to set the input
>>> # filename and optionally a new format. Supported conversions:
>>> # AVI -> ASF
>>>
>>> #<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
>>> #
>>> # 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 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.
>>> #
>>> # 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>
>>>
>>>
>>> ##################################################################
>>> # Special streams
>>>
>>> # 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
>>> ACL allow 208.16.19.0 208.16.19.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>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> _______________________________________________
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel at mplayerhq.hu
>>> http://mplayerhq.hu/mailman/listinfo/ffmpeg-devel
>>>
>>>
>>
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel at mplayerhq.hu
>> http://mplayerhq.hu/mailman/listinfo/ffmpeg-devel
>>
>
>
More information about the ffmpeg-devel
mailing list