Commit fb2c975a authored by Maarten Lankhorst's avatar Maarten Lankhorst Committed by Alexandre Julliard

quartz: No longer drop packets on discontinuities.

parent 0458c08b
...@@ -118,11 +118,14 @@ static HRESULT ACMWrapper_ProcessSampleData(TransformFilterImpl* pTransformFilte ...@@ -118,11 +118,14 @@ static HRESULT ACMWrapper_ProcessSampleData(TransformFilterImpl* pTransformFilte
unprepare_header = TRUE; unprepare_header = TRUE;
if (IMediaSample_IsDiscontinuity(pSample) == S_OK) if (IMediaSample_IsDiscontinuity(pSample) == S_OK)
{
res = acmStreamConvert(This->has, &ash, ACM_STREAMCONVERTF_START); res = acmStreamConvert(This->has, &ash, ACM_STREAMCONVERTF_START);
/* One sample could be converted to multiple packets */
IMediaSample_SetDiscontinuity(pSample, FALSE);
}
else else
res = acmStreamConvert(This->has, &ash, 0); res = acmStreamConvert(This->has, &ash, 0);
if (res) if (res)
{ {
if(res != MMSYSERR_MOREDATA) if(res != MMSYSERR_MOREDATA)
...@@ -162,10 +165,7 @@ static HRESULT ACMWrapper_ProcessSampleData(TransformFilterImpl* pTransformFilte ...@@ -162,10 +165,7 @@ static HRESULT ACMWrapper_ProcessSampleData(TransformFilterImpl* pTransformFilte
} }
TRACE("Sample stop time: %u.%03u\n", (DWORD)(tStart/10000000), (DWORD)((tStart/10000)%1000)); TRACE("Sample stop time: %u.%03u\n", (DWORD)(tStart/10000000), (DWORD)((tStart/10000)%1000));
if (IMediaSample_IsDiscontinuity(pSample) == S_FALSE)
hr = OutputPin_SendSample((OutputPin*)This->tf.ppPins[1], pOutSample); hr = OutputPin_SendSample((OutputPin*)This->tf.ppPins[1], pOutSample);
else
TRACE("Skipping first sample: Discontinuity\n");
if (hr != S_OK && hr != VFW_E_NOT_CONNECTED) { if (hr != S_OK && hr != VFW_E_NOT_CONNECTED) {
if (FAILED(hr)) if (FAILED(hr))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment