Update of /cvsroot/audacity/lib-src/portaudio-v19/src/hostapi/wdmks
In directory 
23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv29383/lib-src/portaudio-v19/src/hostapi/wdmks

Modified Files:
        pa_win_wdmks.c 
Log Message:
Update portaudio-v19 to current portaudio SVN version, r1414


Index: pa_win_wdmks.c
===================================================================
RCS file: 
/cvsroot/audacity/lib-src/portaudio-v19/src/hostapi/wdmks/pa_win_wdmks.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- pa_win_wdmks.c      31 Dec 2008 15:38:35 -0000      1.8
+++ pa_win_wdmks.c      25 May 2009 21:40:16 -0000      1.9
@@ -77,7 +77,7 @@
 
 #include <windows.h>
 #include <winioctl.h>
-
+#include <process.h>
 
 #ifdef __GNUC__
     #undef PA_LOGE_
@@ -121,24 +121,16 @@
 #endif
 
 #ifdef _MSC_VER
+    #define NOMMIDS
     #define DYNAMIC_GUID(data) {data}
-    #define _INC_MMREG
     #define _NTRTL_ /* Turn off default definition of DEFINE_GUIDEX */
     #undef DEFINE_GUID
     #define DEFINE_GUID(n,data) EXTERN_C const GUID n = {data}
     #define DEFINE_GUID_THUNK(n,data) DEFINE_GUID(n,data)
     #define DEFINE_GUIDEX(n) DEFINE_GUID_THUNK(n, STATIC_##n)
-    #if !defined( DEFINE_WAVEFORMATEX_GUID )
-        #define DEFINE_WAVEFORMATEX_GUID(x) (USHORT)(x), 0x0000, 0x0010, 0x80, 
0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
-    #endif
-    #define  WAVE_FORMAT_ADPCM      0x0002
-    #define  WAVE_FORMAT_IEEE_FLOAT 0x0003
-    #define  WAVE_FORMAT_ALAW       0x0006
-    #define  WAVE_FORMAT_MULAW      0x0007
-    #define  WAVE_FORMAT_MPEG       0x0050
-    #define  WAVE_FORMAT_DRM        0x0009
 #endif
 
+#include <mmreg.h>
 #include <ks.h>
 #include <ksmedia.h>
 #include <tchar.h>
@@ -2924,11 +2916,26 @@
                     
PaUtil_SetInputChannel(&stream->bufferProcessor,i,((unsigned 
char*)(stream->packets[inbuf].Header.Data))+(i*stream->inputSampleSize),stream->deviceInputChannels);
                 }
             }
-            /* Only call the EndBufferProcessing function is the total input 
frames == total output frames */
-            if((stream->bufferProcessor.hostInputFrameCount[0] + 
stream->bufferProcessor.hostInputFrameCount[1]) ==
-                (stream->bufferProcessor.hostOutputFrameCount[0] + 
stream->bufferProcessor.hostOutputFrameCount[1]) )
+            
+            if (stream->recordingPin && stream->playbackPin) /* full duplex */
+            {
+                /* Only call the EndBufferProcessing function when the total 
input frames == total output frames */
+
+                if((stream->bufferProcessor.hostInputFrameCount[0] + 
stream->bufferProcessor.hostInputFrameCount[1]) ==
+                        (stream->bufferProcessor.hostOutputFrameCount[0] + 
stream->bufferProcessor.hostOutputFrameCount[1]) )
+                {
+                    framesProcessed = 
PaUtil_EndBufferProcessing(&stream->bufferProcessor,&cbResult);
+                }
+                else
+                {
+                    framesProcessed = 0;
+                }
+            }
+            else 
+            {
                 framesProcessed = 
PaUtil_EndBufferProcessing(&stream->bufferProcessor,&cbResult);
-            else framesProcessed = 0;
+            }
+
             if( doChannelCopy )
             {
                 /* Copy the first output channel to the other channels */


------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
_______________________________________________
Audacity-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/audacity-cvs

Reply via email to