Commit Graph

134 Commits

Author SHA1 Message Date
Robert Reif 03c88f5f60 Add support for more than one sound card.
Fix wave out support when no volume control is present.
Use proper structure for wave in device caps.
2005-03-18 10:26:05 +00:00
Robert Reif f7be545ede Use real device name. 2005-03-17 18:54:20 +00:00
Francois Gouget 7105248ae6 Apply Jeremy White's SMPTE calculation fix to each audio driver. 2005-03-02 13:39: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
James Hawkins ed12a3defd - Use Interlocked* instead of ++/-- in AddRef/Release.
- Use only stored result of Interlocked* in AddRef/Release.
- Expand TRACEs to display the ref count.
2005-01-12 19:55:24 +00:00
Vincent Béron 151015fa02 Only use Alsa if 1.0 is detected. 2005-01-10 13:26:33 +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
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
Eric Pouech 5c2a891c43 Made some functions and variables static. 2004-11-29 18:00:10 +00:00
Jerry Jenkins ccdea75dca Fix an error message. 2004-10-04 20:41:10 +00:00
Jerry Jenkins 30b8cccc07 Don't use the SND_PCM_ASYNC flag for the moment. 2004-10-04 19:30:04 +00:00
Uwe Bonnes 17e22fba88 Call GetProcessHeap() instead of passing its address. 2004-09-27 20:35:13 +00:00
Alexandre Julliard f5f7a1822c Removed some more uses of the non-standard ICOM_THIS macro. 2004-09-08 01:50:37 +00:00
Robert Reif c8fa57539d Added 32 bit float support. 2004-08-25 02:11: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
Robert Reif 2e569d14c9 Added 24/32 bit sample size and 4/6 channel support.
Added dsound capture wine specific message support.
2004-08-19 19:55:38 +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
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 2e13bf774e Check that we are still playing in wodUpdatePlayedTotal(). If not,
then the value returned by snd_pcm_delay() is not usable so assume
delay=0. This gets the winmm test to complete in interactive mode with
winealsa.
2004-07-19 21:20:59 +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
Robert Reif 1e2dcc457e Reset played variables on open. 2004-06-14 16:59:34 +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
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
James Courtier-Dutton 0040ba959b Updated to the new alsa api. 2004-05-05 22:03:48 +00:00
Robert Reif 8db4d73d89 Forgot to limit capture sample rates. 2004-04-29 00:20:35 +00:00
Ove Kaaven c6ad91ba3c Fixed a couple of bugs. 2004-04-28 00:24:09 +00:00
Robert Reif 7c80f993d2 Restore the 2 MHz sample rate test and fix the winealsa driver for
reasonable limits.
2004-04-27 23:28:46 +00:00
Francois Gouget da29b6547f Make sure the 'alsa handle' is initialized to NULL before calling
snd_pcm_open(). Otherwise if it fails we get a crash trying to close
an invalid alsa handle.
2004-04-26 23:31:11 +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
Ove Kaaven 276ccc44ed Added detection of 48kHz and 96kHz support. Fixed a thinko, and some
misleading indentation.
2004-04-19 23:06:48 +00:00
Ove Kaaven 59917f4cfa Code and concepts merged in from wineoss in order to get the
non-dsound wave output performance in winealsa to an acceptable
level. It's still possible to do better than the current code, but
this should do for now.
2004-04-19 19:24:25 +00:00
Felix Nawothnig 301851da5a Don't free ALSA device string when the device is closed since it might
be reopened.
2004-03-31 20:05:45 +00:00
Sylvain Petreolle 2504ac59b4 Fixed error reporting. 2004-03-29 22:55:26 +00:00
Mike Hearn ce32fc5684 Allow configuration of output devices to use and change standard
output plugin requested to "default".
2004-03-27 01:38: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
Christian Costa 87bef514db Replaced the timer and its callback by a thread for receiving midi in
events.
Fixed time of MIM_LONGDATA notification.
Handled DRVM_EXIT in ALSA_midMessage.
2004-02-19 04:12:18 +00:00
Robert Reif 391aede4ba Use pipe sync code from wineoss. 2004-02-13 20:44:12 +00:00
Robert Reif 9a3056b243 Don't need primary lock. Fixes error in dsound tests in interactive
mode.
2004-02-13 20:21:47 +00:00
Christian Costa 485390de6f Added missing notifications to MIDI_NotifyClient.
Made checks less strict in midPrepare, only return an error for buffer
in queue.
Fixed time of input events in Alsa driver.
2004-02-05 01:24:28 +00:00
Alexandre Julliard 20b4585e3c Only link against libdxguid where necessary. 2004-01-27 00:11:16 +00:00
Francois Gouget 6b6ed724ae Add missing '\n's to debug traces. 2004-01-27 00:01:43 +00:00
Christian Costa 8349acab6c Added Midi IN support. 2004-01-13 01:05:34 +00:00
Christian Costa 092f7dd352 Fix compilation issue with ALSA 0.5. 2004-01-02 20:13:57 +00:00
Christian Costa 00bfb75485 Exported widMessage function. 2003-12-15 19:48:15 +00:00
Jeremy Shaw f7cae99969 Move the data around when the ring buffer is resized so that the empty
messages are between the tosave and toget indexes.
2003-12-12 05:55:26 +00:00
Christian Costa 076000ce51 Added WaveIn support. 2003-12-11 04:27:18 +00:00
Christian Costa 1469cf58f3 First enumerate all internal devices and then external midi ports. 2003-12-08 21:46:50 +00:00
Alexandre Julliard 628e27ad56 Define ALSA_PCM_OLD_* symbols for compatibility with Alsa 1.0. 2003-12-04 21:14:04 +00:00
Christian Costa 2aba972aff Alsa midi fixes. 2003-11-12 22:40:59 +00:00
Robert Reif be4281522d Added support for getting the wave device name. 2003-10-28 00:15:16 +00:00
Robert Reif f2133052b1 Fix SMPTE time.
Fix primary buffer volume setting.
2003-10-27 22:01:30 +00:00
Oleg Prokhorov 2f878e518b Small fix in sound flushing code. 2003-10-14 05:18:40 +00:00
Daniel Marmier 5202364a5b ALSA_WaveInit: repaired device name. 2003-10-14 01:17:16 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Daniel Marmier 7e0ddbc60f Fixed warnings with gcc option "-Wwrite-strings". 2003-10-07 22:54:17 +00:00
Robert Reif c445c739f9 Volume and Pan driver requests need to return success even though they
are not implemented.
2003-09-22 21:13:33 +00:00
Oleg Prokhorov a6d37f6d31 Implemented sound flushing. 2003-09-22 19:25:52 +00:00
Oleg Prokhorov 223a442de1 Avoid crash if invalid rate was specified. 2003-09-17 22:39:20 +00:00
Alexandre Julliard 209ce0be91 Avoid linking error with older alsa libs. 2003-09-17 20:09:39 +00:00
Pavel Roskin e8db705fac Moved WINE_DEFAULT_DEBUG_CHANNEL outside of the #ifdef. 2003-09-16 20:25:39 +00:00
Christian Costa 2da25d9c57 Added midi support to the ALSA driver. 2003-09-15 22:08:39 +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
3d6e91cd99 Fix parameter to snd_pcm_sw_params_set_silence_size(). 2003-08-20 03:38:27 +00:00
Robert Reif a104d91ce8 Added a dynamically growing ring buffer for oss, alsa, arts, and nas. 2003-06-04 20:28:04 +00:00
Alexandre Julliard 50149af8b5 Make sure that snd_pcm_open returned a valid handle before using it. 2003-04-27 00:38:39 +00:00
Alexandre Julliard c2ebe1ff93 Removed uses of the non standard ICOM_VTBL macro. 2003-04-10 18:17:34 +00:00
Alexandre Julliard 270d1b8ad7 Avoid crash if snd_pcm_open fails. 2003-03-28 19:34:50 +00:00
Robert Reif 89b469fefe Added support for multiple direct sound devices. 2003-03-15 00:54:11 +00:00
Nikolay Stefanov 08ee2e1cc2 Fix issues with i810-based audio cards.
Support for user-selectable audio cards through the ALSA_CARD
environment variable (M.Miroslaw@elka.pw.edu.pl).
2002-12-13 00:36:22 +00:00
Andreas Mohr 6e256c72fe - fix some pselling
- enhance some TRACEs
2002-10-25 19:09:02 +00:00
Alexandre Julliard 6fa2ac693e Removed DECLARE_OLD_HANDLE. Fixed a few remaining warnings. 2002-10-19 17:20:02 +00:00
Marco Pietrobono 0e79a4128c Use alsa/asoundlib.h instead of sys/asoundlib.h if possible. 2002-08-29 01:51:31 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Patrik Stridvall 4325554aef Fixed some issues found by winapi_check. 2002-08-09 01:07:29 +00:00
Patrik Stridvall a3868218d0 Fixed some issues found by winapi_check. 2002-07-19 00:30:16 +00:00
Eric Pouech e3bd1361f1 Fixed a few compilation warnings. 2002-07-08 19:34:49 +00:00
Eric Pouech 34865e4c27 Fixed some more configuration issues. 2002-07-03 01:14:52 +00:00
Alexandre Julliard 958732d21c Fixed warnings. 2002-07-02 02:09:39 +00:00
Alexandre Julliard f92b7c06c2 Added some ALSA configure checks. 2002-06-28 18:31:01 +00:00
Eric Pouech a120ce015c Created an ALSA driver (with the help of David Hammerton and Marco
Pietrobono).
2002-06-28 17:40:16 +00:00