#include <dsconf.h>
#include <vfwmsgs.h>
#include <setupapi.h>
-#define YDEBUG
+#define NDEBUG
#include <debug.h>
#include <ks.h>
#include <ksmedia.h>
BOOL bCapture,
ULONG Offset);
+/* directsound.c */
+
+HRESULT
+CALLBACK
+NewDirectSound(
+ IUnknown* pUnkOuter,
+ REFIID riid,
+ LPVOID* ppvObject);
+
/* misc.c */
+VOID
+PerformChannelConversion(
+ PUCHAR Buffer,
+ ULONG BufferLength,
+ PULONG BytesRead,
+ ULONG OldChannels,
+ ULONG NewChannels,
+ ULONG BitsPerSample,
+ PUCHAR Result,
+ ULONG ResultLength,
+ PULONG BytesWritten);
+
+BOOL
+SetPinFormat(
+ IN HANDLE hPin,
+ IN LPWAVEFORMATEX WaveFormatEx);
+
+BOOL
+CreateCompatiblePin(
+ IN HANDLE hFilter,
+ IN DWORD PinId,
+ IN BOOL bLoop,
+ IN LPWAVEFORMATEX WaveFormatEx,
+ OUT LPWAVEFORMATEX WaveFormatOut,
+ OUT PHANDLE hPin);
+
+
DWORD
SyncOverlappedDeviceIoControl(
IN HANDLE Handle,
REFIID riid,
LPVOID* ppvObject);
+/* capture.c */
+
+HRESULT
+CALLBACK
+NewDirectSoundCapture(
+ IUnknown* pUnkOuter,
+ REFIID riid,
+ LPVOID* ppvObject);
+
+
/* capturebuffer.c */
HRESULT
NewDirectSoundCaptureBuffer(
LPFILTERINFO Filter,
LPCDSCBUFFERDESC lpcDSBufferDesc);
+/* notify.c */
+VOID
+DoNotifyPositionEvents(
+ LPDIRECTSOUNDNOTIFY iface,
+ DWORD OldPosition,
+ DWORD NewPosition);
+
+HRESULT
+NewDirectSoundNotify(
+ LPDIRECTSOUNDNOTIFY * Notify,
+ BOOL bLoop,
+ BOOL bMix,
+ HANDLE hPin,
+ DWORD BufferSize);
+
#endif