Commit Graph

41 Commits

Author SHA1 Message Date
Huw Davies aa3df3f75e winecoreaudio: Remove unnecessary buffer sizes.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 17:57:49 +01:00
Andrew Eikum 9bc545451b winecoreaudio.drv: Fix memory leak.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-14 17:30:30 +01:00
Huw Davies a7f0647dec winecoreaudio: Actually free the stream.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-22 18:57:26 +01:00
Huw Davies e03611ee59 winecoreaudio: Set the buffer to NULL after freeing.
This ensures the subsequent allocation is free to pick a new location.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52202
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-22 18:57:24 +01:00
Alexandre Julliard 143bd63b27 include: Remove some no longer used Unicode functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Huw Davies 92f7c86f68 winecoreaudio: Move the midi input event processing to the unixlib.
Notifications of incoming data are now directly added to a notify
ring-buffer by macOS's midi read callback.  The ring-buffer is
implemented with an unused sentinel directly before the read ptr to
distinguish between the full vs empty state.  Notifications are
processed by the client's notify thread via the midi_notify_wait
syscall.

Note that the read callback thread is not a Win32 thread, so the
Win32 api cannot be used in anything that it calls.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Huw Davies 06bb1bdb14 winecoreaudio: Introduce a notification thread.
Currently the thread just blocks until told to quit by midi_release.
Eventually, this thread will dispatch the MIM_DATA and MIM_LONGDATA
notifications and essentially replace the existing RunLoop-based
mechanism.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Huw Davies 9eeee3ddbf winecoreaudio: Move the midi in lock to the unixlib.
The syscall itself is temporary.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-29 23:25:46 +01:00
Huw Davies a9dec89f49 winecoreaudio: Move midi_in_open to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-29 23:25:46 +01:00
Huw Davies ec9d2a7773 winecoreaudio: Move midi_out_open to the unixlib.
Notifications are filled out by the unixlib and returned to
the user-side for dispatch.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 18:10:30 +01:00
Huw Davies e506d99ceb winecoreaudio: Move midi_init and midi_release to the unixlib.
midi_init temporarily returns unix-side info, which will eventually
be removed.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 18:10:28 +01:00
Huw Davies 37265acd51 winecoreaudio: Make the coreaudio_stream structure private to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:56 +01:00
Huw Davies b3bfa1e54b winecoreaudio: Move set_volumes to the unixlib.
The session setvol helper has been removed to reduce the number of
helper functions as the loop over the session's clients isn't very
complicated.

Session mute is handled by setting the master volume to zero.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:53 +01:00
Huw Davies 22981cc913 winecoreaudio: Move is_started to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:51 +01:00
Huw Davies b884ca314d winecoreaudio: Move get_frequency to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:49 +01:00
Huw Davies 46f5083e23 winecoreaudio: Move get_position to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:42 +01:00
Huw Davies 5ff056f399 winecoreaudio: Move get_next_packet_size to the unixlib.
The capture_resample syscall can now be removed.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 18:47:39 +01:00
Huw Davies 58c8cafb10 winecoreaudio: Move release_capture_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:13 +01:00
Huw Davies d9a2ae562c winecoreaudio: Move get_capture_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies e9b9229754 winecoreaudio: Move release_render_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies c45df2763c winecoreaudio: Move get_render_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 5e97e50e95 winecoreaudio: Move reset to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies ac960ef94d winecoreaudio: Move stop to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 272a7b0ba5 winecoreaudio: Move start to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 2dd83eed7b winecoreaudio: Move get_current_padding to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 881e0f18fb winecoreaudio: Move get_latency to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 68c63beeca winecoreaudio: Move get_buffer_size to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies de39001552 winecoreaudio: Add a temporary capture_resample syscall.
Eventually everything that calls this will reside in the unixlib.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies 75b57ea13d winecoreaudio: Move is_format_supported to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 21:02:12 +01:00
Huw Davies bdbb8591c6 winecoreaudio: Move get_mix_format to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:51 +01:00
Huw Davies 129c7fafe6 winecoreaudio: Move create_stream and release_stream to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:51 +01:00
Huw Davies c84923b200 winecoreaudio: Move get_endpoint_ids to a unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-17 16:23:01 +01:00
Huw Davies 0e52d77f92 winecoreaudio: Move DriverProc to midi.c.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-17 16:22:51 +01:00
Alexandre Julliard a9a08dbc3d libwine: Remove wine/library.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 16:26:17 +02:00
Andrew Eikum a773b16d79 winecoreaudio.drv: Remove wave, mixer, and dsound driver code. 2011-09-26 18:34:53 +02:00
Alexandre Julliard 41d9d0a2f3 winecoreaudio.drv: Remove unnecessary ifdefs. 2011-03-28 22:15:12 +02:00
Ken Thomases c885d05378 coreaudio: Signal driver load failure if any component fails to initialize. 2008-03-12 12:01:40 +01:00
Ken Thomases fa2d39e45f coreaudio: Standardize on DRV_SUCCESS/FAILURE status codes for setup functions. 2008-03-12 12:01:31 +01:00
Emmanuel Maillard e64485d5a9 winecoreaudio: Initial mixer support on Mac OS X.
Find all lines and initialize controls.
2007-05-14 17:34:26 +02:00
Emmanuel Maillard 7ad29c8bb7 winecoreaudio: Initial MIDI support on Mac OS X. 2007-04-25 13:37:26 +02:00
Alexandre Julliard 9402089ea9 winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to dlls/winecoreaudio.drv. 2007-01-10 13:43:27 +01:00