[FFmpeg-cvslog] rtpdec: only use RTCP for PTS when synchronizing multiple streams

John Brooks git at videolan.org
Sat Nov 19 02:09:42 CET 2011


ffmpeg | branch: master | John Brooks <john.brooks at bluecherry.net> | Wed Nov  9 16:28:35 2011 -0700| [525c5b08fb835cad000810d6299964f300a17daa] | committer: Martin Storsjö

rtpdec: only use RTCP for PTS when synchronizing multiple streams

RTCP timestamps are only necessary to synchronize time between
multiple streams. For a single stream, the RTP packet timestamp
provides more reliable timing. As a result, single-stream RTP
sessions should now have accurate and monotonic PTS.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=525c5b08fb835cad000810d6299964f300a17daa
---

 libavformat/rtpdec.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavformat/rtpdec.c b/libavformat/rtpdec.c
index 94fa0f1..88cf15b 100644
--- a/libavformat/rtpdec.c
+++ b/libavformat/rtpdec.c
@@ -424,7 +424,7 @@ static void finalize_packet(RTPDemuxContext *s, AVPacket *pkt, uint32_t timestam
     if (timestamp == RTP_NOTS_VALUE)
         return;
 
-    if (s->last_rtcp_ntp_time != AV_NOPTS_VALUE) {
+    if (s->last_rtcp_ntp_time != AV_NOPTS_VALUE && s->ic->nb_streams > 1) {
         int64_t addend;
         int delta_timestamp;
 



More information about the ffmpeg-cvslog mailing list