Commit Graph

882 Commits

Author SHA1 Message Date
Michael Stefaniuc 1545645484 dsound/tests: Avoid a crash on a Win2k box. 2012-09-18 10:17:45 +02:00
Michael Stefaniuc 34b7e83357 dsound: Improve the IDirectSoundCaptureBuffer::GetObjectInPath stub. 2012-09-18 10:17:35 +02:00
Michael Stefaniuc bee1573cb7 dsound: Get rid of an unused macro. 2012-09-14 15:41:36 +02:00
Michael Stefaniuc 1440b25267 dsound: Inline some of the IDirectSound helpers. 2012-09-06 15:45:31 +02:00
Michael Stefaniuc ebf33fff47 dsound: Move the capture structs declarations to the .c file. 2012-08-31 09:54:47 +02:00
Jacek Caban 3f353e0025 dsound: Use proper helpers for iface calls. 2012-08-27 19:46:07 +02:00
Michael Stefaniuc 1555aebf1e dsound: Cleanup IKsPrivatePropertySetImpl_Create(). 2012-08-24 10:25:58 +02:00
Francois Gouget e2c50d762c dsound: Make dumpCooperativeLevel() static. 2012-08-21 17:47:47 +02:00
Michael Stefaniuc b522dc66f7 dsound: Move the QI implementation from IDirectSoundFullDuplex to IUnknown. 2012-08-16 11:40:01 +02:00
Michael Stefaniuc 0d33e204d1 dsound: Aggregate IDirectSoundCapture8 instead of wrapping it. 2012-08-16 11:39:54 +02:00
Michael Stefaniuc 850b294efa dsound: Add COM aggregation to DirectSoundCapture for internal use. 2012-08-16 11:39:49 +02:00
Michael Stefaniuc ac3cd73ca2 dsound: Aggregate IDirectSound8 instead of wrapping it. 2012-08-16 11:39:43 +02:00
Michael Stefaniuc 9cb53818e8 dsound: Add COM aggregation to DirectSound for internal use. 2012-08-16 11:39:36 +02:00
Michael Stefaniuc bd4c67396b dsound: Merge IUnknown into the main DirectSoundFullDuplex object. 2012-08-16 11:39:26 +02:00
Michael Stefaniuc 6692f97e01 dsound: Add an object refcount for DirectSoundFullDuplex. 2012-08-16 11:39:14 +02:00
Michael Stefaniuc 023a19d931 dsound: Pass the object instead of ifaces to helpers. 2012-08-16 11:39:08 +02:00
Michael Stefaniuc 8588260eef dsound: COM cleanup for the IDirectSoundFullDuplex iface. 2012-08-16 11:39:01 +02:00
Michael Stefaniuc f6f8123c6b dsound: Cleanup error handling in IDirectSoundFullDuplex::Initialize(). 2012-08-16 11:38:52 +02:00
Michael Stefaniuc 885e205ade dsound: Cleanup the DirectSoundFullDuplex create functions. 2012-08-16 11:38:44 +02:00
Michael Stefaniuc 0aeaa83a22 dsound/tests: Add DirectSoundFullDuplex COM tests. 2012-08-16 11:38:36 +02:00
Michael Stefaniuc 598cc8f44a dsound/tests: Refcount tests for IDirectSoundCapture / IUnknown. 2012-08-16 11:38:23 +02:00
Michael Stefaniuc 9383affe87 dsound: IDirectSoundCapture / IUnknown use separate refcounts. 2012-08-16 11:38:17 +02:00
Michael Stefaniuc b8ffb4930f dsound: Merge the DirectSoundCapture create functions. 2012-08-16 11:38:08 +02:00
Michael Stefaniuc b18bc659d6 dsound: Avoid a TRUE:FALSE conditional expression. 2012-08-14 11:59:26 +02:00
Francois Gouget 4d24132ea4 dsound/tests: Trace the number of tested DirectSound drivers. 2012-08-13 11:52:10 +02:00
Francois Gouget ed7faad1ed dsound/tests: Clarify some skip() traces. 2012-08-13 11:52:00 +02:00
Michael Stefaniuc 4c7e608d5c dsound: Get rid of the DSOUND_QueryInterface() helper. 2012-07-19 16:01:48 +02:00
Michael Stefaniuc 9cc62d321c dsound: Handle IDirectSound by the IDirectSound8 implementation. 2012-07-19 16:01:48 +02:00
Michael Stefaniuc 6fecd3d642 dsound: Merge IDirectSound8 into the main DirectSound object. 2012-07-19 16:01:47 +02:00
Michael Stefaniuc db5344e438 dsound: Drop a redundant 'IDirectSound8' from the method names. 2012-07-19 16:01:47 +02:00
Michael Stefaniuc bf4481d3f0 dsound: Merge the DirectSound create functions. 2012-07-19 16:01:46 +02:00
Michael Stefaniuc 8978a4b51b dsound: Merge IUnknown into the main DirectSound object. 2012-07-19 16:01:45 +02:00
Michael Stefaniuc 478191c059 dsound: Cleanup IDirectSoundImpl_Create() and move it. 2012-07-19 16:01:45 +02:00
Michael Stefaniuc a565c0fadf dsound: Rename the DirectSound object refcount to "numIfaces". 2012-07-19 16:01:44 +02:00
Michael Stefaniuc 4992e6a515 dsound: Merge the two IUnknown/IDirectSound implementations for DirectSound. 2012-07-19 16:01:43 +02:00
Michael Stefaniuc e236a3c2d5 dsound/tests: Add IDirectSound refcount and COM aggregation tests. 2012-07-19 16:01:43 +02:00
Andrew Eikum bf263a347d dsound: Fail if app requests 3D buffer interface on a non-3D buffer. 2012-06-14 18:20:29 +02:00
Andrew Eikum 1cc9ecb558 dsound: Don't use IAudioClock::GetPosition to determine buffer fullness. 2012-05-16 18:30:18 +02:00
Andrew Eikum 98c653bc8b dsound: Resample to float, not device format. 2012-05-15 16:26:31 +02:00
Andrew Eikum 20356f7458 dsound: Compute mix buffer's size more accurately. 2012-05-15 11:18:07 +02:00
Andrew Eikum 5cce1d9da2 dsound: Get rid of redundant primary_mixpos member. 2012-05-15 11:17:53 +02:00
Andrew Eikum e0ccd9e399 dsound: Change mix_buffer to float instead of INT. 2012-05-15 11:17:46 +02:00
Andrew Eikum 8327e6f423 dsound: Ensure primary buffer's buffer is large enough to hold the entire prebuffer. 2012-05-14 19:58:54 +02:00
Andrew Eikum 7dce1418ff dsound: Base fragment size off of the MMDevice's period. 2012-05-14 19:58:41 +02:00
Andrew Eikum 1053bfb48d dsound: Express buffer positions in terms of bytes, not fragments. 2012-05-14 19:58:32 +02:00
Andrew Eikum 2c6087457b dsound: Remove minlen, since we always mix full chunks anyway. 2012-05-14 19:58:24 +02:00
Andrew Eikum f0be44c82d dsound: Don't destroy primary buffer until device is released. 2012-05-09 17:49:33 +02:00
Alexander E. Patrakov 275dfb83f2 dsound: Added a windowed-sinc resampler. 2012-05-08 09:29:47 +02:00
Andrew Eikum 4354be123c dsound: Don't derive the secondary position from the primary position. 2012-05-02 12:00:02 +02:00
Andrew Eikum f393a98a8a dsound: Convert from fixed to floating point. 2012-05-02 11:59:58 +02:00
Alexander E. Patrakov 93a0ca7c6c dsound: Clean up channels. 2012-05-01 19:16:23 +02:00
Alexander E. Patrakov ab4ef6636d dsound: Clean up cp_fields. 2012-05-01 19:16:00 +02:00
Alexander E. Patrakov f88f3d4149 dsound: Replace convert() functions with get() and put(). 2012-05-01 19:15:49 +02:00
Alexander E. Patrakov 0195e01990 dsound: Clean up MixToTemporary(). 2012-05-01 19:15:12 +02:00
Andrew Eikum 3ef92af6a8 dsound: Map MMDevAPI error to DSound error. 2012-04-27 11:59:44 +02:00
Andrew Eikum 1b21fe827f mmddk.h: Remove unused, Wine-specific WinMM defines. 2012-04-03 17:53:37 +02:00
Andrew Eikum 552433cf9e dsound: Validate and correct wValidBitsPerSample in primary buffer SetFormat. 2012-04-02 18:27:14 +02:00
Michael Stefaniuc 0872572a6d dsound/tests: Fix the capture COM tests for older Win2k versions. 2012-02-15 19:17:37 +01:00
Andrew Eikum 9d06d41e37 dsound: Add some more DSCAPS flags. 2012-02-14 17:59:29 +01:00
Austin English c6bda4dc17 dsound: Remove an unnecessary assignment (LLVM/Clang). 2012-01-31 13:47:39 +01:00
Michael Stefaniuc 84d5317302 dsound: Remove the now obsolete IDirectSoundBufferImpl_Destroy(). 2012-01-20 13:34:20 +01:00
Michael Stefaniuc c7f5f10aab dsound: Merge IDirectSoundNotify into the secondary buffer object. 2012-01-20 13:33:33 +01:00
Michael Stefaniuc e0d81e55e2 dsound: Merge IDirectSound3DBuffer into the secondary buffer object. 2012-01-19 21:08:49 +01:00
Michael Stefaniuc a5d2120021 dsound: Get rid of some LPDIRECTSOUND3DBUFFER usage. 2012-01-19 21:08:49 +01:00
Michael Stefaniuc 3ec0b056d5 dsound: Support IKsPropertySet in the primary buffer too. 2012-01-17 11:53:25 +01:00
Michael Stefaniuc 48ca5924b4 dsound: Merge IKsPropertySet into the secondary buffer object. 2012-01-17 11:53:19 +01:00
Michael Stefaniuc fd04e770f1 dsound: Drop "Buffer" from the IKsPropertySet method names. 2012-01-17 11:53:05 +01:00
Andrew Eikum 9cf7f95483 dsound: Lock the source buffer during duplication. 2012-01-17 11:51:25 +01:00
Andrew Eikum 6d391df4aa dsound: Don't launch a separate thread for the mmdevapi enumerator. 2012-01-16 19:32:51 +01:00
Michael Stefaniuc 5959e1d48c dsound: Use AddRef to set the refcounts at object creation. 2012-01-16 12:45:33 +01:00
Michael Stefaniuc 37df4671cb dsound: Merge IDirectSound3DListener into the primary buffer object. 2012-01-16 12:45:33 +01:00
Michael Stefaniuc 044edbb625 dsound: Get rid of some LPDIRECTSOUNDBUFFER usage. 2012-01-16 12:45:33 +01:00
Jörg Höhle 999423d34e dsound: Vista/XP SP2 reworked the Speaker Configuration. 2012-01-13 18:17:31 +01:00
Michael Stefaniuc 66361f1bd5 dsound/tests: Add some COM tests for capture. 2012-01-12 15:52:51 +01:00
Michael Stefaniuc 93bfa2b5be dsound/tests: Sanitize START_TEST() in capture.c. 2012-01-12 15:52:50 +01:00
Michael Stefaniuc 4ac20cbc0f dsound/tests: Remove some returns in the capture buffer tests. 2012-01-12 15:52:50 +01:00
Michael Stefaniuc a3120ce80e dsound: Make capture behave like native in regards to COM aggregation. 2012-01-12 15:52:42 +01:00
Michael Stefaniuc 13a4b03b44 dsound: Merge IDirectSoundNotify into the capture buffer object. 2012-01-12 12:38:41 +01:00
Michael Stefaniuc 3dac0e5a4f dsound: Add an extra refcount for the capture buffer object. 2012-01-12 12:38:34 +01:00
Michael Stefaniuc e8f7ddf774 dsound: Drop "Capture" from the IDirectSoundNotify method names. 2012-01-12 12:38:28 +01:00
Michael Stefaniuc f1d7414971 dsound: COM cleanup for the IDirectSoundCaptureBuffer8 iface. 2012-01-12 12:38:21 +01:00
Jörg Höhle 35cdb8bb22 dsound: Fix the computation of the mixer position in bytes. 2012-01-03 19:27:16 +01:00
Alexander E. Patrakov 663bc47602 dsound: Always resample buffers in mixer thread. 2011-12-29 17:56:48 +01:00
André Hentschel 2b981177d3 dsound: Use if(0) instead of #if 0 to make sure code still compiles. 2011-12-27 16:55:06 +01:00
Francois Gouget c64ce9d0ff dsound: Remove mmErr(). It is not used anymore. 2011-12-06 17:52:54 +01:00
Andrew Eikum 287a6e8473 dsound: Validate format in primary buffer's SetFormat(). 2011-12-05 12:23:37 +01:00
Andrew Eikum c59ecdcefb dsound: Don't specify period size for the IAudioClient.
We don't actually care what period size gets used (in fact, docs say the
parameter is entirely ignored in Shared mode).
2011-11-15 19:37:37 +01:00
Francois Gouget 68dc1468cb dsound: Give a name to the critical sections, make them static and delete them when unloading the dll. 2011-11-15 19:37:35 +01:00
Francois Gouget 0caef81de2 dsound: Unset Spare[0] before deleting non-static critical sections. 2011-11-14 15:25:27 +01:00
Andrew Eikum c8c6cc97bc dsound: Always enumerate the default device first. 2011-10-21 12:11:39 +02:00
Andrew Eikum 9b15c17376 dsound: Don't claim to support hardware buffers. 2011-10-20 11:03:40 +02:00
Andrew Eikum 6a7c2f66e0 dsound: Don't make the capture buffer object address public until it is prepared. 2011-10-18 15:11:40 +02:00
Andrew Eikum c60583ab8b dsound: Fix type conversion problems. 2011-10-18 15:11:32 +02:00
Marcus Meissner 587cd82013 dsound: Remove dead code from mixer (Coverity). 2011-10-17 17:45:05 +02:00
Marcus Meissner 07d72eb570 dsound: Added missing LeaveCriticalSection (Coverity). 2011-10-17 17:45:03 +02:00
Andrew Eikum 9d29d9f766 dsound: Request a more exact buffer size from MMDevAPI. 2011-10-13 19:57:18 +02:00
Andrew Talbot 1f1a97a9b5 dsound: Remove unneeded address-of operator from function name. 2011-10-10 13:30:25 +02:00
Michael Stefaniuc f0a3a09d0e dsound: COM cleanup for the IDirectSoundCapture iface. 2011-10-08 17:38:40 +02:00
Andrew Eikum ecd13dcbef dsound: Fix fragment position calculations. 2011-10-06 12:28:22 -05:00
Andrew Eikum cec8e0d73a dsound: Remove a few unused variables. 2011-10-05 17:31:27 -05:00
Marcus Meissner 1533965e8c dsound: Make a function static, remove a no longer used array. 2011-10-04 15:21:15 -05:00
Marcus Meissner a664424c19 dsound: Mark enum_callback and search_callback static. 2011-10-03 15:51:17 -05:00
Andrew Eikum 6c33e87259 dsound: Eliminate leftover driver structures. 2011-09-28 10:59:31 +02:00
Andrew Eikum 8856ea79f3 dsound: Reimplement PropertySet on mmdevapi. 2011-09-27 16:53:59 +02:00
Andrew Eikum 3735ecac21 dsound: Reimplement capturing devices on mmdevapi. 2011-09-27 16:53:59 +02:00
Andrew Eikum e786998daf dsound: Reimplement rendering devices on mmdevapi. 2011-09-27 16:53:51 +02:00
Andrew Eikum 7fae5f4f9f dsound: Validate buffer pointers in Unlock methods. 2011-09-26 18:38:11 +02:00
Andrew Eikum b1fdaa81b0 dsound: Remove hardware acceleration support. 2011-09-26 18:38:07 +02:00
Michael Stefaniuc e2c0ea01ac dsound/tests: Remove some explicit casts that happen implicitly. 2011-09-23 16:21:51 +02:00
Andrew Eikum e2cc32d252 dsound: Don't dereference a freed object. 2011-09-21 19:25:12 +02:00
Michael Stefaniuc c35745d45a dsound: Handle primary buffers in two more IDirectSoundBuffer methods. 2011-08-31 19:43:06 +02:00
Michael Stefaniuc a2bc634eaa dsound: Handle primary buffers in IDirectSoundBufferImpl_SetFormat. 2011-08-31 19:43:06 +02:00
Michael Stefaniuc 3747fb74a1 dsound: Move the primary buffer description into the buffer object. 2011-08-31 19:43:06 +02:00
Michael Stefaniuc c0565143f9 dsound: Don't delete the primary buffer if a sub iface is still in use. 2011-08-31 19:43:05 +02:00
Michael Stefaniuc ffb51208e9 dsound: Use the same struct for the primary buffer object as for the secondary. 2011-08-31 19:43:05 +02:00
Michael Stefaniuc 7959778d3f dsound/tests: Primary and secondary buffers use the same IDirectSoundBuffer vtbl. 2011-08-29 12:08:21 +02:00
Michael Stefaniuc 6d7c38256f dsound: Fix refcounting for the secondary buffer object.
This fixes a regression introduced in 6b64e0090c.
2011-08-26 11:31:59 +02:00
Michael Stefaniuc 6b64e0090c dsound: Kill SecondaryBufferImpl with extreme prejudice. 2011-08-24 12:14:46 +02:00
Michael Stefaniuc 7da80d1f01 dsound: Basic COM cleanup for the IDirectSoundBuffer8 iface. 2011-08-24 12:14:46 +02:00
Michael Stefaniuc beac9a27e6 dsound/tests: IDirectSoundBuffer and IDirectSoundBuffer8 use the same implementation. 2011-08-24 12:14:46 +02:00
Michael Stefaniuc 4b54090a85 dsound: Remove pointless AddRef followed by a Release. 2011-08-24 12:14:46 +02:00
Frédéric Delanoy 760faf01a9 tests: Assorted spelling fixes. 2011-08-04 18:27:37 +02:00
Frédéric Delanoy b5a33dab88 dlls: Assorted spelling fixes. 2011-08-02 20:47:51 +02:00
Alexandre Julliard b56dc9a6f7 winecrt0: Remove the clsid parameter in __wine_(un)register_resources. 2011-08-02 20:47:49 +02:00
Akihiro Sagawa 2ab3d22663 dsound: Don't copy the position notify on duplicate. 2011-07-22 15:44:16 +02:00
Akihiro Sagawa 3c9bd6ba2a dsound: Don't copy the notify object on duplicate. 2011-07-22 15:44:13 +02:00
Akihiro Sagawa 223406fa17 dsound/tests: Add tests to check notifications after duplicate. 2011-07-22 15:40:46 +02:00
Akihiro Sagawa c1fbf00d2c dsound: Fix a typo. 2011-07-18 16:23:30 +02:00
Andrew Eikum ca4ee7f60f dsound: Request that WinMM perform audio conversion if the hardware doesn't support the requested format. 2011-07-14 14:39:51 +02:00
Andrew Eikum 7d82403f05 dsound: Inform the driver if we are in emulation mode or not. 2011-06-29 10:22:57 -05:00
Austin English 6a3255bbbd dsound: Return success in IDirectSoundBufferImpl_AcquireResources. 2011-05-10 20:32:31 +02:00
Marcus Meissner 0615969f2b dsound: Mark internal symbols as having hidden visibility. 2011-04-26 15:31:27 +02:00
Maarten Lankhorst 4429257358 dsound: COM cleanup property sets. 2011-04-08 16:49:51 +02:00
Philipp Middendorf f5721560f5 dsound: Handle 8 channel audio input. 2011-04-07 10:23:00 +02:00
Andrew Eikum 54ff22b844 dsound: Also handle two-to-six-channel conversions. 2011-03-02 12:50:58 +01:00
Austin English 62b83bf036 dsound/tests: Remove win9x hack. 2011-02-28 13:11:34 +01:00
Maarten Lankhorst af5423ef57 dsound: Forcibly lock buffers to be mixed. 2011-02-14 13:33:32 +01:00
Austin English f6fb95230c dsound/tests: Make sure to use a return value (LLVM/Clang). 2011-02-10 09:57:45 -06:00
Austin English 8c771e3f7e dsound/tests: Make sure to use return values (LLVM/Clang). 2011-02-08 13:42:14 -06:00
Owen Rudge 15d5311804 dsound/tests: Add IEEE float buffer tests for dsound8. 2011-01-20 17:50:17 +01:00
Owen Rudge c3a01501e8 dsound/tests: Add IEEE float buffer tests. 2011-01-20 17:50:11 +01:00
Owen Rudge d6f3ca9589 dsound: Add support for 32-bit IEEE float buffers. 2011-01-20 17:50:04 +01:00
André Hentschel 046bcb7c7e dsound/tests: Don't test function directly when reporting GetLastError(). 2010-12-30 15:00:05 +01:00
Michael Stefaniuc d2e90cddfd dsound: Use an iface instead of a vtbl pointer in IClassFactoryImpl. 2010-12-05 16:44:02 +01:00
Alexandre Julliard 5f49129e03 resources: Define a generic mechanism for adding extra values to the common version block. 2010-12-03 14:53:59 +01:00
Alexandre Julliard b3c307fb91 dsound: Convert dll registration to the IRegistrar mechanism. 2010-12-03 14:28:28 +01:00
Nick Bowler 681d544620 dsound: Restore old format on SetFormat failure. 2010-10-04 15:00:05 +02:00
Alexandre Julliard 19da00a6a3 dsound/tests: Mark some Vmware sound driver failures as broken. 2010-09-30 11:32:59 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Andrew Talbot ab6ad77243 dsound: Constify some variables. 2010-09-13 11:01:52 -05:00