Mike O'Regan
5fd4aa6fc4
Tests commented out and FIXME-ed long ago now pass.
2005-10-11 19:57:17 +00:00
Robert Reif
57444565e6
Fix PrimaryBufferImpl pointer to deleted DirectSoundImpl.
2005-10-11 19:26:37 +00:00
Robert Reif
0966d61344
DirectSoundDevice reference count cleanup.
2005-10-10 10:29:13 +00:00
Robert Reif
b6dd5de03f
Fix dsound8 test to deal with an installed but unregistered
...
IDirectSound8.
2005-10-10 10:27:50 +00:00
Alexandre Julliard
7e22be4d84
We are no longer generating .dbg.c files.
2005-09-29 10:35:58 +00:00
Robert Reif
594b7f26e4
Fix capture test to not fail when IDirectSoundCapture class is not
...
registered.
2005-09-23 10:05:40 +00:00
Marcus Meissner
bd7ec9aca5
The last argument to MultiByteToWideChar is wide character count and
...
not the buffer size in bytes. Fixed all places where it was wrong.
2005-09-12 22:07:53 +00:00
Alexandre Julliard
261e376495
Fixed a number of pointer to integer conversions that wouldn't work
...
right on a 64-bit platform.
2005-09-12 15:14:06 +00:00
Alexandre Julliard
c6b005ac69
Fixed some more traces to use the right printf format and avoid
...
typecasts.
2005-09-12 14:12:46 +00:00
Alexandre Julliard
f8ee161a1b
Fixed some traces to use the right printf format and avoid typecasts.
2005-09-12 10:30:05 +00:00
Alexandre Julliard
20a1a203c6
Use a more portable scheme for storing the name of a critical
...
section.
2005-09-09 10:19:44 +00:00
Alexandre Julliard
7f67b35a0d
Replace a few more direct lpVtbl accesses by the proper macros.
2005-09-07 13:28:25 +00:00
Mike McCormack
6dc69f5f54
Fix gcc 4.0 warnings.
2005-09-02 12:26:21 +00:00
Mike McCormack
4a5378efcd
Fix some gcc 4.0 warnings.
2005-08-30 08:56:35 +00:00
Vincent Béron
7160af007c
Uniformize DllMain TRACEing across dlls.
2005-08-15 10:48:51 +00:00
Alex Villacís Lasso
5577cc739d
Correction to earlier assertion patch to allow for buf_mixpos ==
...
buflen in non-looping case, fixes looping of one-off mixed samples
introduced by previous patch.
2005-08-03 19:13:58 +00:00
Alex Villacís Lasso
7840becd3f
Prevent dsb->buf_mixpos from ever remaining past dsb->buflen even if
...
not in DSBPLAY_LOOPING case, to prevent assertion failure in
DSOUND_MixInBuffer.
2005-08-02 09:47:32 +00:00
Stefan Huehner
aed3fb612d
Fix some sign-compare warnings by choosing correct datatypes.
2005-07-15 16:34:04 +00:00
Stefan Huehner
06822b8977
Fix some write-strings warnings.
2005-07-15 09:58:36 +00:00
Mike McCormack
0791d06215
Interlocked LONG* gcc warning fixes.
2005-07-12 19:21:36 +00:00
Mike McCormack
257c337c19
gcc 4.0 -Wpointer-sign fixes (Reg* functions).
2005-07-07 12:08:42 +00:00
Stefan Huehner
863a4b1488
Fix some more -Wstrict-prototypes warnings.
2005-06-21 20:53:13 +00:00
Felix Nawothnig
12168fe749
Accept DSERR_NODRIVER from IDirectSoundCapture_CreateCaptureBuffer.
2005-06-21 20:21:39 +00:00
Robert Reif
0043504155
Fix a typo.
2005-06-21 09:43:29 +00:00
Stefan Huehner
ac6f562b52
Fix more -Wstrict-prototypes warnings.
2005-06-20 14:18:03 +00:00
Robert Reif
e5208ca7a3
Fix roundoff error to prevent negative length.
2005-06-20 14:12:03 +00:00
Francois Gouget
9769816b6e
Fix winapi_check documentation warnings.
2005-06-17 20:58:33 +00:00
Alexandre Julliard
2e5cc85dcf
Moved config parameters to HKCU\Software\Wine\DirectSound.
2005-06-14 12:34:00 +00:00
Alexandre Julliard
2e4bca9db5
Added magic comments to all Wine-specific registry accesses to make
...
them easier to grep.
2005-06-13 18:56:00 +00:00
Robert Reif
6b3dc57b5f
Make dsound tests loadable on NT4.
2005-06-12 10:41:49 +00:00
Michael Jung
e483b0cf9b
Fixed confusing indentation.
2005-06-08 18:32:19 +00:00
Robert Reif
7d9340b864
Fix tests to work with drivers that don't support a primary buffer.
2005-06-05 17:55:08 +00:00
Robert Reif
4c315db1a6
Add tests to check DirectSoundCapture creation.
...
Fix dsound/capture.c to pass tests.
2005-06-05 17:44:30 +00:00
Robert Reif
5c8fb16893
Finish DirectSoundCapture/DirectSoundCapture8 split.
...
Add tests to verify split.
2005-06-04 09:38:14 +00:00
Robert Reif
f46e5ce13c
Move FullDuplex code from capture.c to duplex.c.
2005-06-02 10:28:34 +00:00
Robert Reif
48da1d52ad
Fix property set description for more than one capture device bug.
...
Add better traces messages.
2005-06-01 20:04:06 +00:00
Dmitry Timoshkov
b67da5b946
Make more of the OLE interface vtables const.
2005-06-01 19:57:42 +00:00
Robert Reif
a2f1fd3aca
Add multiple DIRECTSOUND object support (multiple sound cards can play
...
at the same time).
Fix CoCreateInstance when no sound card is present.
Fix create bug found by Mike Hearn.
2005-05-31 09:31:37 +00:00
Robert Shearman
54160222a0
Rename MODULENAME_Dll* functions to Dll* for better consistency and
...
type checking.
2005-05-17 14:41:37 +00:00
Alexandre Julliard
34fa35dc99
Added rules for building import libraries in the individual dll
...
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Robert Reif
70fe39e42c
Remove dead code and redundant variables from DSOUND_CalcPlayPosition
...
and callers.
2005-05-09 09:23:54 +00:00
Alexandre Julliard
d62356aa1e
Added rules to build import libraries in the individual dll makefiles.
...
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Robert Reif
6ec5b351bb
Move initialization to IDirectSound_Initialize.
...
Fix error paths to handle a failed IDirectSound_Initialize.
Add tests for IDirectSound_Initialize.
2005-05-06 19:33:32 +00:00
Francois Gouget
f5c9da6860
Assorted spelling fixes.
2005-05-06 15:44:31 +00:00
Robert Reif
ed2a6e4aae
Set driver type properly.
2005-05-04 09:46:41 +00:00
Robert Reif
bc3ad87998
Fully implement WAVEDEVICEMAPPING property set.
2005-04-13 14:39:49 +00:00
Robert Reif
ff77f1343e
Initialize primary buffer on open.
2005-04-11 13:00:00 +00:00
James Hawkins
fd6d3567de
Remove nonstandard type LPLPVOID.
2005-04-11 12:52:00 +00:00
Robert Reif
2a438aa033
Keep dsound8.c and dsound.c in sync.
2005-03-30 10:21:44 +00:00
Peter Berg Larsen
e732fc023d
Janitorial: Get rid of strncpy/strncpyW.
2005-03-28 14:17:51 +00:00
Jakob Eriksson
e4fea46b94
Test fix.
2005-03-22 21:16:04 +00:00
Robert Reif
1e17a784c6
Fix block align error message to show length before fix up.
2005-03-19 17:09:33 +00:00
Robert Reif
c90c9c7473
waveInPrepareHeader and waveInUnprepareHeader are not really needed
...
because the contents don't change.
2005-03-16 11:30:17 +00:00
Robert Reif
9329e8f831
Unconditionally free memory. Should make smatch happy.
2005-03-15 19:31:55 +00:00
Robert Reif
7f6536c504
Change some global variable names.
...
Cleanup usage of global dsound variable to not use local variable of
same name.
Almost ready to add support for more than one sound card at the same
time.
2005-03-15 15:40:35 +00:00
Robert Reif
1a843b93b6
Private property sets do not exist in early versions of Direct Sound
...
so skip tests if not supported.
Add tests for A, W and 1 variations of data.
2005-03-14 10:04:07 +00:00
Robert Reif
ea7fa3c7db
Add missing functionality.
...
Add more and better error messages.
Add checks for failed HeapAlloc.
2005-03-14 10:03:54 +00:00
Robert Reif
aa35787dc7
Don't consider no sound device a failure.
2005-03-05 11:15:27 +00:00
Robert Reif
c3f06fb2e6
Print dsound.dll version from file versioninfo resource.
2005-03-05 10:49:08 +00:00
Robert Reif
3b78212f1d
Add secondary buffer SetFrequency test.
2005-02-25 19:17:11 +00:00
Robert Reif
2a052044fe
Use nBlockAlign rather than calculating it.
...
Add a buffer length alignment error message.
2005-02-25 19:16:57 +00:00
Robert Reif
f1d4443435
Change SetCooperativeLevel FIXME to WARN.
2005-02-25 16:50:57 +00:00
Robert Reif
c9e7bad85b
Try old buffer description structure on failure with new one.
2005-02-24 17:02:42 +00:00
Robert Reif
3cab60997f
Fix tests for win9x and old versions of DirectX.
2005-02-23 12:43:38 +00:00
Robert Reif
99faf74774
Fix capture test to pass on windows 98 when no sound card present or
...
device already in use.
2005-02-18 12:52:14 +00:00
Robert Reif
2b30370796
Fix block align test.
2005-02-18 12:51:43 +00:00
Robert Reif
c50038542a
Some block align cleanups.
2005-02-16 16:26:13 +00:00
Robert Reif
b8d6b310f9
Fixed invalid buffer size by rounding up to next multiple of
...
nBlockAlign.
Added test to verify buffer rounding behavior.
2005-02-16 16:09:02 +00:00
Robert Reif
f8833daef1
Removed printing of thread id for AddRef and Release because
...
WINEDEBUG=+tid gives the same result.
General consistency cleanup.
2005-02-11 11:49:05 +00:00
Francois Gouget
9ee0586cfb
Don't link with DirectSoundCreate8 as this prevents running with older
...
versions of DirectX.
2005-02-10 21:21:13 +00:00
Robert Reif
50dc513b0f
Print info about primary buffer format.
2005-02-10 20:26:20 +00:00
Robert Reif
0e0544aa72
Signed/unsigned fix and code cleanup.
2005-02-10 17:10:54 +00:00
Robert Reif
249bc5caea
Always allocate an empty buffer.
2005-02-10 17:09:20 +00:00
Robert Reif
098817950d
Fill new software buffers with silence.
2005-02-09 14:05:00 +00:00
Robert Reif
e70f3e85d8
Fix primary buffer memory leak.
2005-02-01 18:47:23 +00:00
Robert Reif
7d92b5d8b4
Fix structure member name to match windows headers and fix up all
...
uses.
Nameless struct fix for dsound/propset.c to compile on both windows
and wine.
2005-01-28 17:21:07 +00:00
Robert Reif
47f55d6a28
Don't allow other threads to access the primary buffer while the
...
format is being changed.
2005-01-24 13:35:57 +00:00
Robert Reif
364c0d53f9
Remove unused includes.
2005-01-24 13:31:27 +00:00
Robert Reif
ef847a0303
Use Windows memory functions.
2005-01-24 12:40:45 +00:00
Robert Reif
b0d74e6bf3
Fixed memory leak in mixer code.
2005-01-24 11:27:05 +00:00
James Hawkins
6847d5956a
Return CLASS_E_NOAGGREGATION if pUnkOuter is non-null.
2005-01-14 15:12:43 +00:00
Robert Reif
202c28f8b8
Remove unneeded includes.
2005-01-10 12:25:56 +00:00
Robert Reif
409e7fb172
Don't need to worry about windows messages.
2005-01-09 17:27:44 +00:00
Eric Pouech
cf1d00bb08
Removed excessive statement (break after return or goto, not useful
...
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Robert Reif
56dbf7fb21
Initialize and uninitialize COM properly.
2005-01-09 16:34:00 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Eric Pouech
4056d7ef8c
Fixed some errors in function prototypes.
2004-12-13 21:19:01 +00:00
Alexandre Julliard
ebe3c529b1
Janitorial: C booleans must not be compared against TRUE.
2004-12-09 14:07:59 +00:00
Tomas Vanek
342451b2dd
Fixed no memory condition test in IDirectSoundImpl_Create.
2004-12-07 14:23:46 +00:00
Robert Reif
d7292751e0
Return the actual device interface name.
...
Fixes some memory leaks.
2004-12-06 20:37:00 +00:00
Robert Reif
373ab78519
Always create a property set for secondary buffers.
2004-12-06 11:42:58 +00:00
Tom Wickline
5c38e1b561
Version resources cleanup.
2004-11-23 13:59:34 +00:00
Robert Reif
aab3aa05b6
Remove trailing white space introduced in previous patch.
...
Fixed IDirectSoundCaptureBuffer_Stop to allow another Start to
succeed.
Removed OSS centric buffer recreation hack when doing hardware
acceleration.
Cleaned up error reporting and tracing.
2004-11-19 17:56:56 +00:00
Robert Reif
b46a106ab1
Remove redundant GUID check.
2004-11-09 20:10:46 +00:00
Robert Reif
50e67ce558
VerifyCertification is not always implemented.
2004-10-26 21:17:37 +00:00
Robert Reif
0a16d361e2
Don't consider a device in use a failure.
2004-10-25 21:45:51 +00:00
Robert Reif
b50347d452
Don't consider a bad format an error unless the capabilities say it
...
should be supported.
Don't consider a device already in use an error.
2004-10-22 19:51:54 +00:00
Robert Reif
d4c9f92c65
Trailing white space cleanup.
...
Add IClassFactory->CreateInstance aggregation checks.
IID_IDirectSoundCapture and IID_IDirectSoundCapture8 are same so
remove redundant check.
Allocate capture buffer for hw driver if necessary.
2004-10-21 20:57:26 +00:00
Robert Reif
b80d1d5d92
Don't consider a device that is already in use a test failure.
2004-10-21 19:51:10 +00:00
Robert Reif
3dcbaaa4cc
Don't consider failure with DSERR_NODRIVER a test failure.
2004-10-19 21:10:41 +00:00
Robert Reif
097e281294
Fix some places where no driver present causes problems.
2004-10-18 19:36:42 +00:00
Francois Gouget
486d020c1b
Don't define COBJMACROS in objbase.h.
...
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Robert Reif
8a8ee786ee
Cleanup reference counting.
...
AddRef and Release return ULONG.
2004-09-17 18:10:59 +00:00
Robert Reif
b970aeb4b7
Cleanup reference counting.
2004-09-16 19:08:04 +00:00
Robert Reif
adc6948c4c
Remove lock name from lock debug structure before deletion so it gets
...
freed properly.
2004-09-10 22:30:05 +00:00
Robert Reif
6f9d41673f
Return error from low level driver when necessary.
2004-09-10 19:34:01 +00:00
Alexandre Julliard
314b99c48f
Removed some more uses of the non-standard ICOM_THIS macro.
2004-09-09 20:17:07 +00:00
Francois Gouget
7c89759e88
Make the dsound tests run with DirectX < 8.
2004-09-08 19:08:14 +00:00
Francois Gouget
e3fb36140a
Remove the get_hwnd() implementation from propset.c and reuse the
...
common one.
2004-09-08 19:07:57 +00:00
Hans Leidekker
fe442b21f7
Fix signed/unsigned comparison warnings.
2004-09-08 01:23:57 +00:00
Robert Reif
1d785b85c2
Consolidate secondary buffer list processing and locking.
...
Two new functions DSOUND_AddBuffer and DSOUND_RemoveBuffer
have been added and the locking has been moved into these functions.
Renamed IDirectSound lock to buffer_list_lock.
Removed redundant test for IID_IDirectSoundNotify and
IID_IDirectSoundNotify8 because they are the same.
Removed check for invalid buffers on list because that shouldn't
happen anymore because of fixed 3d buffer reference counting.
Minor code cleanups.
2004-09-07 19:32:21 +00:00
Francois Gouget
f3880a29ea
Don't use DSBCAPS_{CTRLDEFAULT,CTRLALL} in capability-dumping
...
functions since they are nothing but a combination of other flags and
are thus redundant.
2004-08-31 18:50:59 +00:00
Robert Reif
f01b871898
DirectSound8 doesn't accept 3D stereo secondary buffers but
...
DirectSound does.
Added tests.
2004-08-25 02:09:00 +00:00
Alexandre Julliard
f714b39762
Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
...
macro.
2004-08-23 19:39:48 +00:00
Robert Reif
1bd7986c93
Only print format info when in interactive mode for capture test.
...
Cleanup error and info messges.
2004-08-23 17:50:31 +00:00
Robert Reif
7bf4eee7ad
Remove wine specific DRV_QUERYDSOUNDGUID message and calculate it in
...
dsound.dll (like in 2k/xp).
2004-08-20 20:01:31 +00:00
Robert Reif
b6abcb51a8
Cleanup messages.
2004-08-18 20:53:40 +00:00
Robert Reif
dfe3c1c579
Allocate wave format structure dynamically based on format.
...
Remove format checks to allow driver to decide if format supported.
Code cleanups.
2004-08-18 00:30:37 +00:00
Robert Reif
cae33167d2
Cleanup some more messages.
2004-08-18 00:30:12 +00:00
Robert Reif
1d3c40d577
Delete buffer array when releasing last buffer.
2004-08-16 19:59:54 +00:00
Robert Reif
eba298017d
Allow proper release while capturing.
2004-08-16 19:59:37 +00:00
Robert Reif
9d5b0873a0
More dsound tests error message cleanups.
...
Only display verbose information when in interactive mode.
2004-08-13 19:44:29 +00:00
Alexandre Julliard
48c4bb3c31
Get rid of the non-standard ICOM_VTABLE macro.
2004-08-12 23:00:51 +00:00
Robert Reif
101599e902
Speed up mixing and unmixing by moving sample size and buffer wrap
...
tests to outside the loop. The code is not as compact or pretty but
it should be faster.
2004-08-12 20:01:32 +00:00
Alexandre Julliard
0467ce9fd7
Get rid of the non-standard ICOM_VFIELD macro.
2004-08-12 19:52:49 +00:00
Robert Reif
74662974f6
Start cleaning up error messages.
...
Don't print verbose info unless in interactive mode or debugging.
2004-08-12 03:29:39 +00:00
Robert Reif
704e16c32d
Fixed a bug where freqAdjust was not being updated properly when the
...
primary buffer format changed.
2004-08-11 00:18:13 +00:00
Francois Gouget
4d73f22245
Remove the assert()s that checked that IDirectSoundBuffer_Lock() is
...
given two distinct pointers.
2004-08-09 22:56:45 +00:00
Hans Leidekker
dbb3e14748
Fix signed/unsigned comparison warnings.
2004-08-09 18:52:18 +00:00
Robert Reif
fbce110be4
Test different primary buffer formats while keeping the secondary
...
buffer format constant.
2004-08-09 18:50:06 +00:00
Robert Reif
7ef15a607c
Adds debug name to remaining critical sections.
2004-08-06 17:30:00 +00:00
Robert Reif
7bf7bce0da
Add CRITICAL_SECTION debug info.
2004-08-04 18:14:21 +00:00
Gerald Pfeifer
0ba37e23d9
Avoid using round(), which is unportable.
2004-08-02 18:47:09 +00:00
Francois Gouget
1426632839
Check the return value of IDirectSoundImpl_Create() to detect errors.
...
Always set *ppDS to NULL in case of error.
2004-08-02 18:27:16 +00:00
Robert Reif
4c3d661781
Refactored common test code into subroutines.
...
Added tests for correct Compact behavior.
Added tests for all possible IDirectSound[8] creation modes with good
and bad arguments.
Split dsound.c and ds3d.c into separate files for IDirectSound and
IDirectSound8 interfaces and added code to not execute IDirectSound8
tests when run with a dsound.dll of version 7 or earlier. We should
now be able to run these tests on a Windows system with DX7 or earlier
(untested).
2004-07-30 18:42:51 +00:00
Robert Reif
b6ab40e977
Added error checking to IDirectSound_Compact.
...
Fixed IDirectSoundImpl_Create to return DSERR_NODRIVER for a bad
device IID.
2004-07-30 18:42:23 +00:00
Francois Gouget
9f40a12ed6
Small cleanup in IDirectSoundBufferImpl_SetPan().
2004-07-23 22:58:59 +00:00
Francois Gouget
7433202199
Check that modifying the secondary buffer volume/pan does not change
...
the primary buffer's volume and pan.
2004-07-23 22:58:46 +00:00
Francois Gouget
18aeb90165
Fix the volume and balance of primary buffers so it is the system's
...
volume and balance, like on Windows.
2004-07-23 19:06:31 +00:00
Robert Reif
73bd3be8c8
Downgrade tests to DX8 level so it can build on all windows
...
platforms.
2004-07-22 20:35:36 +00:00
Robert Reif
0e3629c3d4
Dump DirectSound capabilities flags.
2004-07-22 19:42:11 +00:00
Robert Reif
aa60b5ec0d
Removes dsconf IIDs from dxguid.lib.
...
Fixes propset files for missing IIDs.
2004-07-22 19:40:44 +00:00
Robert Reif
02a8ab2fee
Save enumerated GUIDs in a global array so they persist after
...
enumeration.
White space cleanup.
Add tests for opening default devices.
2004-07-21 03:23:13 +00:00
Francois Gouget
cc3a95c6e9
Make the listener/sound position update duration and TIME_SLICE
...
independent.
Set the sound and listener velocity and increase the sound source
velocity so we may get some doppler effect.
Added some traces so one can monitor the listener/sound positions with
WINETEST_DEBUG=3.
2004-07-19 21:20:38 +00:00
Robert Reif
3ce9c5f4b8
Do initialization to match windows behavior (with test).
2004-07-19 20:06:22 +00:00
Robert Reif
429d3059b1
Fixes the right bugs and keeps intent of test.
...
Adds more reference count checks.
2004-07-19 19:34:44 +00:00
Francois Gouget
b5ee682cae
Don't try to create a IDirectSound3DBuffer, partly to keep this test
...
simple and partly because it's going to fail since we did not request
DSBCAPS_CTRL3D. Fixes a crash on Windows.
Don't request unneeded caps.
2004-07-17 00:04:17 +00:00
Francois Gouget
57aa9ebc38
Get and print the DirectSound primary buffer volume.
2004-07-16 23:42:44 +00:00
Francois Gouget
910b695822
Keep track of how much has been played and get rid of last_pos. This
...
fixes a bug where buffer_service() would not detect that everything
had been played.
Check that the actual sound duration was within 10% of the expected
value.
Make BUFFER_LEN and TIME_SLICE independent, make sure TIME_SLICE does
not divide BUFFER_LEN to spice things up a bit.
2004-07-16 23:42:32 +00:00
Francois Gouget
4c64f9bdf9
Call IDirectSound::Initialize() as per MSDN before using the
...
DirectSound object. Fixes a crash on Windows.
2004-07-16 23:21:46 +00:00