Maarten Lankhorst
a8f587e8de
dsound: Move duplex definitions to duplex.c.
2009-11-16 14:50:30 +01:00
Maarten Lankhorst
708eaaa6be
dsound: Implement DirectSoundCaptureEnumerateA on top of DirectSoundCaptureEnumerateW.
2009-11-16 14:45:35 +01:00
Maarten Lankhorst
03c16aaba9
dsound: Move DirectSoundCaptureEnumerate to dsound_main.c.
2009-11-16 14:45:28 +01:00
Maarten Lankhorst
9ec5f957cc
dsound: Implement DirectSoundEnumerateA on top of DirectSoundEnumerateW.
2009-11-16 14:44:36 +01:00
Marcus Meissner
61393fa021
dsound: Check for NULL listener (Coverity).
2009-10-19 11:41:47 +02:00
Jörg Höhle
de133ae00e
dsound: Correct deallocations when DuplicateSoundBuffer fails.
2009-10-06 16:13:17 +02:00
Jörg Höhle
dc3471ca0e
dsound: Enforce invariant about BlockAlign and nAvgBytesPerSec.
2009-10-06 16:13:17 +02:00
Jörg Höhle
6aac7cfafa
dsound: Get rid of redundant NULL check.
2009-10-06 11:52:02 +02:00
Gerald Pfeifer
94203b5ddb
dsound/tests: Fix two broken conditions.
2009-06-22 11:44:28 +02:00
Yuriy Kaminskiy
cb93f15e32
dsound: Fix segv on use-after-free in IDirectSoundNotifyImpl_Release.
2009-06-01 16:16:02 +02:00
Gerald Pfeifer
13e14f3b8e
dsound: Clarify statement in DSOUND_capture_callback.
2009-05-25 11:22:03 +02:00
Francois Gouget
d7c5f1a90b
dsound/tests: Replace malloc() with HeapAlloc().
2009-05-13 12:45:36 +02:00
Jesse Allen
eac4791741
dsound: Fix test for some windows versions.
2009-04-22 13:13:31 +02:00
Jesse Allen
b7f6c1e103
dsound: Allow a special cbSize case in CreateSoundBuffer.
2009-04-21 13:16:26 +02:00
Detlef Riekenberg
8819156b49
dsound/tests: Remove duplicate version dump.
...
We have the version already in the header of the winetest results.
2009-03-30 13:56:50 +02:00
Robert Reif
c2d6ce85d0
dsound: Fix uninitialized variable.
...
I missed one case when converting over to static GUIDs in a previous patch.
Pointed out by Andrew Talbot.
2009-03-23 15:26:43 +01:00
Ken Thomases
f85a7b16ca
dsound: Don't use HEAP_ZERO_MEMORY when we're about to overwrite the buffer.
2009-03-03 12:36:21 +01:00
Ken Thomases
b6fcb20433
dsound: Consolidate some duplicate code.
2009-02-24 16:57:27 +01:00
Ken Thomases
ca1d074c50
dsound: Replace a realloc-or-alloc with a free-then-alloc.
...
The buffer is to be overwritten anyway, so there's no need to preserve its
contents. Also, the old code leaked if the realloc were to fail. All in all,
free-then-alloc is simpler.
2009-02-24 16:57:27 +01:00
Michael Stefaniuc
e1d59b94fb
dsound: Arguments 3,4,5 of a CALLBACK are of type DWORD_PTR.
...
(LPWAVEHDR)->dwUser is also a DWORD_PTR.
2009-02-12 11:53:42 +01:00
Andrew Talbot
c744710bd5
dsound: Remove unused function.
2009-02-05 13:13:52 +01:00
Michael Stefaniuc
0ae74c2a9b
dsound: Use UlongToHandle to make the real payload a HWAVEIN/HWAVEOUT.
...
Fixes Win64 compiler warnings.
2009-01-28 12:11:07 +01:00
Michael Stefaniuc
7ab165a590
dsound: Fix mixup between HWAVEOUT and HWAVEIN.
...
The code path is taken when a valid wod isn't found. The loop thus
doesn't call waveInMessage() for each wid but retries the same wrong
wod.
2009-01-28 12:11:04 +01:00
Henri Verbeet
5570a1da8e
dsound: Don't convert single samples at a time.
...
This gives a minor performance improvement.
2009-01-15 12:43:37 +01:00
Henri Verbeet
07f9991062
dsound: Const correctness fixes.
2009-01-12 13:22:14 +01:00
Michael Stefaniuc
c91aa7a96d
dsound: Remove superfluous pointer casts.
2009-01-12 13:06:36 +01:00
Alexandre Julliard
dedf5e49ba
dsound: Avoid a pointer cast in a trace.
2009-01-08 13:12:46 +01:00
Andrew Talbot
62d6a4e9f7
dsound: Declare some variables static.
2009-01-03 15:36:08 +01:00
Jeff Zaroyko
aff1dbe531
dsound: Check for invalid parameter when locking primary and secondary buffers.
2009-01-02 12:48:15 +01:00
Jeff Zaroyko
14db70036d
dsound: Check for invalid parameter when unlocking primary buffers.
2009-01-02 12:48:09 +01:00
Maarten Lankhorst
94c620cf95
dsound: Correct amount of buffers used for playing.
...
Fixes regression caused by ce06de4208
Amount of time per buffer was doubled, but amount of buffers wasn't
halved, so latency was doubled.
2009-01-02 12:39:11 +01:00
Jeff Zaroyko
bea7933d95
dsound: Fix a typo in convert_32_to_24.
2009-01-02 11:54:22 +01:00
Reece Dunn
ce06de4208
dsound: Correct the dsound fraglen calculations.
2008-12-22 14:56:19 +01:00
Hans Leidekker
63aff890d7
janitorial: Remove unneeded user32 imports.
2008-12-17 11:38:36 +01:00
Hans Leidekker
8bd9a3aa09
janitorial: Don't depend on user32 for the self registration functions.
2008-12-17 11:38:32 +01:00
Francois Gouget
34f1e0f048
dsound: Remove unneeded casts of zero.
2008-12-08 12:04:45 +01:00
Francois Gouget
45992843ea
dsound: Remove WINAPI on static functions where not needed.
2008-12-01 12:44:54 +01:00
Maarten Lankhorst
6b6b8d9bfa
dsound: 64-bit pointer fixes.
2008-11-26 14:15:50 +01:00
Francois Gouget
b3bf746ff9
Straighten out some ellipses.
2008-11-26 12:33:34 +01:00
Jeff Zaroyko
29e49bbe8e
dsound/tests: Fix a failing capture test on win2k.
2008-10-23 12:13:41 +02:00
Jeff Zaroyko
b9084bc99f
dsound/tests: Fix failing propset and capture tests on win98.
2008-10-23 12:13:37 +02:00
Alexandre Julliard
80f39e6119
dsound: Avoid use of stdint types.
2008-10-17 13:02:32 +02:00
Maarten Lankhorst
a4a9d50dd9
dsound: Fix volume and panning for primary buffer.
...
Fixes failing dsound tests in wine.
2008-10-06 13:08:46 +02:00
Andrew Talbot
3fae4082ef
dsound: Sign-compare warnings fix.
2008-10-01 09:57:00 -05:00
Paul Vriens
8ccfe80c0b
dsound/tests: Fix failure on Win9x and NT4.
2008-09-22 12:17:04 +02:00
Jeff Zaroyko
724a45d15e
dsound: Fix a failing test on XP.
2008-09-19 12:09:33 +02:00
Rob Shearman
7af7e8ece5
dsound: Add explicit "!= S_OK" to expressions that use HRESULTs as booleans.
2008-09-12 16:50:10 +02:00
Jeff Zaroyko
49d309804d
dsound: Fix a few failing tests and a crash on 2008 (revised).
2008-09-10 11:11:15 +02:00
Paul Vriens
e3a1593652
dsound/tests: Fix typos in tests.
2008-09-05 13:46:43 +02:00
Jeff Zaroyko
e55a702928
dsound: Check for invalid parameter when unlocking secondary buffers.
2008-09-05 12:53:29 +02:00
Maarten Lankhorst
6e90756307
winealsa.drv/dsound: Handle underruns better.
2008-09-04 14:09:00 +02:00
Maarten Lankhorst
dc22442141
dsound: Tune some parameters to make pulseaudio work.
2008-08-22 10:41:16 +02:00
Maarten Lankhorst
179990ac36
dsound: Remove int24_struct from conversion routines.
2008-08-19 13:36:10 +02:00
Ulrich Hecht
335dec27b7
dsound: Fix notification order.
2008-07-25 11:29:04 +02:00
John Klehm
7f8dfe9826
dsound: Accept DSERR_INVALIDCALL for CreateSoundBuffer failure.
2008-07-09 10:43:06 +02:00
Alexandre Julliard
ca681835dc
dsound: Don't depend on the dxerr8 static library in the tests.
2008-07-08 17:51:46 +02:00
Alexandre Julliard
79c64acc7b
tests: Don't depend on the static uuid libraries in the tests.
...
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins
f4cbdc96de
dsound: Fix a failing test for broken drivers.
2008-07-02 12:05:15 +02:00
Roy Shea
4a4d8caed3
dsound/tests: Added additional tests of IDirectSound_CreateSoundBuffer.
2008-06-25 20:23:14 +02:00
Roy Shea
d776828857
dsound/tests: Removed test depending on value of undefined variable.
2008-06-25 20:23:08 +02:00
Dan Kegel
025457e09b
dsound: Don't free buffer if it's owned by alsa.
2008-06-21 11:14:02 +02:00
Zac Brown
e4ff8a0c0a
dsound/tests: Improve test for IDirectSound8_CreateSoundBuffer.
2008-06-11 11:26:48 +02:00
Michael Karcher
84fd6e629a
dsound: Fix double free in dsound capture.
2008-05-30 11:50:00 +02:00
Jörg Höhle
349abe991e
dsound: Fix off by 1 heap error in DSOUND_MixerVol.
2008-05-21 11:36:30 +02:00
Andrew Talbot
7b3ab79710
dsound: Memory allocation sizes fix.
2008-05-12 11:42:28 +02:00
Alexandre Julliard
dad21bbcbf
makefiles: List the static libraries as normal imports instead of extra libs.
2008-04-30 14:23:55 +02:00
Maarten Lankhorst
bf739cbcc3
dsound: Skip WAVE_FORMAT_EXTENSIBLE tests on directx < 8.
2008-04-23 13:05:24 +02:00
Maarten Lankhorst
6c4d9448a9
dsound: Skip the sound checks on the primary module and change its driver module to "".
2008-04-21 13:20:12 +02:00
Andrew Talbot
13e405c149
dsound: Remove unused variable.
2008-04-17 11:41:04 +02:00
Maarten Lankhorst
98933362f3
dsound: Hold lock in GetStatus.
2008-04-07 11:34:28 +02:00
Austin English
b4f52938e4
Spelling fixes.
2008-04-02 23:18:21 +02:00
Andrew Talbot
e8aebfcb4b
dsound: Assign to structs instead of using CopyMemory.
2008-03-31 12:50:30 +02:00
Maarten Lankhorst
021019ff8f
dsound: Add an option to mix sound buffers in the mixer again.
2008-03-17 14:44:46 +01:00
Aric Stewart
6e8c8c28eb
dsound: Set the status from STATE_STARTING to STATE_PLAYING before mixing our next buffer so that we do not potentially skip early event when starting.
2008-03-14 13:01:16 +01:00
Ken Thomases
2de653552c
dsound: Adjust for partial block before prepare-header and add-buffer steps.
...
Otherwise, the wave-in driver(s) may copy incorrect data to internal structures.
2008-03-12 12:01:14 +01:00
Rob Shearman
48000893f9
makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
...
Only specify the root to keep platform-specifics out of the individual
DLL makefiles.
2008-03-04 20:55:01 +01:00
Rob Shearman
fc1b62bd7d
dsound: Don't use typeof as it's not portable.
2008-02-27 14:52:24 +01:00
Andrew Talbot
2cf2807052
dsound: Remove unneeded casts.
2008-01-02 12:38:41 +01:00
Andrew Riedi
68a6ddf623
dsound: DPRINTF -> TRACE.
2007-12-12 13:49:01 +01:00
Alexandre Julliard
c0b12351e0
Avoid size_t types in traces.
2007-12-07 18:49:18 +01:00
Paul Vriens
52ccb14155
dsound/tests: Better check to see if class is not available.
2007-11-13 13:29:17 +01:00
Paul Vriens
65d3682c22
dsound/tests: Fix test failures on WinXP.
2007-11-13 13:29:11 +01:00
Maarten Lankhorst
8de6c8b4a9
dsound: Return primary_done when no mixing needs to be done instead of 0.
2007-11-12 12:56:21 +01:00
Maarten Lankhorst
8c3f9c8c7e
dsound: Reassign pointers back to null when destroying structure.
2007-11-12 12:56:15 +01:00
Paul Vriens
d66722db31
dsound/tests: Fix tests after addition of 24/32 bits buffer tests.
2007-11-12 11:40:25 +01:00
Maarten Lankhorst
3f965d582f
dsound: Make AngleBetweenVectorsRad when vectors have no magnitude.
2007-11-12 11:40:10 +01:00
Maarten Lankhorst
545a774fcc
dsound: Implement AngleBetweenVectorsDeg as a call to AngleBetweenVectorsRad.
2007-11-12 11:40:04 +01:00
Paul Vriens
8454cb17a8
dsound/tests: Fix test failures on WinXP and 2003.
2007-11-09 12:27:20 +01:00
Maarten Lankhorst
4d1129f785
dsound: Use a 2 stage mixing/normalization for sound.
2007-11-09 12:24:06 +01:00
Maarten Lankhorst
a938f69360
dsound: Add mixing and normalization functions.
2007-11-09 12:23:54 +01:00
Maarten Lankhorst
fa3663d6c7
dsound: Add support for 24/32 bits input sound buffers.
2007-11-09 12:20:20 +01:00
Maarten Lankhorst
511af0d186
dsound: Add conformance tests for 24/32 bits buffers and waveformatextensible.
2007-11-07 11:54:34 +01:00
Maarten Lankhorst
2a117a2017
dsound: Add support for WAVEFORMATEXTENSIBLE format.
2007-11-07 11:48:56 +01:00
Francois Gouget
c4b1195c0c
Assorted spelling fixes.
2007-10-23 18:20:27 +02:00
Maarten Lankhorst
80192b93eb
dsound: Only warn for unsupported channels (or bits) when volume adjustment is done.
2007-10-16 13:19:20 +02:00
Maarten Lankhorst
0595ed39f2
dsound: Remove a few null initializations in DirectSoundDevice_Create.
...
The memory is allocated with HEAP_ZERO_MEMORY.
2007-10-15 16:55:19 +02:00
Maarten Lankhorst
3230ea026a
dsound: Make sure device buflen is initially set to ds_hel_buflen.
2007-10-15 14:52:30 +02:00
Maarten Lankhorst
6ad603d219
dsound: Release buffer before reopening when buffer is too small.
2007-10-09 17:52:46 +02:00
Maarten Lankhorst
546447152e
dsound: Fix IDirectSoundBuffer_GetPosition.
2007-10-02 11:43:49 +02:00
Maarten Lankhorst
847d5565fc
dsound: Call waveInUnPrepareHeader and waveInPrepareHeader when submitting new buffer.
2007-10-01 12:42:57 +02:00
Maarten Lankhorst
3bafbb22b8
dsound: Use smaller buffers for wavein capture.
2007-10-01 12:42:42 +02:00
Maarten Lankhorst
6506dff8b8
dsound: Check if hardware buffer is big enough before accepting it.
2007-09-27 11:08:05 +02:00
Maarten Lankhorst
d65ae3ffe9
dsound: Support arbitrarily sized buffers for waveout.
2007-09-11 12:38:04 +02:00
Maarten Lankhorst
0c4ec8a1cc
dsound: Fix overshot calculations.
2007-09-11 12:38:01 +02:00
Maarten Lankhorst
aaa9e41fdf
dsound: Change default bpp and sample frequency to be better for the ears.
2007-09-11 12:33:56 +02:00
Maarten Lankhorst
beaa1cde64
dsound: Runtime link to advapi32.RegDeleteTree.
2007-09-11 11:47:01 +02:00
Maarten Lankhorst
7a04c24e63
dsound: Fix detection of different sample rates in setformat.
2007-09-10 15:29:47 +02:00
Maarten Lankhorst
7144849d0b
dsound: Fix null pointer dereference for waveout in creating buffer.
2007-09-10 15:29:47 +02:00
Maarten Lankhorst
e56a302f7d
dsound: Increase dll refcount and disable thread calls.
2007-08-30 19:48:01 +02:00
Francois Gouget
a116879507
Assorted spelling fixes.
2007-08-30 12:26:02 +02:00
Stefan Leichter
6357676c54
dsound: Remove 'recursive registry key delete' function.
2007-08-29 11:58:13 +02:00
Maarten Lankhorst
5d0b1fabd3
dsound: Update DSOUND_PrimarySetFormat to follow flags and return values more precisely.
2007-08-27 19:28:03 +02:00
Maarten Lankhorst
7519326d03
dsound: Add a function to (re)open sound device to avoid code duplication.
2007-08-27 19:27:47 +02:00
Maarten Lankhorst
7ce277d018
dsound: Handle secondary hardware buffers more correctly.
...
Only try hardware if asked for it, then return an error instead of
falling back to software.
2007-08-27 12:26:25 +02:00
Maarten Lankhorst
3838a770c1
dsound: Make sure waveOutClose is only called when using mmsystem.
2007-08-27 12:25:52 +02:00
Maarten Lankhorst
2ececbeda9
dsound: Transparantly fall back to software mode if hardware mode is unavailable.
2007-08-23 12:37:47 +02:00
Maarten Lankhorst
4ef6e8eaa0
dsound: Move assignment of DSBCAPS_LOC to primary buffer creation time.
2007-08-22 12:18:59 +02:00
Alexandre Julliard
3d30204156
dsound: Fix a compiler warning.
2007-08-21 12:43:15 +02:00
Maarten Lankhorst
9c469e1a94
dsound: Handle failing of IDsDriver_CreateSoundBuffer better.
2007-08-20 22:22:10 +02:00
Maarten Lankhorst
33e1b6ffef
dxguid: Remove dsdriver.h from imports.
2007-08-17 12:01:37 +02:00
Maarten Lankhorst
b42287ca66
dsound: Handle failing of obtaining IDsDriverNotify.
2007-08-16 11:10:54 +02:00
Francois Gouget
ebadbd4bd5
Assorted spelling fixes.
2007-08-09 14:13:07 +02:00
Maarten Lankhorst
cdbd17bdb8
dsound: Make hardware acceleration work again.
2007-08-07 12:42:29 +02:00
Maarten Lankhorst
c3ebd3652a
dsound: Acceleration fixes for wavein emulation.
2007-08-06 13:56:40 +02:00
Maarten Lankhorst
abe8c127d9
dsound: Make timer more robust.
2007-08-06 13:56:34 +02:00
Maarten Lankhorst
3f762d5d0b
dsound: Sound acceleration fixes.
2007-08-06 13:56:20 +02:00
Michael Stefaniuc
efe4573bc8
dsound: Remove redundant NULL check before HeapFree. Found by Smatch.
2007-08-06 12:18:08 +02:00
Maarten Lankhorst
36e9054629
dsound: Move resampling away from mixer thread.
2007-08-02 11:53:31 +02:00
Maarten Lankhorst
575f34e548
dsound: Add SndQueueMin to have less lock contention in mixer.
2007-07-31 22:20:55 +02:00
Maarten Lankhorst
60f4db0345
dsound: Get rid of DS_HEL_FRAGS.
2007-07-31 22:20:21 +02:00
Maarten Lankhorst
7fcce036da
dsound: Add a registry setting for hel buffer length.
2007-07-31 22:19:57 +02:00
Maarten Lankhorst
3b9877fa14
dsound: Constify DSOUND_CheckEvent.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
bfa05bf232
dsound: Remove some more unused variables.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
34893a914b
dsound: Silence the IDirectSoundBuffer_Initialize warnings.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
a335f68bfb
dsound: Fix locking in mixer.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
8aaeb0d4ed
dsound: Small mixer optimizations.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
de9cecaaa8
dsound: Reset state when stopping device.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
237b293829
dsound: Replace buffer critical section with a rw-lock.
2007-07-30 23:37:58 +02:00
Maarten Lankhorst
f3ed32bca0
dsound: Allow mixing the same buffer multiple times if we are looping.
2007-07-27 12:23:53 +02:00
Maarten Lankhorst
0c3cd2a0e4
dsound: Some cosmetic changes.
2007-07-27 12:23:27 +02:00
Maarten Lankhorst
59a5669a97
dsound: Fix CheckEvent in mixer.
2007-07-27 12:22:33 +02:00
Maarten Lankhorst
f94114a88d
dsound: Make sure secondary_remainder and buflen are aligned to primary buffer in mixer.
2007-07-27 12:22:27 +02:00
Maarten Lankhorst
976f56d6c0
dsound: Simplify IDirectSoundBufferImpl_GetCurrentPosition.
2007-07-09 12:15:58 +02:00
Maarten Lankhorst
a6ab4c51cf
dsound: Fix division by zero in DSOUND_Calc3DBuffer.
2007-07-09 12:15:45 +02:00
Maarten Lankhorst
2b8a1815e6
dsound: Remove some more unused variables.
2007-07-09 12:15:40 +02:00
Maarten Lankhorst
f13f48876c
dsound: Clean up some unused variables.
2007-07-06 19:28:59 +02:00
Maarten Lankhorst
c45d4f77c6
dsound: Revert "dsound: Disable property sets if hardware doesn't support it.".
2007-07-06 19:28:53 +02:00
Romain Iehl
684a121aed
dsound: Correct field access.
2007-07-06 18:19:40 +02:00
Romain Iehl
8de6b7da40
dsound: Simplify the calculation of sound attenuation due to distance.
2007-07-06 18:19:34 +02:00
Romain Iehl
3a8ae53de4
dsound: Fix bug preventing correct calculation of the sound parameters
...
of a 3Dbuffer, when an application calls CommitDeferredSettings after
the 3DBuffer has been released.
2007-07-06 18:15:57 +02:00