[FFmpeg-trac] #346(FFserver:new): FFserver passing on rtp stream freezes
FFmpeg
trac at avcodec.org
Wed Jul 13 16:27:40 CEST 2011
#346: FFserver passing on rtp stream freezes
----------------------+--------------------------
Reporter: schanda | Owner: baptiste
Type: defect | Status: new
Priority: normal | Component: FFserver
Version: git | Keywords: stream error
Blocked By: | Blocking:
Reproduced: 0 | Analyzed: 0
----------------------+--------------------------
I have the following situation:
FFserver on Host 1, which takes input from FFmpeg and offers an rtp
stream. Config is reproduced below under the heading mainserver.conf.
FFmpeg is invoked as ffmpeg -i inputfile http://127.0.0.1:8090/f.ffm on
this computer.
FFServer on Host 2 (can be the same one for testing purposes, effect is
the same) which reads the stream from FFserver on Host 1 and offers it
again. Config file is reproduced below under the heading ffserver.conf.
I start both servers with ffserver -d -f config_file.
When watching the stream offered by FFserver on Host 2 it aborts after a
few seconds. This happens regardless of whether I watch from the same or a
different computer, and also regardless of whether the two ffservers are
run from the same or different hosts. The time it takes to abort is always
exactly the same, with the same video and settings. For example with these
configs and this [http://downloads.xiph.org/video
/A_Digital_Media_Primer_For_Geeks-360p.webm input video] it's always 4.5
seconds.
The effect is independent of which player is used, vlc, mplayer, ffplay
all show the same result, the stream freezes.
Watching the stream offered by Host 1 directly works fine.
FFplay reports no error when this happens, the video simply freezes. The
counter / timer on the console continues to increase though.
== mainserver.conf ==
{{{
Port 8090
RTSPPort 8554
BindAddress 0.0.0.0
MaxHTTPConnections 1000
MaxClients 200
MaxBandwidth 10000
CustomLog -
<Feed f.ffm>
File /tmp/f.ffm
FileMaxSize 2000M
</Feed>
<Stream 1.sdp>
Format rtp
Feed f.ffm
NoLoop
VideoCodec libx264
VideoFrameRate 24
VideoBitRate 400
VideoSize 640x368
# AVPresetVideo default
AVPresetVideo medium
# AVPresetVideo libx264-ultrafast
# AVOptionVideo flags +global_header
NoAudio
VideoBufferSize 500
VideoGopSize 5
AVOptionVideo flags global_header vpre hq crf 15 maxrate 400k
</Stream>
<Stream stat.html>
Format status
</Stream>
}}}
== ffserver.conf ==
{{{
Port 8091
RTSPPort 8555
BindAddress 0.0.0.0
MaxHTTPConnections 10
MaxClients 5
MaxBandwidth 10000
CustomLog -
<Stream 1.sdp>
Format rtp
File "rtsp://127.0.0.1:8554/1.sdp?tcp"
</Stream>
<Stream stat.html>
Format status
</Stream>
}}}
== Log of FFserver on Host 2 ==
{{{
ffserver version 0.7, Copyright (c) 2000-2011 the FFmpeg developers
built on Jul 6 2011 11:29:30 with gcc 4.6.0 20110530 (Red Hat 4.6.0-9)
configuration: --enable-gpl --enable-libx264 --enable-static --disable-
shared --extra-cflags='-Lx264/lib/ -Ix264/inc' --extra-
ldflags='-Lx264/lib/ -Ix264/inc/.'
libavutil 51. 11. 0 / 51. 11. 0
libavcodec 53. 7. 0 / 53. 7. 0
libavformat 53. 5. 0 / 53. 5. 0
libavdevice 53. 2. 0 / 53. 2. 0
libavfilter 2. 24. 3 / 2. 24. 3
libswscale 2. 0. 0 / 2. 0. 0
libpostproc 51. 2. 0 / 51. 2. 0
Wed Jul 13 15:59:34 2011 Opening file 'rtsp://127.0.0.1:8554/1.sdp?tcp'
Wed Jul 13 15:59:34 2011 [rtsp @ 0x25ec740]SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Title
c=IN IP4 0.0.0.0
t=0 0
a=tool:libavformat 53.5.0
m=video 0 RTP/AVP 96
b=AS:400
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=64001F;packetization-mode=1; sprop-parameter-
sets=Z2QAH6zZQKAvsBEAAAMAkgAANrIPGDGW,aOvssiw=
a=control:streamid=0
Wed Jul 13 15:59:34 2011 [rtsp @ 0x25ec740]video codec set to: h264
Wed Jul 13 15:59:34 2011 [NULL @ 0x25f0600]RTP Profile IDC: 64 Profile
IOP: 0 Level: 1f
Wed Jul 13 15:59:34 2011 [NULL @ 0x25f0600]RTP Packetization Mode: 1
Wed Jul 13 15:59:34 2011 [NULL @ 0x25f0600]Extradata set to 0x25ec000
(size: 35)!hello state=0
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]Unsupported bit depth: 0
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]Missing reference picture
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]decode_slice_header error
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]concealing 920 DC, 920 AC, 920
MV errors
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]no picture
Wed Jul 13 15:59:34 2011 [h264 @ 0x25f0600]no picture
Wed Jul 13 15:59:35 2011 [rtsp @ 0x25ec740]All info found
Wed Jul 13 15:59:35 2011 [rtsp @ 0x25ec740]Estimating duration from
bitrate, this may be inaccurate
Wed Jul 13 15:59:35 2011 FFserver started.
Wed Jul 13 15:59:40 2011 127.0.0.1 - - [DESCRIBE]
"rtsp://127.0.0.1:8555/1.sdp RTSP/1.0" 200 529
Wed Jul 13 15:59:40 2011 [rtsp @ 0x25f0600]SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Title
c=IN IP4 0.0.0.0
t=0 0
a=tool:libavformat 53.5.0
m=video 0 RTP/AVP 96
b=AS:400
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=64001F;packetization-mode=1; sprop-parameter-
sets=Z2QAH6zZQKAvsBEAAAMAkgAANrIPGDGW,aOvssiw=
a=control:streamid=0
Wed Jul 13 15:59:40 2011 [rtsp @ 0x25f0600]video codec set to: h264
Wed Jul 13 15:59:40 2011 [NULL @ 0x2717040]RTP Profile IDC: 64 Profile
IOP: 0 Level: 1f
Wed Jul 13 15:59:40 2011 [NULL @ 0x2717040]RTP Packetization Mode: 1
Wed Jul 13 15:59:40 2011 [NULL @ 0x2717040]Extradata set to 0x25ec000
(size: 35)!hello state=0
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]Unsupported bit depth: 0
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]Frame num gap 3 0
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]Frame num gap 3 1
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]reference picture missing
during reorder
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]Missing reference picture
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]no picture
Wed Jul 13 15:59:40 2011 [h264 @ 0x2717040]no picture
Wed Jul 13 15:59:41 2011 [rtsp @ 0x25f0600]All info found
Wed Jul 13 15:59:41 2011 [rtsp @ 0x25f0600]Estimating duration from
bitrate, this may be inaccurate
Wed Jul 13 15:59:41 2011 [rtsp @ 0x25f0600]hello state=3
Wed Jul 13 15:59:41 2011 127.0.0.1:60088 - - "PLAY 1.sdp/streamid=0
RTP/UDP"
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 304 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 51 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 5 of len 12195 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]NAL size 12195 > 1460
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 62 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 174 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 28 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 1 of len 176 M=1
Wed Jul 13 15:59:41 2011 [rtp @ 0x2715940]Sending NAL 5 of len 11706 M=1
...
Lots more like this
...
Wed Jul 13 15:59:50 2011 [rtp @ 0x2715940]NAL size 5433 > 1460
Wed Jul 13 15:59:50 2011 [rtp @ 0x2715940]Sending NAL 1 of len 91 M=1
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/346>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list