quartz: Only drop Preroll samples after obtaining its time.

This commit is contained in:
Maarten Lankhorst 2008-04-18 22:04:55 -07:00 committed by Alexandre Julliard
parent d7fbc7ef8c
commit 9d9bf6f158
1 changed files with 6 additions and 6 deletions

View File

@ -245,12 +245,6 @@ static HRESULT DSoundRender_Sample(LPVOID iface, IMediaSample * pSample)
* pause completion here, but for sound playing a single frame doesn't make sense
*/
if (IMediaSample_IsPreroll(pSample) == S_OK)
{
TRACE("Preroll!\n");
return S_OK;
}
if (This->state == State_Paused)
return S_FALSE;
@ -272,6 +266,12 @@ static HRESULT DSoundRender_Sample(LPVOID iface, IMediaSample * pSample)
FIXME("Unexpected discontinuity: Last: %lld, tStart: %lld\n", This->rtLastStop, tStart);
This->rtLastStop = tStop;
if (IMediaSample_IsPreroll(pSample) == S_OK)
{
TRACE("Preroll!\n");
return S_OK;
}
cbSrcStream = IMediaSample_GetActualDataLength(pSample);
TRACE("Sample data ptr = %p, size = %ld\n", pbSrcStream, cbSrcStream);