Opened 5 years ago

Closed 4 years ago

Last modified 4 years ago

#7863 closed defect (fixed)

prompeg FEC problem

Reported by: Thomas Edwards Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: prompeg
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
rtp_mpegts with prompeg FEC has a problem, at least for L=5 D=20 - there are too many FEC packets, and some Column FEC payloads appear to be duplicates.
How to reproduce:

$ ffmpeg -f lavfi -i testsrc=duration=30:size=1280x720:rate=30 -f rtp_mpegts -fec prompeg=l=5:d=20 rtp://239.0.0.1:5000
ffmpeg version N-93595-gd7e8e62797 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 7 (GCC)
  configuration: 
  libavutil      56. 26.100 / 56. 26.100
  libavcodec     58. 51.100 / 58. 51.100
  libavformat    58. 27.102 / 58. 27.102
  libavdevice    58.  7.100 / 58.  7.100
  libavfilter     7. 48.100 /  7. 48.100
  libswscale      5.  4.100 /  5.  4.100
  libswresample   3.  4.100 /  3.  4.100

Capturing the output and using Wireshark Statistics/UDP Multicast Streams, you can see the output is:
UDP DST 5000 – PT=33 (MPEG TS): 2507 packets, avg. 3.121 Mbps
UDP DST 5001 – 2 (RTCP SR) packets, 223 kbps
UDP DST 5002 – PT=96, Column FEC, 622 packets, avg. 784 kbps
UDP DST 5004 – PT=96, Row FEC, 2507 packets, avg. 3.157 Mbps

If L=5 and D=20, there should be 25 FEC packets for every 100 source packets (5 Column FEC & 20 Row FEC packets). So for the 2507 source packets, there should be 125 Column FEC packets (but actually 622) and 500 Row FEC packets (but actually 2507).

I am also attaching Wireshark screenshots of example Column FEC packets with duplicated payloads and same SNBase low.

Attachments (2)

col_FEC_SN_2810.png (259.3 KB ) - added by Thomas Edwards 5 years ago.
Column FEC RTP SN 2810
col_FEC_SN_2811.png (258.9 KB ) - added by Thomas Edwards 5 years ago.
Column FEC RTP SN 2811

Download all attachments as: .zip

Change History (9)

by Thomas Edwards, 5 years ago

Attachment: col_FEC_SN_2810.png added

Column FEC RTP SN 2810

by Thomas Edwards, 5 years ago

Attachment: col_FEC_SN_2811.png added

Column FEC RTP SN 2811

comment:2 by Carl Eugen Hoyos, 5 years ago

Component: ffmpegavformat
Keywords: fec removed
Version: 4.1git-master

comment:3 by Thomas Edwards, 5 years ago

This square matrix FEC does appear to work OK however “prompeg=l=10:d=10”

comment:5 by Carl Eugen Hoyos, 4 years ago

The reason is that the patch does not apply.

comment:6 by Jun Zhao, 4 years ago

Resolution: fixed
Status: newclosed

comment:7 by Carl Eugen Hoyos, 4 years ago

Fixed by David Holroyd in ffc1208266c2890a1b0e2391e0a536fe9698e69c

Note: See TracTickets for help on using tickets.