Commit Graph

169 Commits

Author SHA1 Message Date
Eric Pouech aef4a77d46 wineoss: Proper support in OSS driver for audio when no mixer is present.
Fixed a couple of potential fd leaks.
2006-01-27 12:10:25 +01:00
Robert Reif c7a59d117a wineoss: Fix device probing.
- Fix device probing at driver load time.
- Fix memory leaks at driver exit time.
2005-12-08 12:00:33 +01:00
Rein Klazes 77a6d341c7 Break from the SNDCTL_DSP_CHANNELS loops on first error instead of
continuing with even higher channels numbers.
2005-11-21 11:56:55 +00:00
Vitaliy Margolen f09eb790c9 Replace registry editing instructions with winecfg. 2005-10-03 10:16:32 +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
Vitaliy Margolen ade3dd2828 Change messages about config file to registry. 2005-07-03 11:23:48 +00:00
Robert Reif 2b7438224f Add support for more than 2 audio channels. 2005-05-30 11:12:07 +00:00
Robert Reif 8a67554a3a Fix a multiple sound card interface bug.
Add better error messages.
2005-05-29 20:02:58 +00:00
Mike McCormack 66cee15084 Set thread priorities to time critical. 2005-05-14 18:49:40 +00:00
Peter Berg Larsen 6e3bcb5a54 Replace strncpy with memcpy or lstrcpyn. 2005-04-18 10:30:55 +00:00
Robert Reif 99042cfe64 Fall back to default header prepare and unprepare functions. 2005-03-17 18:56:14 +00:00
Steven Edwards 5727918424 Added a check for poll.h. 2005-03-04 12:38:36 +00:00
Francois Gouget fbb3343547 Assorted spelling fixes. 2005-03-02 13:53:50 +00:00
Jeremy White cf23045791 More correctly establish cases where the OSS input buffer should not
be enabled.
2005-03-02 10:12:35 +00:00
Jeremy White 2db20ef1f0 More correct fix for dsp empty case. 2005-02-23 21:00:02 +00:00
Jeremy White aa2046f643 In calculating the SMPTE time, we would round incorrectly (0:0:4.30
instead of 0:0:5.0 [the last column only goes to 29]).
2005-02-23 15:40:54 +00:00
Jeremy White 920ef0fbc9 When we get down to the last fragment or two in our output to the DSP,
we should use the SND_DSP_POST ioctl to let the sound card know to
flush those fragments.  This allows us to precisely know when the
buffer is empty, and fixes another set of winmm tests.
2005-02-23 12:43:04 +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 2d8e75dab5 A driver does not have to support all formats. 2004-12-20 19:08:18 +00:00
Alexandre Julliard b4e495574b Authors: Eric Pouech <pouech-eric@wanadoo.fr>, Filip Navara <xnavara@volny.cz>
32 bit low level drivers now use a Unicode interface (used to be ANSI):
- Send the *_GETDEVCAPS messages in unicode format from the
  *GetDevCapsW function and call the *GetDevCapsW from their respective
  Ansi versions.
- Modify all low level drivers to correctly process the *_GETDEVCAPS
  messages as unicode.
- *_GETDEVCAPS messages are now mapped from/to unicode for 16 bit code.
- Removed all SoundBlaster naming oldies.
Better use of some unicode functions (instead of Ansi) in winmm.
2004-12-06 20:55:25 +00:00
Robert Reif 0e3c524f4c Split up audio.c into three separate .c files:
audio.c: OSS functions and waveIn and waveOut driver functions.
dscapture.c: direct sound capture driver implementation.
dsrender.c: direct sound renderer driver implementation.
2004-10-26 22:04:55 +00:00
Alexandre Julliard f5f7a1822c Removed some more uses of the non-standard ICOM_THIS macro. 2004-09-08 01:50:37 +00:00
Francois Gouget 3c4525af93 Add support for the AUDIODEV and MIXERDEV environment variables. 2004-09-01 01:28:12 +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 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
John K. Hohm cc3af24375 Consistently suggest proper Emulation rather than Emulated for
HardwareAcceleration in [dsound] section of config file.
2004-08-19 18:54:41 +00:00
Robert Reif 370d5d244e Cleanup messages in supportedFormat. 2004-08-19 01:10:36 +00:00
Robert Reif 7fe0568482 Some sound cards have different capabilities when doing full duplex so
add duplex caps and return them when necessary.
Clean up event message printing.
2004-08-18 00:30:01 +00:00
Robert Reif e24f873b0f Added WAVEFORMATEXTENSIBLE support. 2004-08-16 21:09:52 +00:00
Robert Reif c5a15bf3ec Better mmap failure error message. 2004-08-13 19:42:36 +00:00
Alexandre Julliard 48c4bb3c31 Get rid of the non-standard ICOM_VTABLE macro. 2004-08-12 23:00:51 +00:00
Alexandre Julliard 0467ce9fd7 Get rid of the non-standard ICOM_VFIELD macro. 2004-08-12 19:52:49 +00:00
Robert Reif 7bf7bce0da Add CRITICAL_SECTION debug info. 2004-08-04 18:14:21 +00:00
Francois Gouget eed1b5209d Added bytes_to_mmtime() to convert the stream position from bytes to
the requested MMTIME format. This function should be identical in all
drivers.
Remove the corresponding code from wodGetPosition() and
widGetPosition() and use bytes_to_mmtime() instead.
bytes_to_mmtime() uses no floating-point arithmetic to compute
TIME_SMPTE and no longer uses round(). It should have no integer
overflows either.
2004-07-23 23:01:21 +00:00
Francois Gouget 54751b230d Use round() instead of ceil() in wodGetPosition(TIME_SMPTE).
Fixes the corresponding winmm conformance test.
2004-07-19 20:08:06 +00:00
Francois Gouget 170dbf4243 An SNDCTL_DSP_SETDUPLEX failure should be a WARN(), not an ERR(),
since the OSS specifications say we have to call it before knowing if
the sound card is full-duplex capable.
2004-07-14 21:44:50 +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
Francois Gouget d8e9b8f7aa Log the format when mapping the sound device (or failing to). 2004-06-16 20:06:48 +00:00
Francois Gouget 1d834f4717 Fix the check for SNDCTL_DSP_GETCAPS so that it is compliant with the
OSS specification.
Only test the different formats if tracing is on.
2004-06-15 20:25:46 +00:00
Robert Reif bdbb54f340 Fix calculation of SMPTE time (round up to full frame).
More accurate ms calculation.
2004-06-01 20:22:11 +00:00
Francois Gouget ceeed96a38 Use triggers to disable the sound input/output side we don't care
about when in pseudo fullduplex mode.
2004-05-20 01:16:10 +00:00
Robert Reif 4a787831f0 Add an interface name to wineoss, winealsa, winearts and winejack.
Add support for wave interface message where missing.
2004-05-11 04:28:13 +00:00
Francois Gouget 9f1aea2fb8 Assorted spelling fixes. 2004-05-05 01:09:24 +00:00
Francois Gouget 8ceb200817 We only support 8 and 16 bit sound so we should reject the other
formats.
2004-04-26 20:03:59 +00:00
Robert Reif a1f01d353c Cleanup reference counting.
Move notify array to buffer.
Add state info and fix GetStatus.
Remove unnecessary driver description flags.
2004-04-12 23:12:17 +00:00
Robert Reif dc4535f91a Remove trailing white space.
Cleanup white space and format in direct sound capture routines.
2004-04-12 22:01:47 +00:00
Francois Gouget 20547de012 Patch the fragment size if it does not match the current sound
format. This saves us from triggering a kernel freeze on some OSS 2.4
+ SoundBlaster 16 systems.
2004-04-09 19:05:09 +00:00
Robert Reif 86976d53e2 More duplex mode soundcard info. 2004-03-31 19:57:53 +00:00
Robert Reif 605064a4bf Print out sound card info for playback, capture and duplex modes.
Hardware capabilities can vary depending on usage mode.
Print out format requested and actual format returned.
2004-03-29 20:27:50 +00:00
Robert Reif af3fa1c48d Enable exact position calculation when hardware supports it. 2004-03-12 19:43:44 +00:00