Commit graph

378 commits

Author SHA1 Message Date
Yuxuan Shui fa145fd517 dmusic: Fix loading wave data from soundfont. 2024-02-06 22:56:02 +01:00
Rémi Bernon 1b75341346 dmusic: Clone streams instead of allocating wave data.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56117
2024-01-09 23:59:59 +01:00
Michael Stefaniuc 055e632216 dmusic: Remove superfluous casts to self. 2023-11-14 11:31:27 +01:00
Rémi Bernon 051418c0c0 dmime: Send MIDI_SYSTEM_RESET message on performance reset. 2023-11-13 22:37:51 +01:00
Alexandre Julliard acad49573a makefiles: Always use the global SOURCES variable for .c files. 2023-11-01 22:44:03 +01:00
Alexandre Julliard c432eac726 makefiles: Always use the global SOURCES variable for .idl files. 2023-11-01 22:43:50 +01:00
Rémi Bernon 347fb8bc8e dmusic: Ignore some known wave chunks. 2023-10-26 15:27:47 -05:00
Rémi Bernon 17416be982 dmime: Ignore badly formed wave if format and data have been found. 2023-10-26 15:27:47 -05:00
Rémi Bernon c8b9a2dcfd dmusic/tests: Skip test_default_gm_collection if gm.dls is missing.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55688
2023-10-25 14:27:15 -05:00
Rémi Bernon 7c9e8b9c4e dswave: Use the dmusic wave object implementation.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
2023-10-20 19:24:08 +02:00
Rémi Bernon 80e6310a88 dmusic: Use the IDirectMusicObject interface for waves.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
2023-10-20 19:24:08 +02:00
Rémi Bernon dc0431b819 dmusic: Implement IDirectMusicObject interface on wave objects.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
2023-10-20 19:24:08 +02:00
Rémi Bernon 2c4fc0adcf dmusic: Use a dmusic_midi.h header for MIDI messages. 2023-10-18 20:47:00 +02:00
Rémi Bernon 72165fc8ec dmusic: Forward IDirectMusicPort_Activate to synth and sink. 2023-10-17 21:48:20 +02:00
Rémi Bernon f00d8639e6 dmusic: Set synth sink master clock when creating port. 2023-10-17 21:48:20 +02:00
Rémi Bernon 4a7a8a7ecc dmime: Implement GUID_(Download|Unload)FromAudioPath for wave track.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=9027
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34751
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45135
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48220
2023-10-11 22:17:26 +02:00
Rémi Bernon 7bbd4be52a dmime: Create a wave track when loading a segment from a .wav.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=9027
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34751
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45135
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48220
2023-10-11 22:17:26 +02:00
Rémi Bernon 15c4c02eeb dmusic: Split wave entry points to dmusic_wave.h. 2023-10-11 22:16:58 +02:00
Alex Henrie 8b20c58801 include: Introduce wine_dbgstr_fourcc and debugstr_fourcc. 2023-10-06 20:49:52 +02:00
Rémi Bernon 92985253e7 dmband: Implement band track GUID_ConnectToDLSCollection parameter. 2023-09-29 21:41:25 +02:00
Rémi Bernon 086e114f05 dmusic: Implement SoundFont2 instrument parsing. 2023-09-29 17:23:10 +02:00
Rémi Bernon 215a55d603 dmusic: Implement SoundFont2 wave sample parsing. 2023-09-29 17:23:10 +02:00
Rémi Bernon b733a46ada dmusic: Implement SoundFont2 collection parsing. 2023-09-29 17:23:10 +02:00
Rémi Bernon 182338bab2 dmusic: Avoid crashing in traces if wave doesn't have a WSMPL. 2023-09-29 17:23:10 +02:00
Rémi Bernon 2a1fd9851c dmusic: Avoid leaking articulations when freeing regions. 2023-09-29 17:23:10 +02:00
Rémi Bernon 767c5ddbf9 dmusic/tests: Test default gm.dls sound font instruments. 2023-09-29 17:23:10 +02:00
Rémi Bernon ecb38bf1c9 dmusic: Keep the original instrument patch in the entry. 2023-09-20 22:15:30 +02:00
Rémi Bernon b6f1a1a186 dmusic/tests: Fixup chunk alignment in steam_end_chunk. 2023-09-20 22:15:29 +02:00
Rémi Bernon 5626be6bb8 dmusic: Implement instrument articulation downloads. 2023-09-18 11:01:47 +02:00
Rémi Bernon a788bf9641 dmusic: Parse instrument regions articulation lists. 2023-09-18 11:01:47 +02:00
Rémi Bernon d32fb707ad dmusic: Implement downloading wave to port. 2023-09-18 11:01:47 +02:00
Rémi Bernon f54b0a5a9b dmusic: Keep an internal ref on the instrument's collection. 2023-09-18 11:01:47 +02:00
Rémi Bernon 82d1794cd4 dmusic: Parse collection wave lists. 2023-09-18 11:01:46 +02:00
Rémi Bernon 2f5608efd1 dmusic: Parse collection wave table. 2023-09-18 11:01:46 +02:00
Rémi Bernon 120a743c96 dmusic: Rewrite downloading instrument to port. 2023-09-18 11:01:46 +02:00
Rémi Bernon 0cb208cec2 dmusic: Avoid swallowing collection Load failures. 2023-09-18 11:01:46 +02:00
Rémi Bernon f71315c849 dmusic: Add more parsed instruments traces. 2023-09-14 22:03:53 +02:00
Rémi Bernon 3fa399b145 dmusic: Parse instrument name from INFO list. 2023-09-14 22:03:53 +02:00
Rémi Bernon d30f914de6 dmusic: Rewrite collection DLS chunk parsing. 2023-09-14 22:03:53 +02:00
Rémi Bernon 866d4998ed dmusic: Rewrite collection INFO list parsing. 2023-09-14 22:03:53 +02:00
Rémi Bernon af79bf4f22 dmusic: Rewrite collection ptbl chunk parsing. 2023-09-14 22:03:53 +02:00
Rémi Bernon bb2a8312b1 dmusic: Rewrite collection lins list parsing. 2023-09-14 22:03:53 +02:00
Rémi Bernon 4ae866a0a7 dmusic: Stop leaking instruments on collection release. 2023-09-11 20:41:34 +02:00
Rémi Bernon 572125edf6 dmusic: Cleanup collection instrument iteration loops. 2023-09-11 20:41:34 +02:00
Rémi Bernon ff4cb785cb dmusic: Allocate and parse instruments in a single pass. 2023-09-11 20:41:34 +02:00
Rémi Bernon 01127ce474 dmusic: Rewrite instrument ins chunk parsing. 2023-09-11 20:41:34 +02:00
Rémi Bernon b5fd618719 dmusic: Rewrite instrument lart list parsing. 2023-09-11 20:41:34 +02:00
Rémi Bernon 9e9b5d2980 dmusic: Rewrite instrument lrgn list parsing. 2023-09-11 20:41:34 +02:00
Rémi Bernon 7684880546 dmusic: Reset riff chunk type to 0 when it is invalid. 2023-09-11 20:41:34 +02:00
Rémi Bernon 52d3f7ab09 dmusic: Use a struct list for instrument regions. 2023-09-11 20:41:34 +02:00