Module: sems
Branch: refs/tags/rel_0.10.0_rc2
Commit: 66683074592f76755441ce3ccaeef3383401e3b4
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=66683074592f76755441ce3ccaeef3383401e3b4

Author: Stefan Sayer <[email protected]>
Committer: Stefan Sayer <[email protected]>
Date:   Mon Jul 30 15:10:22 2007 +0000

r414 bugfix backport: recv_offset_i was not initialized, which could lead to no 
audio input on big TS difference. timestamps correctly reset on resync.

git-svn-id: http://svn.berlios.de/svnroot/repos/sems/tags/rel_0.10.0_rc2@415 
8eb893ce-cfd4-0310-b710-fb5ebe64c474

---

 core/AmPlayoutBuffer.cpp |   12 +++++++-----
 core/AmRtpStream.cpp     |    1 -
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/core/AmPlayoutBuffer.cpp b/core/AmPlayoutBuffer.cpp
index bce04b3..7adf0bd 100644
--- a/core/AmPlayoutBuffer.cpp
+++ b/core/AmPlayoutBuffer.cpp
@@ -20,7 +20,9 @@
 
 
 AmPlayoutBuffer::AmPlayoutBuffer(AmRtpAudio *owner)
-  : r_ts(0),w_ts(0), last_ts_i(false), m_owner(owner)
+  : r_ts(0),w_ts(0), 
+    last_ts_i(false), recv_offset_i(false), 
+    m_owner(owner)
 {
 }
 
@@ -37,12 +39,12 @@ void AmPlayoutBuffer::write(u_int32_t ref_ts, u_int32_t 
rtp_ts,
     {
       recv_offset = rtp_ts - ref_ts;
       recv_offset_i = true;
-      DBG("initialized recv_offset with %i (%i - %i)\n",
+      DBG("initialized recv_offset with %u (%u - %u)\n",
          recv_offset, ref_ts, rtp_ts);
-      mapped_ts = r_ts = w_ts = ref_ts;// + jitter_delay;
+      mapped_ts = r_ts = w_ts = ref_ts;
     }
   else {
-    mapped_ts = rtp_ts - recv_offset;// + jitter_delay;
+    mapped_ts = rtp_ts - recv_offset;
 
     // resync
     if( ts_less()(mapped_ts, ref_ts - MAX_DELAY/2) || 
@@ -51,7 +53,7 @@ void AmPlayoutBuffer::write(u_int32_t ref_ts, u_int32_t 
rtp_ts,
       DBG("resync needed: reference ts = %u; write ts = %u\n",
          ref_ts, mapped_ts);
       recv_offset = rtp_ts - ref_ts;
-      mapped_ts = ref_ts;// + jitter_delay;
+      mapped_ts = r_ts = w_ts = ref_ts;
     }
   }
 
diff --git a/core/AmRtpStream.cpp b/core/AmRtpStream.cpp
index 8d879d1..d3c849d 100644
--- a/core/AmRtpStream.cpp
+++ b/core/AmRtpStream.cpp
@@ -264,7 +264,6 @@ AmRtpStream::AmRtpStream(AmSession* _s)
     r_port(0),
     l_port(0),
     l_sd(0), 
-    //      recv_offset_i(false), 
     r_ssrc_i(false),
     session(_s),
     passive(false),

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to