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
Francois Gouget
acb7207a9d
On Windows GetPan() may not return the value that was just set with
...
SetPan().
2004-07-16 23:21:33 +00:00
Robert Reif
605cc1b029
Remove DirectSound reference counts by buffers and add Destroy
...
functions to buffer components and DirectSound to allow proper
destruction even with outstanding references.
Remove trailing white space.
Add tests for proper release even with active buffers.
2004-07-13 23:35:09 +00:00
Robert Reif
ed9d91e6a1
- Create IDirectSound and IDirectSound8 objects using the
...
CoCreateInstance COM function to test the Class Factory interfaces.
- Create IDirectSound and IDirectSound8 objects using CreateDirectSound
and CreateDirectSound8 using a NULL device GUID.
2004-07-12 19:45:28 +00:00
Robert Reif
f66807f248
Better error checking and recovery.
2004-07-09 19:25:39 +00:00
Francois Gouget
ca942f1625
Assorted spelling fixes.
2004-07-08 20:16:23 +00:00
Robert Reif
84e292c614
Fix IDirectSoundBuffer8_Initialize function prototype and use.
2004-07-06 19:27:00 +00:00
Robert Reif
5d8997d881
Create DirectSound or DirectSound8 depending on riid.
2004-07-06 19:25:59 +00:00
Robert Reif
33e4506cda
Get certification for VerifyCertification from driver to match
...
GetCaps.
Change OSS driver to report certified.
Change OSS driver to show message name rather than number in traces.
2004-07-06 18:43:57 +00:00
Robert Reif
31f817b6f9
Separated DirectSoundCreate8 into two functions and added a
...
IDirectSound implementation.
Added proper COM behavior for QueryInterface for IDirectSound and
IDirectSound8.
Fixed a bug in the dsound.h header file for IDirectSound8
CreateSoundBuffer and DuplicateSoundBuffer.
Added new tests for proper COM behavior and enables some commented out
code for tests that work on windows. Added new tests for
IDirectSound8.
2004-07-04 00:13:44 +00:00
Francois Gouget
de9af2414b
Split the 'dsound' test into two parts:
...
- the sound format test. Plays a 5 second reference tone to help
debug issues with the tone duration and help detect stutter issues.
Prints explanations describing the sound format interactive
test. Then plays a 1 second test tone for each supported sound
format.
- the 3D sound tests. Performs the volume, panning, moving listener
tests, etc.
2004-06-17 23:03:11 +00:00
Eric Pouech
df93f2eeee
GetModuleFileName[AW] doesn't terminate the string if the buffer is
...
too small.
2004-05-19 03:22:55 +00:00
Patrik Stridvall
070db4e5de
Fixed some issues found by winapi_check.
2004-05-17 21:08:31 +00:00
Ivan Leo Murray-Smith
10778aa761
Updated the version info of all DirectX dlls to the version numbers of
...
DirectX 9.0b for Windows 2000/XP.
2004-05-14 21:37:32 +00:00
Robert Reif
dbb03ec6dc
Fixes support for older versions of direct sound.
...
Adds support for deleting notification array.
Minor debug and white space cleanups.
2004-04-19 02:58:45 +00:00
Robert Reif
92b48ba8f6
Fixed deadlock in capture callback.
...
Fixed capture test to check all notifications.
Added better debug messages to capture test.
2004-04-06 20:08:54 +00:00
Alexandre Julliard
9e4ed6460c
.spec.c files are no longer used for 32-bit dlls.
2004-03-24 03:36:44 +00:00
Robert Reif
14a7c6ddca
Remove unused lock.
2004-03-17 01:44:15 +00:00
Alexandre Julliard
589e115233
We no longer use the .exe.spec.c files.
2004-03-02 21:16:37 +00:00
Robert Reif
41b89ddd53
Properly release hardware primary buffer when changing formats.
2004-02-13 20:22:02 +00:00
Robert Reif
9fde8228e1
Fallback to software buffer if failed to create hardware buffer.
...
Minor code cleanups.
2004-02-06 05:25:56 +00:00
Robert Reif
7ecf3d03c2
Fallback to software buffer if duplicating hardware buffer fails.
2004-02-06 05:21:37 +00:00
Robert Reif
2ea305b02c
Actual buffer format may be different from requested format so use
...
returned one for calculation.
2004-02-06 05:20:28 +00:00
Alexandre Julliard
20b4585e3c
Only link against libdxguid where necessary.
2004-01-27 00:11:16 +00:00
Francois Gouget
998cc56773
Add trailing '\n's to ok() calls.
2004-01-20 21:49:35 +00:00
Robert Reif
370a18f786
Reduce the use of the dsound global variable by passing address to
...
functions.
2004-01-12 21:02:22 +00:00
Robert Reif
7dd637467a
Added some missing defines and a struct.
...
Fixed some const * arguments.
2004-01-09 22:06:54 +00:00
Robert Reif
58fe9f1fc0
Initialize buffer reference count.
2003-11-17 20:03:42 +00:00
Robert Reif
3f1498fc6c
Fixes more use before set races.
...
Work around for queue reordering feature.
Stop recording on reset.
Better debug info.
Dsound callback capture state fix.
2003-11-14 21:03:24 +00:00
Oleg Prokhorov
de12a97041
Another portion of HeapReAlloc fixes.
2003-10-14 05:24:20 +00:00
Dimitrie O. Paun
fbdfd910c1
Remove SYMBOLFILE and LDDLLFLAGS from Makefiles.
2003-10-11 01:09:15 +00:00
Robert Reif
93d3492f7f
Make capture more reliable by submitting all buffers before start.
...
Added support for non pcm formats.
Added more property set support.
2003-10-08 22:35:26 +00:00
Robert Reif
e29357c2d3
Fixed some traces.
...
Fixed spec file to match Microsoft dll.
2003-10-01 03:05:25 +00:00
Robert Reif
3237c5a875
Remove capture tests from dsound.c and place them in a new file
...
capture.c.
2003-09-27 02:21:12 +00:00
Robert Reif
99b0e8fa66
Added volume and pan support to primary buffers.
...
Added more property set support.
2003-09-19 00:10:51 +00:00
Robert Reif
f4866fed8b
Added better tests for volume and pan.
...
Added capture notification test.
Fixed capture query notification test bug.
2003-09-15 20:08:26 +00:00
Robert Reif
725d8c39aa
Device enumeration callbacks should return a NULL guid for default
...
devices.
Fixed some volume and pan cases.
Added missing property set.
Fixed capture notification bug.
2003-09-15 20:08:05 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Robert Reif
7d43d7bb3b
Use the drivers to get device capabilities and property sets.
2003-09-03 19:28:20 +00:00
Robert Reif
e9ebbfc0ff
Now that reference counting is correct, there is no need to check if
...
the base object goes away.
2003-09-02 00:56:14 +00:00
Robert Reif
28651e8187
Added more tests and restructured tests for easier debugging.
2003-09-01 23:59:03 +00:00
Robert Reif
5ec32cecf2
Added SecondaryBuffer and DirectSoundCaptureNotify COM objects to get
...
reference counting right.
2003-09-01 23:58:43 +00:00
Dimitrie O. Paun
4ff79add63
Remove some unneeded __WINESRC__ tests from the headers.
...
Miscellaneous cleanups and fixes.
2003-08-27 02:07:02 +00:00
John K. Hohm
3af19f3e78
Implement DllRegisterServer and DllUnregisterServer for dsound.dll,
...
and add OleSelfRegister version string.
2003-08-23 23:03:28 +00:00
Robert Reif
0611f902db
Added tests for buffer property sets.
2003-08-20 18:18:39 +00:00
Robert Reif
b805f0f1b7
Split property sets into two types: buffer and private.
2003-08-20 18:18:23 +00:00
Robert Reif
fe09afb7cc
Fixed bug where last tests were not executed.
...
Print out sound device info.
2003-08-18 19:52:56 +00:00
Duane Clark
852a37bc64
Move declarations to compile with older compilers.
2003-08-07 20:11:45 +00:00
Alexandre Julliard
21c01853b6
Added propset.ok.
2003-08-07 03:07:26 +00:00
Robert Reif
b5d2f84f87
Added some COM and property set tests.
...
Added LIBUUID to makefile.
2003-08-06 22:57:48 +00:00
Robert Reif
f5080c86e5
Added class factories for DirectSoundCapture, DirectSoundFullDuplex
...
and DirectSoundPrivate.
Added error checking to QueryInterface and CreateInterface.
Added some more functionality to property sets.
2003-08-06 22:57:24 +00:00
Alexandre Julliard
20698b22df
Make the DllRegisterServer, DllRegisterServerEx, DllUnregisterServer,
...
DllGetClassObject and DllCanUnloadNow functions private (suggested by
Jon Griffiths).
2003-07-30 03:48:55 +00:00
Robert Reif
8c37581dd7
Fixed a bug where a NULL primary buffer pointer is used when the
...
DirectSound object didn't create properly.
2003-07-28 19:01:20 +00:00
Francois Gouget
56aaea2f43
Spelling fixes.
2003-07-09 02:52:57 +00:00
Francois Gouget
14a5d168e9
Fixed some common spelling errors.
2003-07-02 04:37:26 +00:00
Robert Reif
9dacf206fe
3D buffer and listener reference counts should be fixed.
...
3D sound now plays in 3D.
COM interfaces should be correct for buffers and 3D stuff. The COM
interface is broken on notifications but I will fix that next.
Fixed the bug when closing and opening the same or another sound
device quickly.
Fixed some locking but there is a lot of work left yet.
2003-06-27 22:22:15 +00:00
Robert Reif
05fb2c89e1
Fixed a reference counting bug I introduced.
2003-06-18 19:31:44 +00:00
Duane Clark
8ed6df97a2
Fix compile error.
2003-05-22 20:56:04 +00:00
Robert Reif
1024fb924d
Add 3d primary and secondary buffer tests.
...
Check reference count at object release.
Remove redundant cooperative level setting.
2003-05-22 03:39:32 +00:00
Robert Reif
a4ed8e7740
- make parameter checking and error notification consistent
...
- propagate driver and local function errors where needed
- fix error returns where pointer is given for returned data
- add 3d listener to primary buffer when needed
- copy 3d part of buffer when duplicated
- fix bug when primary buffer is reopened with smaller buffer
- loosen requirements on caps data size check
- set caps for emulated mode based on actual driver caps
2003-05-22 03:39:13 +00:00
Lionel Ulmer
f5a4a9b60a
Give the right ids to the DirectSoundCreate8 function (thanks to
...
Robert Reif).
2003-05-04 02:24:36 +00:00
Robert Reif
772539a84a
Move all tests to outside the loop when setting volume.
...
Add traces to functions.
2003-05-02 21:23:16 +00:00
Lionel Ulmer
6ad962142f
- misc. tracing fixes
...
- handle IID_IDirectSound(8) as the default sound driver
2003-05-02 21:22:49 +00:00
Robert Reif
abde7d0acf
Reversed relationship between buffers and notifies.
...
Fixed notify reuse bug.
Minor documentation and error message cleanup.
2003-05-02 20:16:48 +00:00
Robert Reif
e743e091ed
Added partial property set support which is used by dxdiag.exe.
2003-04-29 22:49:52 +00:00
Alexandre Julliard
92bfe2269b
Don't use Wine debugging API in tests.
2003-04-13 01:09:23 +00:00
Robert Reif
26ba64b563
Fixed PCM format evaluation bug.
...
Properly clean up partially created sound buffers.
2003-04-11 23:59:19 +00:00
Robert Reif
db68f33a5e
Changed capture format printing to hex.
2003-04-11 00:35:50 +00:00
Alexandre Julliard
c2ebe1ff93
Removed uses of the non standard ICOM_VTBL macro.
2003-04-10 18:17:34 +00:00
Robert Reif
deeb2abd96
Changed DLL version to 8.
2003-04-09 23:34:49 +00:00
Jerry Jenkins
5f4e4a5094
Align data to proper size.
2003-04-07 23:18:31 +00:00
Robert Reif
fa13d013e8
Fixed a problem when multiple devices are present and a device other
...
than the first one is used.
2003-04-05 05:11:02 +00:00
Alexandre Julliard
c7bebba198
Warning fixes.
2003-04-04 22:13:02 +00:00
Robert Reif
aeddf2c409
Added wide character enumeration of sound devices.
2003-04-03 18:03:01 +00:00
Robert Reif
3569c2344f
Added entry for DirectSoundFullDuplexCreate.
2003-04-02 22:35:05 +00:00
Rok Mandeljc
ce7a2bab97
Framework for the doppler effect.
2003-03-31 01:34:08 +00:00
Alexandre Julliard
114a31a2a8
Take advantage of new winebuild syntax to remove redundant function
...
names in spec files.
2003-03-20 03:53:12 +00:00
Ove Kaaven
6fb0277699
Somewhat more reliable dsound position notifications.
2003-03-17 21:23:12 +00:00
Robert Reif
89b469fefe
Added support for multiple direct sound devices.
2003-03-15 00:54:11 +00:00
Rok Mandeljc
7da6e5c9a5
- implemented panning
...
- implemented coning
- many minor fixes
2003-03-10 19:06:02 +00:00
Robert Reif
5a1439cf23
Fixed a bug where a capture device was used after it failed to open
...
due to a missing driver.
Added tests to try all possible combinations of sample rate, sample
size and mono/stereo.
2003-03-07 20:36:47 +00:00
Robert Reif
8c2ec131a8
Added a configuration option for setting the hardware acceleration
...
level just like the direct sound control panel app.
More work on the full duplex interface so the compile warning is no
longer generated. Full duplex interface is still stubbed out.
Moved full duplex mixer reset fix into wineoss driver where it
belongs.
Added some more locking fixes.
Capture and full duplex are now stable.
2003-03-06 22:46:34 +00:00
Rok Mandeljc
53b5a4746f
Changed some stuff so distance attenuation works for both 3d
...
processing modes.
2003-03-05 02:47:39 +00:00
Robert Reif
15cc17fbcf
Fixed code to handle full duplex properly.
...
Added support for capture driver (disabled).
Fixed direct sound capture test to handle notifications properly.
2003-03-04 02:12:34 +00:00
Robert Reif
490d2a7bc2
Fixed a problem getting the GUID to compile under windows and wine.
2003-02-24 20:42:59 +00:00
Michael Stefaniuc
f85440466b
Add missing LeaveCriticalSection's in error path.
2003-02-24 20:39:22 +00:00
Rok Mandeljc
22b09a10f0
Reimplemented distance attenuation formula.
...
Removed coning formula since i believe it's inappropriate.
2003-02-17 01:46:46 +00:00
Robert Reif
5be7f69d72
Added support for direct sound capture and a real direct sound capture
...
driver. Capture now works with some skipping. Full duplex does not but
I will be working on that next.
2003-02-15 00:01:17 +00:00
Gerald Pfeifer
61e9670d31
#include <stdlib.h> instead of the non-standard <malloc.h>.
2003-01-20 23:27:27 +00:00
Francois Gouget
8e9dcb6655
Use the same 8/16bit conversion routines as in pcmconverter.c.
...
Reorder the two ifs in the first part of cp_fields to simplify the
code.
2003-01-16 00:20:07 +00:00
Francois Gouget
336d8fe298
SetFormat may not change the primary buffer format as requested.
...
Dump the effective format and prepare the tone signal accordingly.
Play tones from the secondary buffers at -3dB rather than -12dB.
Always print the volume the tone is going to be played at.
Remove the gamedev URL.
2003-01-16 00:19:49 +00:00
Francois Gouget
6bbce6cd22
Initialize the pwave array whenever we don't have a hardware buffer.
...
Always create the wineoss thread.
Change the mmap ERR into a TRACE: there are normal circumstances where
mmap will fail and we can deal with them.
2003-01-15 00:44:50 +00:00
Rok Mandeljc
5438df173e
Added cone support.
2003-01-14 19:31:08 +00:00
Enrico Horn
6b83bb622b
Add version info to dll/dsound.
2003-01-13 20:40:45 +00:00
Francois Gouget
32140adefa
DSB.SetFormat:Trace the requested format as soon as possible in case
...
it is not supported and simplify validity check.
Initialize the buffer format, and only from the fields we checked.
DirectSoundCreate8 fully initializes the buffer format (just in case).
2003-01-11 20:54:56 +00:00
Francois Gouget
8325deaa33
Fix latent deadlock in DSOUND_callback.
2003-01-11 20:53:43 +00:00
Rok Mandeljc
438985f3dd
3d sound diminishes with distance.
2003-01-10 01:46:36 +00:00
Dimitrie O. Paun
297f3d898d
Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them.
2003-01-07 20:36:20 +00:00
Francois Gouget
112cf22a12
Always open the device in the default 22050x8x2 format, and let it
...
report the actual device format to us.
2003-01-07 19:43:18 +00:00
Rok Mandeljc
1b3ce0d571
- 3d buffers produce sounds
...
- some other small fixes
2003-01-04 01:24:59 +00:00
Rok Mandeljc
5b918db643
- cleaned *Set* functions
...
- added initial code for 3d buffer recalculating
- added some auxiliary functions
2003-01-04 01:22:51 +00:00
Francois Gouget
3b761a6b39
Add the ability of playing a test tone when in interactive mode.
...
Test both primary and secondary buffers.
2003-01-02 23:08:57 +00:00
Rok Mandeljc
f3128dad92
Implementation of IDirectSound3DListenerImpl_Set*().
2002-12-13 23:20:58 +00:00
Francois Gouget
a542770c55
Extend the test by creating a PrimaryBuffer object and perform a few
...
basic tests such as querying its characteristics and changing its
format.
Changing the format requires that we call SetcooperativeLevel first,
which means we need an hwnd. So the test must now link with
user32.dll.
2002-12-13 20:27:36 +00:00
Francois Gouget
78561f3eb3
IDirectSoundBuffer.GetCaps should fail if caps.dwSize is not set.
2002-12-13 20:26:23 +00:00
Rok Mandeljc
553dded48a
Implemented IDirectSound3DBufferImpl_Set*().
2002-12-13 00:31:06 +00:00
Rok Mandeljc
17c8b8e271
Implemented IDirectSound3DListenerImpl_Get*() functions.
2002-12-12 23:01:05 +00:00
Rok Mandeljc
dcc5b4fe53
Implemented some stubs.
2002-12-12 22:27:15 +00:00
Alexandre Julliard
dbf8b78acd
Added .spec.def files.
2002-12-12 22:04:04 +00:00
Alexandre Julliard
26d648887a
Back out the aRts volume patch, this is not user-friendly at all.
2002-12-05 19:20:36 +00:00
Francois Gouget
d523a45bd0
A simple test for IDirectSound.GetCaps.
2002-12-05 19:19:41 +00:00
Francois Gouget
ee4d9c5e29
Return an error if dwSize is not valid.
...
No need to dump dwFlags before it is initialized.
2002-12-05 19:00:56 +00:00
Alexandre Julliard
b34fb35b31
Fixed warnings caused by conversion to -DSTRICT.
2002-10-18 23:48:57 +00:00
Ove Kaaven
4774477b2b
Fix for soundcards that can't do 8-bit audio, only 16-bit (also
...
checked for soundcards that can't do stereo while I was at it).
2002-09-29 18:01:33 +00:00
Jerry Jenkins
062425aee4
Added waveOutSetVolume when opening sound driver. Otherwise, there is
...
no sound if we use aRts.
2002-09-17 01:29:01 +00:00
Patrik Stridvall
9c1de6de30
Moved all the content of the DDK files ntdef.h and ntddk.h to
...
winternl.h.
2002-09-12 22:07:02 +00:00
Patrik Stridvall
d016f819f1
Added include protection for unistd.h and sys/time.h.
2002-08-17 00:43:16 +00:00
Michael Stefaniuc
bacc1b3b58
- Converted HWAVE, HWAVEIN, HWAVEOUT to void*.
...
- Fixed some HMIDI{IN,OUT}16 to HANDLE conversions.
- midiOutCacheDrumPatches16 called itself recursively in an infinite
loop.
2002-08-02 19:02:49 +00:00
Alexandre Julliard
1f6ce57b24
Removed ordinal 0.
2002-07-24 19:05:50 +00:00
Steven Edwards
6aa9ccb102
Need to import ntdll.
2002-07-05 22:48:33 +00:00
Alexandre Julliard
7015ce3096
No need to call GetModuleFileName16 now that GetModuleFileNameA
...
handles 16-bit tasks.
2002-07-05 01:28:10 +00:00
Alexandre Julliard
77afd6c47e
Made some more spec file entries optional or unnecessary.
...
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00
Ove Kaaven
935e3df35c
Support DirectSound 8 interfaces. Split interface implementations into
...
separate files. Split primary buffer and secondary buffer interfaces
into separate implementations. Made the primary buffer state part of
the dsound object, so primary buffer objects can be created and
refcounted independently. Made the interfaces follow COM aggregation
rules more closely. Converted the dsound critical section to a R/W
lock to improve potential remixing concurrency. Fixed various bugs and
refcounting issues.
2002-06-13 19:15:06 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Johan Gill
7c61a61616
Only enumerate DirectSound devices if the first sound device in the
...
system supports the Wine implementation of DirectSound. Also added
some entries to the sample config file and changed the values of the
"EmulDriver" key to "Y"/"N".
2002-05-28 22:45:58 +00:00
Alexandre Julliard
2ab7625934
Removed most imports of ntdll since we no longer import Wine internal
...
functions from there.
2002-05-17 03:37:12 +00:00
Alexandre Julliard
ad53383f9b
Added winebuild support for generating a .dbg.c file containing the
...
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Alexandre Julliard
67371bcc8d
Added -res option to specify resources on winebuild command-line.
...
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Joris Beugnies
ff60a9a27b
Make defines configurable at run-time.
2002-05-11 22:53:00 +00:00
Alexandre Julliard
32459912dc
Moved imports specification from the .spec into the Makefile so that
...
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Johan Gill
8fc98cdef8
DirectSoundEnumerateA() now passes a GUID to the callback if the first
...
call returned TRUE.
2002-05-01 18:05:30 +00:00
Alexandre Julliard
5769d1de00
Better support for configure detection of missing types, added check
...
for ssize_t.
Removed a couple of no longer used portability functions.
Various portability fixes in port.h.
2002-04-26 19:05:15 +00:00
Eric Pouech
c745b52803
A bit more robust against wave???Open failures.
2002-04-22 22:36:18 +00:00
Chris Morgan
ace56c62a3
Dsound will now try as many devices as are available when trying to
...
open a waveOut device in DirectSoundCreate().
2002-03-25 20:52:17 +00:00
Chris Morgan
9b0ba7ca2b
Added aRts driver.
2002-03-21 01:38:19 +00:00
Alexandre Julliard
c1bfca04e1
Changed builtin dlls file names to make it clear they are not normal
...
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Alexandre Julliard
0799c1a780
Added LGPL standard comment, and copyright notices where necessary.
...
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Patrik Stridvall
74e4d21ebe
Avoid wildcards in .cvsignore.
2002-01-29 03:05:12 +00:00
Ove Kaaven
f250b6b5fa
Further unified HAL and HEL mixing, and added some more intelligence
...
to prebuffering, with some basic prebuffer canceling support, to get
rid of mixing delays in Half-Life. Used a very small waveout buffer
queue in HEL mode, using a callback to queue additional buffers, to
get rid of playback delays in Half-Life. Fixed a couple of bugs.
2002-01-02 21:46:54 +00:00
Ove Kaaven
fdebace998
Fix buffering problems in HEL mode.
2001-09-10 23:08:11 +00:00
Patrik Stridvall
2344798c46
Fixed some warnings.
2001-07-26 21:44:44 +00:00
Patrik Stridvall
3ca9823941
Documentation ordinal fixes.
2001-06-20 23:03:14 +00:00
Patrik Stridvall
8b216b3d02
Documentation ordinal fixes.
2001-06-19 18:20:47 +00:00
Marcus Meissner
9c0ae56d39
Added definitions for IKsPropertySet, small stub implementation for
...
IDirectSound3DBuffer. Fixed one pointer reference.
2001-06-13 19:36:10 +00:00
Andreas Mohr
c2bc22b91c
Spelling fixes.
2001-05-24 18:44:25 +00:00
Francois Gouget
e76218dd61
Add '\n' at the end of traces.
2001-05-09 17:31:31 +00:00
Ove Kaaven
ed739334f4
Fixed sound disappearing after on-the-fly sample rate changes and
...
after certain underrun conditions.
Compilation fixes for when USE_DSOUND3D is defined.
2001-03-19 19:14:39 +00:00
Alexandre Julliard
ddf825660e
Chris Jacobson
...
Small bug fix.
2001-03-03 00:19:29 +00:00
Ove Kaaven
62510ddbf6
Fixes for various underrun-related problems. Also added a mechanism
...
for the sound driver to request that a Stop should close and reopen
the device.
2001-01-13 01:00:00 +00:00
Johan Gill
d8dea427c1
Added a more truthful message about what really is wrong.
2001-01-06 00:36:14 +00:00
Eric Pouech
ad250aac34
Now using manifest constant instead of raw values for all the
...
DRV_QUERY??? values.
2001-01-04 19:53:51 +00:00
Ove Kaaven
865cf3752c
Bugfix for sound dropping out, and workaround for Half-Life's
...
braindead secondary sound buffer management.
2001-01-02 21:02:32 +00:00
Ove Kaaven
0c7c94b956
More intelligent DirectSound prebuffering. By tracking the
...
last-written position of streaming buffers, it attempts to avoid
prebuffering past this position unless necessary; this may avoid a
number of sound problems in various situations. Merged HEL and HAL
mixing code, which should reduce the HEL mode's CPU usage slightly.
2000-12-22 20:31:06 +00:00
Marcus Meissner
eba8cee584
Handle errors for IDsDriver_GetPosition.
...
Report DSERR_UNINITIALIZED on non-opened WineOSS audio device.
2000-12-21 20:49:26 +00:00
François Gouget
44a182229b
winuser.h now requires that we include winbase.h first.
2000-12-19 04:53:20 +00:00
Alexandre Julliard
5be8e7d8e0
Created a small static library in ole/libuuid.a that contains all the
...
UUID definitions (with the help of Francois Gouget).
2000-12-06 01:50:47 +00:00
David Elliott
ea186796eb
Remove libXXXX.so.1.0 lines from .cvsignore files.
2000-11-30 19:57:34 +00:00
Alexandre Julliard
27939f00fd
Start using import tables for dlls that can already support it.
2000-11-12 03:50:10 +00:00
Alexandre Julliard
eb58e1d597
Declare debug channels in all dlls that need them; added imports of
...
ntdll where necessary.
2000-11-05 04:53:07 +00:00
Andreas Mohr
49b3cec137
Reimplement patch by Marcus Meissner ('98) to "fix" problems with
...
DSCAPS_EMULDRIVER flag for games like Quake 2 and Unreal Tournament.
2000-10-25 20:30:31 +00:00
Patrik Stridvall
a9f6a9daec
Explicitly initialize structures.
2000-10-24 02:22:16 +00:00
Alexandre Julliard
83f52d11c1
Moved all Win16 definitions out of the standard Windows headers.
2000-09-26 22:20:14 +00:00
James Abbatiello
26d6c1f557
Don't use copies of critical sections made by memcpy()
...
Added missing WINAPIs
2000-09-01 01:22:21 +00:00
Andreas Mohr
349655636b
- made the MIDI sequencer error message much better for confused users
...
to be found on #WineHQ
- use strerror instead of errno at important places
- got rid of HAVE_STRERROR macro
- removed some #include:s (hopefully I didn't break anything)
2000-08-26 20:31:48 +00:00
Alexandre Julliard
bea617be47
Moved GUID definitions to their respective dll.
2000-08-03 04:22:35 +00:00
Alexandre Julliard
6c9d83aa4c
Added imports of user32/gdi32/kernel32 wherever necessary.
2000-08-03 00:04:24 +00:00
Ove Kaaven
fddc3e15d8
Added a few C++ operators to Direct3D structures, and made some unions
...
'nameless'.
2000-07-23 14:19:19 +00:00
Patrik Stridvall
6314ad696b
Fixed some warnings.
2000-07-15 21:33:38 +00:00
Ove Kaaven
9405793109
Fix a couple of problems with underruns and stopping/restarting.
2000-07-08 11:45:39 +00:00
Ove Kaaven
849c930481
Implemented the DirectSound HAL mode for DMA primary buffers, with a
...
10ms latency (not noticeable), and about 300ms of prebuffering. Fixed
a few bugs. Added a Wine-only WINMM flag for waveOutOpen for
DirectSound to use (so drivers like wineoss have some way of knowing
what to prepare itself for).
2000-06-24 12:54:49 +00:00
Ove Kaaven
353c776a66
Restructure DirectSound. Remove dsound thread, use MM timers
...
instead. Implemented the DirectSound HEL, with the ability to
prebuffer 300ms of sound, while maintaining play latency of 40ms, and
the exact playposition (Starcraft cinematics are lip-synched). Some
initial HAL support.
2000-06-23 15:45:05 +00:00
Alexandre Julliard
6953d6756c
For dlls, derive SPEC_SRCS from MODULE and ALTNAMES.
2000-06-20 20:24:14 +00:00
James Abbatiello
625653f96d
Add a few more flags to those recognized when doing trace+dsound.
2000-06-11 19:59:10 +00:00
Patrik Stridvall
330cd693b0
Fixed some warnings.
2000-06-03 20:43:06 +00:00
Peter Hunnisett
f5a1027595
- Added DirectSoundCapture and DirectSoundCaptureBuffer interfaces
...
- Added some SoundCapture stubs
- Changed REFIID to LPCGUID in a few places as per MS header file
2000-06-01 22:47:35 +00:00
Peter Hunnisett
4dce07ea94
- Fixed some initialization/destruction and reference counting
...
- Added a little more debugging information
2000-05-30 20:49:37 +00:00
Peter Hunnisett
62f32331dd
- Add another way to create a 3d listener interface.
...
- Fix up some reference counting bugs and interface creation bugs
- Add DirectSoundEnumerateW stub
- Add DirectSoundCaptureEnumerate{A,W} stubs
2000-05-30 20:07:31 +00:00
Eric Pouech
8cfea6e292
Make internal buffers size multiple of 4.
2000-05-10 21:39:24 +00:00
Marcus Meissner
b2dd2c5cee
DSOUND_MixerNorm: do not compare unrelated pointers.
2000-04-16 17:05:06 +00:00
Marcus Meissner
3347bee15c
Make audiodevice blocking directly after the non-blocking open, since
...
we use the write(2) also for synchronization.
2000-04-06 19:32:33 +00:00
Marcus Meissner
502e15b6e7
open() the OSS sounddevice non-blocking in case another process has it
...
open already.
2000-03-30 20:22:12 +00:00
Niels Kristian Bech Jensen
c9742b3204
- Fix some compiler warnings.
...
- Remove superfluous #include statement.
2000-03-28 20:44:59 +00:00
Andreas Mohr
f15473f5f3
Fixed debug formatting.
2000-03-26 18:18:26 +00:00
Patrik Stridvall
fcfacb95a7
Added/fixed some documentation reported by winapi_check.
2000-03-24 20:46:04 +00:00
Alexandre Julliard
d0edc5fecd
Moved dll-specific make rules to a separate Makedll.rules file.
2000-03-04 22:31:27 +00:00
Marcus Meissner
f8e4fb0888
Made the buffer list in the directsound object thread-safe.
2000-02-20 19:16:12 +00:00
Alexandre Julliard
383da68cf9
Optimized debugging API to reduce code size.
2000-02-10 22:15:21 +00:00
Jeremy White
d3e22d9d55
Removed #include of wingdi.h and windef.h from winuser.h (and resolved
...
the resulting compilation failures).
2000-02-10 19:03:02 +00:00
Alexandre Julliard
318f4cefd2
Build most dlls as separate shared libraries.
2000-01-31 05:02:49 +00:00
Francois Gouget
f82a723a43
The COM virtual tables must use the
...
'ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE' macro to provide padding in C++.
2000-01-30 02:55:16 +00:00
Alexandre Julliard
681c75bf17
Added debugstr_guid function and used it to replace
...
WINE_StringFromCLSID in all debugging messages.
2000-01-18 05:09:49 +00:00
Todd T. Fries
f84e8eaf8a
Add HAVE_SOUNDCARD_H to support OpenBSD.
2000-01-15 22:19:56 +00:00
Eric Pouech
5f6080ee05
Removed suicide code when playback thread's father dies.
1999-11-14 23:53:41 +00:00
Francois Gouget
01c9ac401f
Generalized the use of the new ICOM_VFIELD and ICOM_VTBL macros.
1999-10-31 01:59:23 +00:00
Eric Pouech
68944c205c
Split the multimedia/ directory into dlls/ subdirectories.
1999-10-24 18:42:42 +00:00