[FFmpeg-trac] #4506(ffmpeg:new): ffmpeg does not seem to receive replayed packets
FFmpeg
trac at avcodec.org
Wed Apr 22 14:37:05 CEST 2015
#4506: ffmpeg does not seem to receive replayed packets
----------------------------------+--------------------------------------
Reporter: fohletex | Type: defect
Status: new | Priority: normal
Component: ffmpeg | Version: git-master
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
----------------------------------+--------------------------------------
'''Summary of the bug:'''
The following situation is given: I have a video I encoded with ffmpeg in
x265 on ubuntu 14.04. I streamed (UDP) the video as MPEGTS to the
localhost and captured the transmitted packets with tcpdump in a pcap
file. When I replay the pcap file with tcpreplay, neither ffplay nor
ffmpeg seem to receive the stream. Although the packets are really
transmitted, as I could verify in wireshark and iptraf.
The packets seem to be correct, due to the fact that I can extract the UDP
conversation stream into an own file which can be played manually again
via ffplay without any problems. I can also stream the video directly to
the localhost and receive it with ffplay or ffmpeg. Only when I stream
from tcpreplay there are problems.
Note that general streaming works on my machine: I am able to stream the
video directly and receive it.
I know that there is a ticket open for tcpreplay, that streaming to the
localhost can work, but can also not work. But due to my upper described
experiences among this topic it seems, that tcpreplay is able to replay
the localhost packets. For example, I can tcpreplay and tcpdump the local
transmission completely, so it's not like the packets are not sent.
'''How to reproduce:'''
Terminal 1:
{{{
% ffplay udp://127.0.0.1:1234
ffplay version N-71455-gfbdaebb Copyright (c) 2003-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/home/user/ffmpeg_build --extra-
cflags=-I/home/user/ffmpeg_build/include --extra-
ldflags=-L/home/user/ffmpeg_build/lib --bindir=/home/user/bin --enable-gpl
--enable-libass --enable-libfdk-aac --enable-libfreetype --enable-
libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 54. 22.101 / 54. 22.101
libavcodec 56. 34.100 / 56. 34.100
libavformat 56. 30.100 / 56. 30.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 14.100 / 5. 14.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
}}}
or
{{{
% ffmpeg -i udp://localhost:1234 -c:v rawvideo myvideo.avi
ffmpeg version N-71455-gfbdaebb Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/home/user/ffmpeg_build --extra-
cflags=-I/home/user/ffmpeg_build/include --extra-
ldflags=-L/home/user/ffmpeg_build/lib --bindir=/home/user/bin --enable-gpl
--enable-libass --enable-libfdk-aac --enable-libfreetype --enable-
libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 54. 22.101 / 54. 22.101
libavcodec 56. 34.100 / 56. 34.100
libavformat 56. 30.100 / 56. 30.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 14.100 / 5. 14.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
}}}
Both seem not to work. The video does not start playing.
Terminal 2:
{{{
% sudo tcpreplay -i lo mypcapfile.pcap
Warning in sendpacket.c:sendpacket_open_pf() line 669:
Unsupported physical layer type 0x0304 on lo. Maybe it works, maybe it
wont. See tickets #123/318
sending out lo
processing file: mypcapfile.pcap
Actual: 3276 packets (4795040 bytes) sent in 9.82 seconds.
Rated: 488293.3 bps, 3.73 Mbps, 333.60 pps
Statistics for network device: lo
Attempted packets: 3276
Successful packets: 3276
Failed packets: 0
Retried packets (ENOBUFS): 0
Retried packets (EAGAIN): 0
}}}
----
'''And here the output when I stream the video directly ...'''
Terminal 1:
{{{
% ffmpeg -re -i myvideo.ts -c:v copy -an -f mpegts -bsf:v h264_mp4toannexb
udp://127.0.0.1:1234
ffmpeg version N-71455-gfbdaebb Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/home/user/ffmpeg_build --extra-
cflags=-I/home/user/ffmpeg_build/include --extra-
ldflags=-L/home/user/ffmpeg_build/lib --bindir=/home/user/bin --enable-gpl
--enable-libass --enable-libfdk-aac --enable-libfreetype --enable-
libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 54. 22.101 / 54. 22.101
libavcodec 56. 34.100 / 56. 34.100
libavformat 56. 30.100 / 56. 30.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 14.100 / 5. 14.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, mpegts, from 'myvideo.ts':
Duration: 00:00:10.04, start: 54.791800, bitrate: 3606 kb/s
Program 1
Stream #0:0[0x65]: Video: hevc (Main) ([36][0][0][0] / 0x0024),
yuv420p(tv), 1920x1080, 24 fps, 24 tbr, 90k tbn, 24 tbc
Output #0, mpegts, to 'udp://127.0.0.1:1234':
Metadata:
encoder : Lavf56.30.100
Stream #0:0: Video: hevc ([36][0][0][0] / 0x0024), yuv420p, 1920x1080,
q=2-31, 24 fps, 24 tbr, 90k tbn, 24 tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 16 fps=0.0 q=-1.0 size= 349kB time=00:00:00.58
bitrate=4898.7kbits/frame= 28 fps= 28 q=-1.0 size= 588kB
time=00:00:01.08 bitrate=4449.5kbits/frame= 40 fps= 26 q=-1.0 size=
953kB time=00:00:01.58 bitrate=4930.0kbits/frame= 52 fps= 26 q=-1.0
size= 1204kB time=00:00:02.08 bitrate=4734.4kbits/frame= 64 fps= 25
q=-1.0 size= 1451kB time=00:00:02.58 bitrate=4601.7kbits/frame= 76
fps= 25 q=-1.0 size= 1838kB time=00:00:03.08 bitrate=4883.2kbits/frame=
88 fps= 25 q=-1.0 size= 2299kB time=00:00:03.58
bitrate=5255.7kbits/frame= 100 fps= 25 q=-1.0 size= 2747kB
time=00:00:04.08 bitrate=5512.0kbits/frame= 112 fps= 25 q=-1.0 size=
3014kB time=00:00:04.58 bitrate=5387.2kbits/frame= 125 fps= 25 q=-1.0
size= 3098kB time=00:00:05.12 bitrate=4952.2kbits/frame= 137 fps= 25
q=-1.0 size= 3187kB time=00:00:05.62 bitrate=4641.9kbits/frame= 149
fps= 25 q=-1.0 size= 3297kB time=00:00:06.12 bitrate=4409.1kbits/frame=
161 fps= 25 q=-1.0 size= 3439kB time=00:00:06.62
bitrate=4252.5kbits/frame= 173 fps= 24 q=-1.0 size= 3510kB
time=00:00:07.12 bitrate=4035.2kbits/frame= 185 fps= 24 q=-1.0 size=
3715kB time=00:00:07.62 bitrate=3991.7kbits/frame= 197 fps= 24 q=-1.0
size= 3946kB time=00:00:08.12 bitrate=3978.3kbits/frame= 210 fps= 24
q=-1.0 size= 4159kB time=00:00:08.66 bitrate=3931.2kbits/frame= 222
fps= 24 q=-1.0 size= 4302kB time=00:00:09.16 bitrate=3844.7kbits/frame=
234 fps= 24 q=-1.0 size= 4518kB time=00:00:09.66
bitrate=3828.4kbits/frame= 241 fps= 24 q=-1.0 Lsize= 4563kB
time=00:00:09.95 bitrate=3753.5kbits/s
video:4204kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 8.546336%
}}}
Terminal 2:
{{{
% ffplay udp://127.0.0.1:1234
ffplay version N-71455-gfbdaebb Copyright (c) 2003-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/home/user/ffmpeg_build --extra-
cflags=-I/home/user/ffmpeg_build/include --extra-
ldflags=-L/home/user/ffmpeg_build/lib --bindir=/home/user/bin --enable-gpl
--enable-libass --enable-libfdk-aac --enable-libfreetype --enable-
libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 54. 22.101 / 54. 22.101
libavcodec 56. 34.100 / 56. 34.100
libavformat 56. 30.100 / 56. 30.100
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 14.100 / 5. 14.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, mpegts, from 'udp://127.0.0.1:1234':0KB sq= 0B f=0/0
Duration: N/A, start: 1.483333, bitrate: N/A
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: hevc (Main) ([36][0][0][0] / 0x0024),
yuv420p(tv), 1920x1080, 24 fps, 24 tbr, 90k tbn, 24 tbc
13.72 M-V: -0.270 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4506>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list