Commit Graph

800 Commits

Author SHA1 Message Date
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