[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-server-cvs
Subject:    [Server-cvs] engine/inputsource base_shim.cpp,1.1.2.3,1.1.2.4
From:       dsingh () helixcommunity ! org
Date:       2007-12-28 9:52:19
Message-ID: 200712280952.lBS9qQ5T027469 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/engine/inputsource
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv4374

Modified Files:
      Tag: SERVER_12
	base_shim.cpp 
Log Message:
Synopsis
========
Fix for
Bug 210311: CA and playback stops or rebuffer and no resume about half the time \
switching from OD to live

Branches: SEREVR_12_RN , HEAD.
Suggested Reviewer: Jamie Gordon, JJ Zeng.

Description
===========
There are two problems in this bug.
1). The player rebuffers, "Communicating..."
 This is due to when we switch to live and if the first frame that is comming from \
new source is not a key frame, we are returning  error from function
 BasePacketShim::AdjustTimeStamp()
 at cndition
        if(!(pPacket->GetASMFlags() & HX_ASM_SWITCH_ON))
        {
            return NULL;
        } 
 
 So this condition is handled properly by calling GetPacket().


2). The server CAs and the playback stops
 This is happening because of function ConfigureSourceFCSSpecific() being called from \
  ClientSession::SwitchDone().
 This function should not get called for switch to live. So call restricted for only \
PPM OD. 

Files Affected
==============
/server/engine/inpusource/ppmstaticshim.cpp
/server/engine/inpusource/base_shim.cpp
/server/engine/session/clientsession.cpp

Testing Performed
=================

Unit Tests:
-None

Integration Tests:
-Some basic testing is done on windows build, no "communicating.." is observed on \
player. Let the QA come with full testing.

Leak Tests:
-None

Performance Tests:
-None

Platforms Tested: win32-i386-vc7
Build verified: win32-i386-vc7

QA Hints
===============
-This should also improve the playback quality after switch.




Index: base_shim.cpp
===================================================================
RCS file: /cvsroot/server/engine/inputsource/base_shim.cpp,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -d -r1.1.2.3 -r1.1.2.4
--- base_shim.cpp	24 Dec 2007 20:33:42 -0000	1.1.2.3
+++ base_shim.cpp	28 Dec 2007 09:52:16 -0000	1.1.2.4
@@ -155,8 +155,6 @@
      }
      if (m_pStreamInfo[m_packet->unStreamNumber].uNewclip)
      {
-        if(!(pPacket->GetASMFlags() & HX_ASM_SWITCH_ON))
-            return NULL;
         m_pStreamInfo[m_packet->unStreamNumber].uDiff += 
             (m_pStreamInfo[m_packet->unStreamNumber].ulLastPacketTS - \
m_packet->ulCurTS + m_pStreamInfo[m_packet->unStreamNumber].uPacketDiff);  \
m_pStreamInfo[m_packet->unStreamNumber].uRTPDiff += 


_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic