[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-protocol-cvs
Subject: [Protocol-cvs] transport/rtp rtptran.cpp,1.111.2.3,1.111.2.4
From: asheesh () helixcommunity ! org
Date: 2009-02-18 16:39:30
Message-ID: 200902181643.n1IGhmKG001101 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/protocol/transport/rtp
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4856
Modified Files:
Tag: hxclient_3_1_0_atlas
rtptran.cpp
Log Message:
> Synopsis: Video freezes while
> live streaming
> Overview: The RTP time-stamp is
> converted to NPT (Normal Playback Time) and single mapping between NTP
> (wallclock time) and NPT (Normal Playback Time) is maintained for
> every RTP stream. Helix assumes that NTP (wallclock) time sent by the
> server is synchronized (of the same time base) for all streams of the
> session and uses NTP - NPT mapping of one stream of the session for
> purposes of another stream. For the particular server under questions
> (QTSS), the NTP time is not synchronised for all the streams. This is
> causing the video stream to sync incorrectly when the RTCP sync is
> received for audio stream.
>
> Fix: Strongly synchronized
> streams at start have rtptime indicated in Rtp-info and thus have
> proper RTP to NPT mapping which effectively establishes the starting
> synchronization for the streams. We will use singular NTP-to-NPT
> mapping for streams that are not strongly synchronized at start but
> not use it for those that are strongly synchronized.
>
>
Index: rtptran.cpp
===================================================================
RCS file: /cvsroot/protocol/transport/rtp/rtptran.cpp,v
retrieving revision 1.111.2.3
diff -w -u -b -r1.111.2.3 rtptran.cpp
--- rtptran.cpp 5 May 2008 12:52:32 -0000 1.111.2.3
+++ rtptran.cpp 18 Feb 2009 16:36:51 -0000
@@ -1973,7 +1973,7 @@
else
{
// This the first RTCP sync accross all streams, anchor sync
- if (m_pSyncServer)
+ if (m_bWeakStartSync && m_pSyncServer)
{
#ifdef RTP_MESSAGE_DEBUG
messageFormatDebugFileOut("RTCP-SYNC: Distribute NTP-NPT Mapping \
NTPTime=%u NPTTime=%u", @@ -1986,6 +1986,10 @@
m_pSyncServer->DistributeSyncAnchor(ulHXTime, ulNtpHX);
}
+ else
+ {
+ retVal = anchorSync(ulHXTime, ulNtpHX);
+ }
}
}
}
Index: rtptran.cpp
===================================================================
RCS file: /cvsroot/protocol/transport/rtp/rtptran.cpp,v
retrieving revision 1.111.2.3
retrieving revision 1.111.2.4
diff -u -d -r1.111.2.3 -r1.111.2.4
--- rtptran.cpp 5 May 2008 12:52:32 -0000 1.111.2.3
+++ rtptran.cpp 18 Feb 2009 16:39:28 -0000 1.111.2.4
@@ -1973,7 +1973,7 @@
else
{
// This the first RTCP sync accross all streams, anchor sync
- if (m_pSyncServer)
+ if (m_bWeakStartSync && m_pSyncServer)
{
#ifdef RTP_MESSAGE_DEBUG
messageFormatDebugFileOut("RTCP-SYNC: Distribute NTP-NPT Mapping \
NTPTime=%u NPTTime=%u", @@ -1986,6 +1986,10 @@
m_pSyncServer->DistributeSyncAnchor(ulHXTime, ulNtpHX);
}
+ else
+ {
+ retVal = anchorSync(ulHXTime, ulNtpHX);
+ }
}
}
}
_______________________________________________
Protocol-cvs mailing list
Protocol-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/protocol-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic