Piotr Caban : qcap: Add Avi Mux IMemInputPin::Receive implementation.

Alexandre Julliard julliard at winehq.org
Tue Feb 25 16:58:15 CST 2014


Module: wine
Branch: master
Commit: f4d7a9ab53cfe101fe3f7d712473a4e393df3204
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f4d7a9ab53cfe101fe3f7d712473a4e393df3204

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Feb 25 12:23:44 2014 +0100

qcap: Add Avi Mux IMemInputPin::Receive implementation.

---

 dlls/qcap/avimux.c |   20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/dlls/qcap/avimux.c b/dlls/qcap/avimux.c
index a186b16..8ec15ba 100644
--- a/dlls/qcap/avimux.c
+++ b/dlls/qcap/avimux.c
@@ -1996,8 +1996,10 @@ static HRESULT WINAPI AviMuxIn_MemInputPin_Receive(
 {
     AviMuxIn *avimuxin = AviMuxIn_from_IMemInputPin(iface);
     AviMux *This = impl_from_in_IPin(&avimuxin->pin.pin.IPin_iface);
-    FIXME("(%p:%s)->(%p)\n", This, debugstr_w(avimuxin->pin.pin.pinInfo.achName), pSample);
-    return E_NOTIMPL;
+
+    TRACE("(%p:%s)->(%p)\n", This, debugstr_w(avimuxin->pin.pin.pinInfo.achName), pSample);
+
+    return avimuxin->pin.pFuncsTable->pfnReceive(&avimuxin->pin, pSample);
 }
 
 static HRESULT WINAPI AviMuxIn_MemInputPin_ReceiveMultiple(IMemInputPin *iface,
@@ -2005,9 +2007,19 @@ static HRESULT WINAPI AviMuxIn_MemInputPin_ReceiveMultiple(IMemInputPin *iface,
 {
     AviMuxIn *avimuxin = AviMuxIn_from_IMemInputPin(iface);
     AviMux *This = impl_from_in_IPin(&avimuxin->pin.pin.IPin_iface);
-    FIXME("(%p:%s)->(%p %d %p)\n", This, debugstr_w(avimuxin->pin.pin.pinInfo.achName),
+    HRESULT hr = S_OK;
+
+    TRACE("(%p:%s)->(%p %d %p)\n", This, debugstr_w(avimuxin->pin.pin.pinInfo.achName),
             pSamples, nSamples, nSamplesProcessed);
-    return E_NOTIMPL;
+
+    for(*nSamplesProcessed=0; *nSamplesProcessed<nSamples; (*nSamplesProcessed)++)
+    {
+        hr = avimuxin->pin.pFuncsTable->pfnReceive(&avimuxin->pin, pSamples[*nSamplesProcessed]);
+        if(hr != S_OK)
+            break;
+    }
+
+    return hr;
 }
 
 static HRESULT WINAPI AviMuxIn_MemInputPin_ReceiveCanBlock(IMemInputPin *iface)




More information about the wine-cvs mailing list