Commit Graph

1119 Commits

Author SHA1 Message Date
Lei Zhang d20f982433 winmm: Do not unload drivers when the process is terminating. 2008-04-29 14:57:30 +02:00
James Hawkins 4daec079c1 winmm: Remove a failing test that is driver-specific. 2008-04-25 11:33:59 +02:00
Robert Reif fa9a26921c winmm: Fix a test failure on Windows with Terminal Server. 2008-04-25 11:28:57 +02:00
Austin English 6e59cd2c34 Spelling fixes. 2008-04-22 12:20:12 +02:00
Rok Mandeljc f261e6db4d winmm: Slovenian translation: Add a string that got lost during last update. 2008-04-14 12:42:43 +02:00
Rok Mandeljc 38323f8284 winmm: Updated Slovenian translation. 2008-04-07 21:40:29 +02:00
Andrew Talbot d3e904202a winmm: Assign to struct instead of using memcpy. 2008-03-24 11:33:10 +01:00
Maarten Lankhorst 15907b5035 winmm: Fix midi deadlock by not holding lock on release. 2008-03-18 11:15:18 +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
Francois Gouget dcb8dd3ce3 winmm/tests: Don't use 0x55 to avoid any confusion when running with +heap. 2008-03-03 12:07:02 +01:00
Alexandre Julliard edb91ce519 winmm/tests: Make sure the callback thread has a message queue. 2008-02-28 19:56:48 +01:00
Andrew Talbot 19c5811256 winmm: Remove unneeded casts. 2008-02-06 12:43:53 +01:00
Alexandre Julliard 9d3dcae1fb winmm: Load only one sound driver at a time. 2008-01-16 19:15:25 +01:00
Austin English 79c0bc28ff More spelling fixes. 2008-01-04 12:55:45 +01:00
Alexandre Julliard dfc0564993 winmm/tests: Don't mess with the mixer controls in non-interactive mode. 2007-12-05 13:47:30 +01:00
Aric Stewart 35ecb1b6ee winmm: Correct check for MIXER_GETLINECONTROLSF_ONEBYTYPE in mixerGetLineControlsA. 2007-11-29 15:32:03 +01:00
Michael Stefaniuc 3e8970602c dlls: Remove duplicate includes. 2007-11-19 13:54:46 +01:00
Dan Kegel 3d9b69f5a3 winmm: Avoid testing linecontrols if can't get line info. 2007-10-26 14:04:03 +02:00
Andrew Talbot 11f5ed28cb winmm: Fix some memory leaks. 2007-10-15 16:56:18 +02:00
Maarten Lankhorst d322d63b10 winmm: Set default sound driver to alsa,oss,coreaudio. 2007-10-09 17:52:46 +02:00
Americo Jose Melo c5ba90131e Update the Portuguese translation. 2007-09-13 13:28:26 +02:00
Francois Gouget cba68f4cd5 mmsystem: Better stick the the PSDK types. 2007-08-30 17:02:49 +02:00
Francois Gouget 7e8a9e3dfb winmm: Fix the mmTask*() prototypes. 2007-08-30 17:02:48 +02:00
Maarten Lankhorst 93b6f15826 winmm: Don't operate on freed data in timer. 2007-07-27 12:23:43 +02:00
Michael Stefaniuc d14da0763d winmm: Replace malloc with HeapAlloc. 2007-06-26 11:58:06 +02:00
Michael Stefaniuc cc2773008e winmm: Do not dump the version info when loading drivers. 2007-06-22 12:18:30 +02:00
Vedran Rodic f44bc89bc4 winmm: Fix PlaySound so it doesn't block when another sound is already playing. 2007-06-11 20:18:04 +02:00
Alexandre Julliard 86b40413fe winmm: Initialize the timer critical section statically. 2007-06-11 18:13:06 +02:00
Alexandre Julliard 3f20252e5e winmm: Maintain the timer list sorted by expiration time. 2007-06-11 18:11:03 +02:00
Alexandre Julliard e8af10e6b0 winmm: Convert the timer list to a standard Wine list. 2007-06-11 17:35:04 +02:00
Alexandre Julliard 1e178be862 winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance anyway. 2007-06-07 17:50:28 +02:00
Maarten Lankhorst 0383e4e499 winmm: Use unix fd's instead of win32 events to sync internal events in timer. 2007-06-07 17:20:01 +02:00
Alexandre Julliard 90d94efe10 winmm: Fix computation of sleep time until next timeout. 2007-06-07 16:22:48 +02:00
Dmitry Timoshkov 29b00e1a8c midimap: Fix compilation warnings in 64-bit mode. 2007-06-01 12:40:04 +02:00
Andrew Talbot 5f8d15027e winmm: Exclude unused headers. 2007-05-29 11:53:57 +02:00
Dmitry Timoshkov 3c9e7a7f33 wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility. 2007-05-25 20:37:56 +02:00
Maarten Lankhorst e2a1bc9804 winmm: Use criticalsection for determining wether timer is synchronously killable. 2007-05-07 15:36:42 +02:00
Maarten Lankhorst 0c6a63a062 winmm: Pass the right message to hwnd from mixer callback. 2007-04-23 13:55:06 +02:00
Maarten Lankhorst 35a8ee9340 winmm: Implement CALLBACK_WINDOW. 2007-04-16 12:12:46 +02:00
Andrew Talbot 3c78748cc1 winmm: Replace inline static with static inline. 2007-03-26 12:20:10 +02:00
Jan Zerebecki ca350ad2b1 winmm: Add DebugInfo to critical sections. 2007-03-12 13:40:57 +01:00
Andrew Talbot bb9dea6b29 winmm: Replace const pointer parameters with correct pointers to const. 2007-03-07 21:56:54 +01:00
Vitaly Lipatov c8bcbdb90d Some fixes in russian resources. 2007-02-09 11:48:28 +01:00
Andrew Talbot 77250f3ce8 winmm: Declare a function static. 2007-02-05 12:33:01 +01:00
Francois Gouget aab5e5856e Don't put single quotes around '%s' when using the debugstr_*() functions. 2007-01-18 12:55:50 +01:00
Francois Gouget 6834945ece winmm/tests: Use '%u' to print GetLastError(). 2007-01-18 12:55:32 +01:00
Francois Gouget 9279edfb03 winmm/tests: Replace some '#if 0's with 'if (0)'s.
Fix the code so it compiles without warnings.
2007-01-12 11:24:33 +01:00
Alexandre Julliard dc3961bc78 wineoss: Renamed the dlls/winmm/wineoss directory to dlls/wineoss.drv. 2007-01-10 13:46:14 +01:00
Alexandre Julliard ae0380d97f winenas: Renamed the dlls/winmm/winenas directory to dlls/winenas.drv. 2007-01-10 13:45:39 +01:00
Alexandre Julliard 7fc151d612 winejack: Renamed the dlls/winmm/winejack directory to dlls/winejack.drv. 2007-01-10 13:45:03 +01:00
Alexandre Julliard 851e6d7c4f wineesd: Renamed the dlls/winmm/wineesd directory to dlls/wineesd.drv. 2007-01-10 13:44:20 +01:00
Alexandre Julliard 9402089ea9 winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to dlls/winecoreaudio.drv. 2007-01-10 13:43:27 +01:00
Alexandre Julliard f972d66263 wineaudioio: Renamed the dlls/winmm/wineaudioio directory to dlls/wineaudioio.drv. 2007-01-10 13:42:34 +01:00
Alexandre Julliard 5f0241fd91 winearts: Renamed the dlls/winmm/winearts directory to dlls/winearts.drv. 2007-01-10 13:41:40 +01:00
Alexandre Julliard 01905338ea winealsa: Renamed the dlls/winmm/winealsa directory to dlls/winealsa.drv. 2007-01-10 13:40:39 +01:00
Kai Blin 6819fa520f winmm: Remove unused variable and if check (Coverity). 2007-01-08 12:35:25 +01:00
Nick Burns 7aab8810e1 winecoreaudio: Fix race condition in drvclose. 2007-01-02 20:29:43 +01:00
Alexandre Julliard f231a70f4c joystick.drv: Renamed the dlls/winmm/joystick directory to dlls/winejoystick.drv. 2006-12-29 14:29:20 +01:00
Ken Thomases 0e52c42aa6 winecoreaudio: Report actual supported input wave formats.
Also, added some output formats that Core Audio ought to be able to handle.
2006-12-29 12:49:43 +01:00
Ken Thomases fa84451647 winecoreaudio: Implement CoreAudio_wiAudioUnitIOProc, the input callback. 2006-12-29 12:49:43 +01:00
Ken Thomases 959ec2aa44 winecoreaudio: Implement widStart. 2006-12-29 12:49:43 +01:00
Ken Thomases c47c82a20b winecoreaudio: Implement widStop. 2006-12-29 12:49:43 +01:00
Ken Thomases 335ab8c1a2 winecoreaudio: Changed widReset to stop the audio unit. 2006-12-29 12:49:43 +01:00
Ken Thomases cff4da8db8 winecoreaudio: Add mechanism for cross-thread call of widHelper_NotifyCompletions.
wodSendNotifyInputCompletionsMessage sends the kWaveInNotifyCompletionsMessage
to the message thread, which calls widHelper_NotifyCompletions.
2006-12-29 12:49:43 +01:00
Ken Thomases 9ef54e4ebe winecoreaudio: Add widHelper_NotifyCompletions.
It scans for completed input wavehdrs, removes them from the queue,
and notifies the application that they're done.
2006-12-29 12:49:42 +01:00
Ken Thomases 19c75a4ec6 winecoreaudio: Store the device ID in the WINE_WAVEOUT structure. 2006-12-29 12:49:42 +01:00
Ken Thomases 127523d7a2 winecoreaudio: Allocate/deallocate audio buffers in widOpen/widClose. 2006-12-29 12:49:42 +01:00
Ken Thomases 4b904bbf13 winecoreaudio: Do additional setup in AudioUnit_CreateInputUnit.
It now returns in an output parameter the frame count that the AU will use.
Also, initialize the Audio Unit.
2006-12-29 12:49:42 +01:00
Ken Thomases 5c489283c9 winecoreaudio: Implement widDevInterfaceSize and widDevInterface. 2006-12-29 12:49:42 +01:00
Ken Thomases 503f9be161 winecoreaudio: Implement widReset. 2006-12-29 12:49:42 +01:00
Ken Thomases 58ea6abe72 winecoreaudio: Implement widAddBuffer. 2006-12-29 12:49:42 +01:00
Ken Thomases 5432adaaac winecoreaudio: Implement widOpen and widClose. 2006-12-29 12:49:42 +01:00
Ken Thomases 30a1b29351 winecoreaudio: Add AudioUnit_CreateInputUnit to create an input audio unit. 2006-12-29 12:49:42 +01:00
Ken Thomases 8ba3daaf5c winecoreaudio: Add stub implementation of CoreAudio_wiAudioUnitIOProc.
It will serve as the input callback called when our Audio Unit has sound
data available.
2006-12-29 12:49:41 +01:00
Ken Thomases 5319b64b39 winecoreaudio: Initial implementation of widGetDevCaps. 2006-12-29 12:49:41 +01:00
Ken Thomases eccfe6e8a3 winecoreaudio: Initial stub implementation of audio input support. 2006-12-29 12:49:41 +01:00
Ken Thomases 5cbc520318 winecoreaudio: Replace pthread mutex with OSSpinLock. 2006-12-21 12:08:37 +01:00
Ken Thomases 234558c2c7 winecoreaudio: Move a memset out of a mutex-guarded section. 2006-12-21 12:01:12 +01:00
Ken Thomases acf3499916 winecoreaudio: Merge wodReset and wodHelper_Reset. 2006-12-21 12:01:02 +01:00
Ken Thomases 3ade58b0b9 winecoreaudio: Change to faster non-recursive mutex. 2006-12-21 12:00:49 +01:00
Ken Thomases d5975872af winecoreaudio: Push notify of completions from render callback to message thread.
Rather than have the Audio Unit render callback traverse the queue of wave
headers looking for complete ones, and sending a message to the message thread
for each one it finds, just send one message to tell the message thread to do
that work itself.  The render callback is called in a real-time priority
thread and is expected to return as quickly as possible.
2006-12-21 12:00:36 +01:00
Ken Thomases e24533cb6d winecoreaudio: Remove more mutexes from around Audio Unit calls. 2006-12-21 12:00:20 +01:00
Ken Thomases 0bb13dd31c winecoreaudio: Report when the render callback is just providing silence. 2006-12-21 12:00:09 +01:00
Ken Thomases 82fff94c33 winecoreaudio: Lift mutex lock/unlock out of wodHelper_PlayPtrNext to caller. 2006-12-21 11:59:53 +01:00
Ken Thomases bdbe803cb6 winecoreaudio: Leave audio unit running, except when waveout device paused. 2006-12-21 11:45:36 +01:00
Ken Thomases aef21c19c1 winecoreaudio: Eliminate unnecessary variable, unreachable code, unused retval. 2006-12-21 11:45:11 +01:00
Ken Thomases 7cecf7a40a winecoreaudio: Inline & eliminate the specializations of wodHelper_BeginWaveHdr. 2006-12-21 11:44:42 +01:00
Ken Thomases be4a17876d winecoreaudio: Specialize wodHelper_BeginWaveHdr for its two callers and simplify.
wodHelper_PlayPtrNext is only called when state == WINE_WS_PLAYING.  Also, it
clears dwPartialOffset itself.

wodWrite only calls wodHelper_BeginWaveHdr[Write] with a non-NULL lpWaveHdr
parameter.  wodWrite is not called from the Audio Unit render callback, so it
can use Wine debug channels.
2006-12-21 11:43:21 +01:00
Ken Thomases 551f7d94a3 winecoreaudio: Simplify handling of BEGIN+ENDLOOP wave headers. 2006-12-21 11:42:48 +01:00
Ken Thomases 91c5ec9616 winecoreaudio: Extract wodHelper_CheckForLoopBegin() from wodHelper_BeginWaveHdr().
This refactoring prepares the ground for subsequent refactoring of
wodHelper_BeginWaveHdr.
2006-12-21 11:42:28 +01:00
Ken Thomases a6da8f212d winecoreaudio: Create port for sending messages to the callback thread only once. 2006-12-21 11:42:12 +01:00
Ken Thomases 23bb112b10 winecoreaudio: Control the fprintf's by the Wine debug channel on/off settings. 2006-12-21 11:42:05 +01:00
Dmitry Timoshkov 0b988c73c9 winearts: Make some data const. 2006-12-14 20:11:17 +01:00
Dmitry Timoshkov b05173486a wineoss: Make some data const. 2006-12-14 20:10:58 +01:00
Marcus Meissner 4d52a421d7 Made some functions static. 2006-12-12 12:10:57 +01:00
Francois Gouget 89f4b5645f winmm: Add a Portuguese translation (contributed by Americo Jose Melo). 2006-11-28 12:13:24 +01:00
Andrew Talbot 89bb54601f winmm/wineoss: Cast-qual warning fix. 2006-11-24 12:56:31 +01:00
Francois Gouget b5f104d05b Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages that have multiple sublanguages. 2006-11-24 11:49:32 +01:00
Andrew Talbot 529aa7de90 winmm: Cast-qual warnings fix. 2006-11-24 11:47:44 +01:00
Andrew Talbot a8f02b8bb7 winmm: Cast-qual warnings fix. 2006-11-24 11:47:39 +01:00