Rémi Bernon
|
2414bb4004
|
dmime: Clear all pending messages in IDirectMusicPerformance_Stop.
|
2023-11-13 22:37:51 +01:00 |
|
Rémi Bernon
|
fe171ec86b
|
dmime/tests: Test that IDirectMusicPerformance_Stop clears messages.
|
2023-11-13 22:37:51 +01:00 |
|
Rémi Bernon
|
ddd877d1c7
|
dmime/tests: Avoid discarding old notifications in test.
|
2023-11-13 22:37:51 +01:00 |
|
Rémi Bernon
|
9fb8469bbe
|
dmime: Avoid leaking performance channel block ports.
|
2023-11-10 20:54:41 +01:00 |
|
Rémi Bernon
|
467f3a2adb
|
dmime: Simplify and rename channel_block_set to channel_block_init.
|
2023-11-10 20:54:41 +01:00 |
|
Rémi Bernon
|
0e73870ecd
|
dmime: Introduce a new performance_get_channel helper.
|
2023-11-10 20:54:41 +01:00 |
|
Rémi Bernon
|
79a98eb7b9
|
dmime: Use a dedicated struct channel to hold performance channels.
|
2023-11-10 20:54:41 +01:00 |
|
Rémi Bernon
|
53035c6977
|
dmime: Rename struct pchannel_block to struct channel_block.
|
2023-11-10 20:54:40 +01:00 |
|
Rémi Bernon
|
18a81b3cb2
|
dmime: Better implement performance times with tempo track.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
29940435fa
|
dmime: Support playing secondary and control segments.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
8f9faf8868
|
dmime/tests: Test playing tempo track effect on performance times.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
c6eca9276b
|
dmime/tests: Add helpers to scale and check music time with tempo.
Be flexible on the comparison to ignore rounding errors.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
2d1f46c221
|
dmime: Fix tempo track GetParam with GUID_TempoParam implementation.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
92959b315b
|
dmime/tests: Test tempo track GetParam with GUID_TempoParam.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
7a9e45ac13
|
dmime/tests: Test tempo track Play and DMUS_PMSGT_TEMPO messages.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
f13fa16f01
|
dmime: Implement IDirectMusicPerformance_GetSegmentState semi-stub.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
617d7fc9b8
|
dmime/tests: Test IDirectMusicPerformance_GetSegmentState.
|
2023-11-09 23:00:40 +01:00 |
|
Rémi Bernon
|
442db8a131
|
dmime: Send notification messages from segment_play_chunk.
|
2023-11-07 23:00:10 +01:00 |
|
Rémi Bernon
|
5604397135
|
dmime: Implement segment state chunked playback.
|
2023-11-07 23:00:10 +01:00 |
|
Rémi Bernon
|
63661495b4
|
dmime: Support start_time and end_time Play parameters.
|
2023-11-07 23:00:09 +01:00 |
|
Rémi Bernon
|
0b98e472b4
|
dmime: Fix performance message requeue-ing from the message thread.
|
2023-11-07 23:00:09 +01:00 |
|
Rémi Bernon
|
b1bd72343e
|
dmime/tests: Check more notification / dirty messages fields.
|
2023-11-06 21:37:54 +01:00 |
|
Rémi Bernon
|
a66b6f96b6
|
dmime: Send DMUS_NOTIFICATION_SEGALMOSTEND before DMUS_NOTIFICATION_SEGEND.
|
2023-11-06 21:37:54 +01:00 |
|
Rémi Bernon
|
60538c57cd
|
dmime: Use the current time if PlaySegmentEx start_time is 0.
|
2023-11-06 21:37:54 +01:00 |
|
Rémi Bernon
|
a429a3fb4b
|
dmime/tests: Add a track and longer segment to notifications tests.
|
2023-11-06 21:37:54 +01:00 |
|
Rémi Bernon
|
87dba38469
|
dmime: Send notification messages with DMUS_PMSGF_TOOL_IMMEDIATE.
Then send them again with DMUS_PMSGF_TOOL_ATTIME for the notification
queue.
|
2023-11-06 21:37:49 +01:00 |
|
Alexandre Julliard
|
7ccb5df0fc
|
makefiles: Always use the global SOURCES variable for .rc files.
|
2023-11-01 22:43:56 +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
|
377ba8a7d1
|
dmime: Use an internal performance message for segment end.
|
2023-10-27 17:02:54 -05:00 |
|
Rémi Bernon
|
aec78adee9
|
dmime: Use time_offset to align track start with music time.
|
2023-10-27 17:02:54 -05:00 |
|
Rémi Bernon
|
25a3449832
|
dmime: Pass PlaySegmentEx start time as track time offset.
|
2023-10-27 17:02:54 -05:00 |
|
Rémi Bernon
|
c227e8bb54
|
dmime: Pass IDirectMusicPerformance8 to segment state functions.
|
2023-10-27 17:02:54 -05:00 |
|
Rémi Bernon
|
f65cf1ed6d
|
dmime: Remove shadowing local hr variable.
|
2023-10-26 15:27:47 -05:00 |
|
Rémi Bernon
|
bff7301699
|
dmime: Skip segment chunk on parsing failure (or success).
|
2023-10-26 15:27:47 -05:00 |
|
Rémi Bernon
|
7b66268fab
|
dmime: Skip sequence track chunk on parsing failure.
|
2023-10-26 15:27:47 -05:00 |
|
Rémi Bernon
|
9ad97f69b4
|
dmime: Force recompute MIDI message reference time.
Fixes 65e388137c , which is otherwise no-op
without this change.
|
2023-10-25 14:27:15 -05:00 |
|
Rémi Bernon
|
bbdea3afc3
|
dmime/tests: Ignore failure on missing gm.dls in test_band_track_play.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55722
|
2023-10-25 14:27:15 -05:00 |
|
Rémi Bernon
|
b971c55a3a
|
dmime/tests: Avoid checking message segment state reference count.
|
2023-10-25 14:27:15 -05:00 |
|
Rémi Bernon
|
3e31e29d65
|
dmime/tests: Remove flaky track playing state test.
This fails regularly on Win7.
|
2023-10-25 14:27:13 -05:00 |
|
Rémi Bernon
|
231dd330cf
|
dmime: Avoid releasing the newly created graph twice.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55790
|
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
|
b1bfc52676
|
dmime: Return hr from wave track SetParam GUID_DownloadToAudioPath.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
|
2023-10-20 19:24:08 +02:00 |
|
Rémi Bernon
|
0431c88a9d
|
dmime: Return S_OK from wave track SetParam GUID_UnloadFromAudioPath.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
|
2023-10-20 19:24:08 +02:00 |
|
Rémi Bernon
|
4d0c3d89a4
|
dmime: Avoid crashing when purging notification messages.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55792
|
2023-10-20 19:24:08 +02:00 |
|
Rémi Bernon
|
6631e6bc2d
|
dmime: Remove FIXME from methods now mostly implemented.
|
2023-10-18 20:47:00 +02:00 |
|
Rémi Bernon
|
8a4989f3a6
|
dmime: Translate some DMUS_CURVE_PMSG messages to MIDI.
|
2023-10-18 20:47:00 +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
|
65e388137c
|
dmime: Adjust MIDI message time with DMUS_NOTE_PMSG nOffset.
|
2023-10-18 20:47:00 +02:00 |
|
Rémi Bernon
|
5a66857fb4
|
dmime: Don't interrupt track iteration if SetParam failed.
|
2023-10-18 20:47:00 +02:00 |
|
Rémi Bernon
|
12d3ccb495
|
dmime: Only use index if group is set in IDirectMusicSegment_SetParam.
|
2023-10-18 20:47:00 +02:00 |
|
Rémi Bernon
|
10a1e533c3
|
dmband: Download segment tracks if performance auto-download is set.
|
2023-10-18 20:46:59 +02:00 |
|
Rémi Bernon
|
1014bab951
|
dmime: Use latency time to decide when to process messages.
|
2023-10-17 21:48:20 +02:00 |
|
Rémi Bernon
|
d0f5446696
|
dmime: Update performance latency time with port latency.
|
2023-10-17 21:48:20 +02:00 |
|
Rémi Bernon
|
a8763aab6f
|
dmime: Use port latency time for messages with -1 time.
|
2023-10-17 21:48:20 +02:00 |
|
Rémi Bernon
|
d5e156fa7f
|
dmime: Rewrite message thread with a condition variable.
|
2023-10-17 21:48:20 +02:00 |
|
Rémi Bernon
|
a6710afc26
|
dmime: Translate DMUS_PMSGT_PATCH to DMUS_PMSGT_MIDI messages.
|
2023-10-13 09:59:24 +02:00 |
|
Rémi Bernon
|
f74fe2e26b
|
dmime: Translate DMUS_PMSGT_NOTE to DMUS_PMSGT_MIDI messages.
|
2023-10-13 09:59:24 +02:00 |
|
Rémi Bernon
|
a4b006e723
|
dmime: Output DMUS_MIDI_PMSG into a music buffer on the port.
|
2023-10-13 09:59:24 +02:00 |
|
Rémi Bernon
|
e3b23cb66e
|
dmime: Implement band track IDirectMusicTrack_Play.
|
2023-10-13 09:59:24 +02:00 |
|
Rémi Bernon
|
fd68076c36
|
dmime: Implement sequence track IDirectMusicTrack_Play.
|
2023-10-13 09:59:24 +02:00 |
|
Rémi Bernon
|
16f9bfd23f
|
dmime: Play direct sound buffer from DMUS_PMSGT_WAVE message.
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
|
edad780922
|
dmime: Implement IDirectMusicTrack_Play for the 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
|
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
|
6c1bf1f3a9
|
dmime: Include dmobject.h in dmime_private.h.
|
2023-10-11 22:16:58 +02:00 |
|
Rémi Bernon
|
51c664b227
|
dmime: Get rid of the IDirectMusicWaveTrack typedef.
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:16:58 +02:00 |
|
Rémi Bernon
|
d0c3a0e03d
|
dmime/tests: Queue the message before calling SendPMsg twice.
|
2023-10-10 10:14:08 +02:00 |
|
Rémi Bernon
|
3e19ca928e
|
dmime: Call IDirectMusicTrack_(Init|End)Play from the segment state.
|
2023-10-09 11:35:15 +02:00 |
|
Rémi Bernon
|
7a678903fb
|
dmime: Implement IDirectMusicPerformance_GetNotificationPMsg.
|
2023-10-09 11:35:15 +02:00 |
|
Rémi Bernon
|
3de1bc035e
|
dmime: Send DMUS_PMSGT_NOTIFICATION messages from the performance.
Keeping the segment state referenced until its playback ends.
|
2023-10-09 11:35:13 +02:00 |
|
Rémi Bernon
|
664caf6ed7
|
dmime: Send DMUS_PMSGT_DIRTY messages from the performance.
|
2023-10-09 11:35:13 +02:00 |
|
Rémi Bernon
|
ac832b97ae
|
dmime: Free all pending messages after CloseDown.
|
2023-10-09 11:35:13 +02:00 |
|
Rémi Bernon
|
299698140a
|
dmime: Keep messages with the same time ordered.
|
2023-10-09 11:35:13 +02:00 |
|
Rémi Bernon
|
b201cf1bca
|
dmime/tests: Tests interaction between CloseDown and notifications.
|
2023-10-09 11:35:13 +02:00 |
|
Rémi Bernon
|
45d1c00eea
|
dmime: Introduce a new segment_state_create constructor.
|
2023-10-04 11:28:32 +02:00 |
|
Rémi Bernon
|
9cb0142632
|
dmime: Redirect IDirectMusicPerformance_PlaySegment to PlaySegmentEx.
|
2023-10-04 11:28:32 +02:00 |
|
Rémi Bernon
|
c6e6f87a89
|
dmime: Implement some segment state default values.
|
2023-10-04 11:28:32 +02:00 |
|
Rémi Bernon
|
94386b4fba
|
dmime: Get rid of the IDirectMusicSegmentState8Impl typedef.
|
2023-10-04 11:28:32 +02:00 |
|
Rémi Bernon
|
939162b674
|
dmime: Rename DirectMusicSegmentState8 method prefix to segment_state.
|
2023-10-04 11:28:32 +02:00 |
|
Rémi Bernon
|
3c4d83609e
|
dmime: Implement IDirectMusicPerformance_DownloadInstrument.
|
2023-09-29 21:41:26 +02:00 |
|
Rémi Bernon
|
17f68bfabf
|
dmime: Implement IDirectMusicSegment_(Download|Unload).
|
2023-09-29 21:41:26 +02:00 |
|
Rémi Bernon
|
8645d9eb4e
|
dmime: Implement IDirectMusicSegment_SetParam.
|
2023-09-29 21:41:25 +02:00 |
|
Rémi Bernon
|
406f1783a9
|
dmime/tests: Test segment state and playing a custom track.
|
2023-09-29 21:41:25 +02:00 |
|
Rémi Bernon
|
0d3b83c021
|
dmime/tests: Add some tests for GUID_ConnectToDLSCollection.
|
2023-09-29 21:41:25 +02:00 |
|
Rémi Bernon
|
b733a46ada
|
dmusic: Implement SoundFont2 collection parsing.
|
2023-09-29 17:23:10 +02:00 |
|
Rémi Bernon
|
9e0487c4cc
|
dmime: Return DMUS_E_AUDIOPATH_INACTIVE when audio paths are not enabled.
|
2023-09-28 23:21:46 +02:00 |
|
Rémi Bernon
|
0fb4e5ec47
|
dmime: Return DMUS_E_AUDIOPATHS_IN_USE when audio paths are in use.
|
2023-09-28 23:21:46 +02:00 |
|
Rémi Bernon
|
9788fb6911
|
dmime: Initialize performance in Init rather than InitAudio.
|
2023-09-28 23:21:46 +02:00 |
|
Rémi Bernon
|
50b09dcf11
|
dmime: Set the port direct sound before activating it.
|
2023-09-28 23:21:46 +02:00 |
|
Rémi Bernon
|
3400e41d5c
|
dmime/tests: Test performance Init with a created port.
Final Fantasy VIII does this, more or less, and needs Init to succeed.
|
2023-09-28 23:21:44 +02:00 |
|
Rémi Bernon
|
de27d59a8a
|
dmime/tests: Move performance tests into dmime.c.
|
2023-09-28 23:21:43 +02:00 |
|
Rémi Bernon
|
ed2eebf2f5
|
dmime/tests: Remove some duplicated tests.
These are now more extensively tested in dmime/tests/dmime.c.
|
2023-09-28 23:21:41 +02:00 |
|
Rémi Bernon
|
27ab696752
|
dmime: Implement DirectMusicSeqTrack IPersistStream_Load.
|
2023-09-21 22:32:37 +02:00 |
|
Rémi Bernon
|
d3742ab843
|
dmime: Get rid of the IDirectMusicSeqTrack typedef.
|
2023-09-21 22:32:36 +02:00 |
|
Rémi Bernon
|
4ea18f87cc
|
dmime/tests: Test band track and DMUS_PATCH_PMSG.
|
2023-09-20 22:15:29 +02:00 |
|
Rémi Bernon
|
47c299ce17
|
dmime/tests: Test sequence track and DMUS_NOTE_PMSG.
|
2023-09-20 22:15:29 +02:00 |
|
Rémi Bernon
|
c04e686ad5
|
dmime/tests: Test wave segments and DMUS_WAVE_PMSG.
|
2023-09-20 22:15:29 +02:00 |
|
Rémi Bernon
|
b1bf0f0296
|
dmime/tests: Add some DMUS_NOTIFICATION_PMSG tests.
|
2023-09-20 22:15:29 +02:00 |
|
Rémi Bernon
|
a4c1dec89d
|
dmime: Use segment_append_track in Clone and parse_track_form.
|
2023-09-19 21:32:36 +02:00 |
|
Rémi Bernon
|
0bdc248cfe
|
dmime: Rewrite segment IDirectMusicSegment_RemoveTrack.
|
2023-09-19 21:32:36 +02:00 |
|