[FFmpeg-trac] #9657(avformat:new): SSRC change on an RTP stream should lead to BYE
FFmpeg
trac at avcodec.org
Mon Feb 21 10:11:33 EET 2022
#9657: SSRC change on an RTP stream should lead to BYE
-------------------------------------+----------------------------------
Reporter: do_coredump | Type: defect
Status: new | Priority: normal
Component: avformat | Version: 4.0.6
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+----------------------------------
Summary of the bug:
when receiving an elementary live video stream (e.g. h264) and the sender
of the stream restarts, then the receiving ffmpeg entity ignores all
incoming packets due to a different SSRC. This is bad when the sender is
an embedded system which might restart any time.
I propose to return RTP_BYE in case a different SSRC is received by the
demuxer in ffmpeg
Claus
How to reproduce:
{{{
SDP file :
-----------------
v=0
t=0 0
m=video 35004 RTP/AVP 96
c=IN IP4 127.0.0.1
a=rtpmap:96 H264/90000
------------------
* run a receiving ffmpeg instance
** ffmpeg -protocol_whitelist udp,file,crypto,rtp -i foo.sdp -vcodec copy
-acodec copy foo.mp4
* run an ffmpeg version that creates an RTP stream
** ffmpeg -re -i /tmp/sd.mp4 -vcodec copy -an -f rtp rtp:/127.0.0.1:35004
* kill this instance and restart it (without restarting the receiver)
** ffmpeg -re -i /tmp/sd.mp4 -vcodec copy -an -f rtp rtp:/127.0.0.1:35004
Output on the receiving instance:
output on the first receiving instance (relevant output only) :
[sdp @ 0x55a8cba18780] RTP: dropping old packet received too late
Last message repeated 528 times
built on ffmpeg version origin/release/4.0
}}}
Patches should be submitted to the ffmpeg-devel mailing list and not this
bug tracker.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9657>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list