Commit graph

383 commits

Author SHA1 Message Date
Rémi Bernon 428eb3e87c dmime: Add a IDirectMusicTool interface to the performance. 2023-09-11 20:41:35 +02:00
Rémi Bernon 2e25af4fd3 dmime: Add a IDirectMusicGraph interface to the performance. 2023-09-11 20:41:35 +02:00
Rémi Bernon e5ae7f90ee dmime: Fix indentation in IDirectMusicPerformance_QueryInterface. 2023-09-11 20:41:35 +02:00
Rémi Bernon c927967a76 dmime: Get rid of IDirectMusicPerformance8Impl typedef. 2023-09-11 20:41:34 +02:00
Rémi Bernon 52f7ae4932 dmime: Rename IDirectMusicPerformance8Impl method prefix to performance. 2023-09-11 20:41:34 +02:00
Rémi Bernon 698605ce41 dmime: Fix indentation in DirectMusicPerformance class constructor. 2023-09-11 20:41:34 +02:00
Rémi Bernon 2dc15d3943 dmime: Use the correct interface methods. 2023-09-11 20:41:34 +02:00
Rémi Bernon 0feb0cda74 dmime: Use CRT allocation functions. 2023-09-11 20:41:34 +02:00
Rémi Bernon 6e1e7a88fd dmime: Always return S_FALSE from DllCanUnloadNow. 2023-09-11 20:41:34 +02:00
Rémi Bernon 5e68fa6394 dmime/tests: Test IDirectMusicTool message reception delay. 2023-09-08 11:05:23 +02:00
Rémi Bernon 2ac84e2b94 dmime/tests: Test IDirectMusicTool message reception filter. 2023-09-08 11:05:23 +02:00
Rémi Bernon e80c1d90f1 dmime/tests: Test IDirectMusicPerformance_*PMsg methods. 2023-09-08 11:05:23 +02:00
Rémi Bernon a874f60cae dmime/tests: Test IDirectMusicPerformance time conversion. 2023-09-08 11:05:23 +02:00
Rémi Bernon cd5c9b800d dmime/tests: Test performance IDirectMusicGraph interface. 2023-09-08 11:05:23 +02:00
Rémi Bernon 5efaae40de dmime/tests: Test performance IDirectMusicTool interface. 2023-09-08 11:05:23 +02:00
Rémi Bernon 881e424683 dmime/tests: Test IDirectMusicGraph interface with a dummy tool. 2023-09-08 11:05:23 +02:00
Alistair Leslie-Hughes 0774873ea2 dmime: Store WAVE data when Loading. 2023-08-10 09:54:37 +09:00
Alistair Leslie-Hughes cc59b78316 dmime: Remove DECLSPEC_HIDDEN usage. 2023-06-29 21:34:48 +02:00
Michael Stefaniuc c92d01016b dmime: Implement the IDirectMusicSegment8_Clone() method.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53941
2022-12-19 11:10:28 +01:00
Michael Stefaniuc 354ccf3fdb dmime: Split the segment object creation into a separate helper. 2022-12-19 11:10:28 +01:00
Alex Henrie e1e651c83c dmime: Don't force a calling convention on internal functions. 2022-11-24 22:20:21 +01:00
Michael Stefaniuc 690e012f01 dmime: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 11:02:12 +01:00
Michael Stefaniuc f648478075 dmime/tests: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 11:02:12 +01:00
Michael Stefaniuc 1383b841c5 dmsynth: Implement the synth's Open and Close methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 10:47:15 +01:00
Michael Stefaniuc dd04b94723 dmime: The soft synth doesn't supports sharing the channel groups.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 10:47:12 +01:00
Michael Stefaniuc da5c70ce8d dmime: Fix the size of the DMUS_PORTPARAMS.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 10:47:08 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Michael Stefaniuc 48f19c76cf dmime: Fixup the Wave track parser.
An incomplete patch was prematurely added with 854895f70a

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-05 10:23:47 +01:00
Alistair Leslie-Hughes 854895f70a dmime: Parse Wave track stream.
For Tron 2.0.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 10:24:43 +01:00
Michael Stefaniuc 460ae3d82c dmime: Accept a DMUS_IO_SEGMENT_HEADER without rtPlayStart field.
Tron 2.0 has a segment header of 56, so is missing the rtPlayStart field.
Based on a patch by Alistair Leslie-Hughes.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Alexandre Julliard 088a787a2c makefiles: Make -mno-cygwin the default.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Alexandre Julliard 5d82baf974 winecrt0: Add a default implementation DllRegisterServer()/DllUnregisterServer().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Andrey Gusev 7d14318c18 dmime: Fix misplaced parentheses.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 21:00:33 +02:00
Michael Stefaniuc ee2e44f790 dmime: Get rid of the DMUS_PRIVATE_SEGMENT_ITEM typedef.
Also move the struct to its only user.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:50 +02:00
Michael Stefaniuc 59aa29cd1d dmime: dmutils.h is no longer needed.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:49 +02:00
Michael Stefaniuc 0bda3a3d69 dmime: Reimplement the segment item parser.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:39 +02:00
Michael Stefaniuc dbc3449e29 dmime: Simplify the parse_segments_list() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:37 +02:00
Michael Stefaniuc 2eb07b1773 dmime: Reimplement IPersistStream_Load() for SegTrigger track.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 10:51:34 +02:00
Alistair Leslie-Hughes 6a67f56a52 dmime: Parse TimeSig track data.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-07 17:44:49 +02:00
Michael Stefaniuc c64b31c71d dmime: Simplify loading/storing of the Tempo Track data.
Fixes loading more than one tempo items.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 11:11:52 +02:00
Michael Stefaniuc 4fc685a8b7 dmime: Constify the chunk parameter of stream_skip_chunk().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 11:11:46 +02:00
Michael Stefaniuc 199af0b732 dmime: Reimplement the reference list parser.
Bits and pieces from a patch by Alistair Leslie-Hughes.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-13 21:22:11 +02:00
Alistair Leslie-Hughes a897d858e4 dmime: Support more common chunks.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-08 00:46:19 +02:00
Alistair Leslie-Hughes d1f858e03d dmime: Parse lyric track data.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-01 22:08:16 +02:00
Alistair Leslie-Hughes f0d35a96b2 dmime: Reimplement IDirectMusicAudioPath Activate.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 21:18:52 +01:00
Alistair Leslie-Hughes 7dd53d89c3 dmime: Store flags when parsing track data.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 21:18:50 +01:00
Alistair Leslie-Hughes b075088ec5 dmime: IDirectMusicPerformance8 GetGraph return DMUS_E_NOT_FOUND if graph not set.
Just ensure the pointer and return value are correct from GetGraph.  I plan
to extend these tests at a later date.  The tests also show that IDirectMusicPerformance8
has a internal IDirectMusicGraph implementation, returned via QueryInterface.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 12:09:38 +01:00
Alistair Leslie-Hughes b28512f6c7 dmime: Free more interfaces in IDirectMusicPerformance FreePMsg.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 09:01:44 +01:00
Alistair Leslie-Hughes 04fe670aa6 dmime: IDirectMusicGraph GetTool isn't a stub.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 09:01:41 +01:00
Michael Stefaniuc d3a0cd77d8 dmime: Implement IDirectMusicPerformance8_PChannelInfo().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:54:55 +01:00