|
List Info
Thread: CR: Rebuffering of Video only presenation when video stream is running behind
|
|
| CR: Rebuffering of Video only
presenation when video stream is running
behind |

|
2006-11-29 20:19:59 |
|
Lovish,
This looks good, except that I had an error in one patch I gave you for
cayenne.
The following patch should be changed. The if logic should be
inverted as m_bFirstFrane stands for "still expecting first
frame" and not "having seen first frame" as I assumed when
submitting the patch.
// If
first frame has not been displayed yet, set active video time to the
first
// OnTimeSync
supplied time that moves us into the playing state.
// This will allow
us to properly measure amount of time passed without
// any frame blts
from the start of playback.
- if (!m_bFistFrame)
+ if (m_bFistFrame)
{
m_ulActiveVideoTime = ulTime;
}
After this change, please commit. You need not wait for
further approvals.
Please make sure your submission to HEAD does not contain any cayenne
specific patches.
Thanks,
Milko
At 06:03 AM 11/29/2006, Lovish Dhawan wrote:
Hi Milko,
Please find the updated diffs.
Thanks & Regards
Lovish
- ----- Original Message -----
- From: milko
real.com">Milko Boic
- To: ldhawan
real.com">Lovish Dhawan
- Cc:
datatype-dev
helixcommunity.org">
datatype-dev helixcommunity.org
- Sent: Wednesday, November 29, 2006 4:16 AM
- Subject: Re: [datatype-dev] CR: Rebuffering of Video only
presenation when video stream is running behind
- Lovish,
- Few more things:
- 1.)
- The following include mixes upper/lower case which will break case
sensitive platforms.
- Also, this include should be in .cpp file header as it is not needed
in .h:
- RCS file:
/cvsroot/datatype/common/vidrend/pub/vidrend.h,v
- retrieving revision 1.27.2.9
- diff -u -w -r1.27.2.9 vidrend.h
- --- vidrend.h 24 Oct 2006 05:30:33
-0000 1.27.2.9
- +++ vidrend.h 28 Nov 2006 09:47:09
-0000
 -53,6 +53,7  
-
/****************************************************************************
- * Includes
- */
- +#include "Hxausvc.h"
- #include "vidrendf.h"
- 2.)
- In cayenne branch only, the code to insure m_ulActiveVideoTime is
properly initialized on start and after seek needs to be added.
HEAD has code that handles this already but it cannot be merged to
cayenne as client core behavior needed for this code to function
correctly is missing in cayenne client core.
- The following code should thus be applied to cayenne family of
branches to ensure m_ulActiveVideoTIme is properly initialized on start
and after seek:
- STDMETHODIMP CVideoRenderer::OnTimeSync(ULONG32
ulTime)
- {
- ...
-
if (m_PlayState ==
PlayStarting)
- {
-
m_PlayState = Playing;
- + // If first
frame has not been displayed yet, set active video time to the first
- + // OnTimeSync
supplied time that moves us into the playing state.
- + // This will
allow us to properly measure amount of time passed without
- + // any frame
blts from the start of playback.
- + if
(!m_bFistFrame)
- + {
-
+
m_ulActiveVideoTime = ulTime;
- + }
-
BltIfNeeded();
-
StartSchedulers();
-
if (m_pBltrPump)
-
{
-
m_pBltrPump->Signal();
-
}
- }
- void
CVideoRenderer::SchedulerCallback(BOOL bIsScheduled,
-
BOOL bResched,
-
BOOL bIsVS2Call,
-
&nb
| |