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