Commit Graph

50 Commits

Author SHA1 Message Date
Alexandre Julliard bd6b53740c winecrt0: Add a default implementation for DllCanUnloadNow().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Nikolay Sivov e3f3e2d3b9 mfmediaengine: Use CRT function for heap allocations.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:14:31 +02:00
Alexandre Julliard 0ace8475f9 mfmediaengine: Use --prefer-native instead of DLL_WINE_PREATTACH.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 10:06:25 +01:00
Nikolay Sivov 0ec86a165a mfmediaengine: Fix vtable variables types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 21:09:37 +01:00
Nikolay Sivov 21ae610d14 mfmediaengine: Use consistent format for traces.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:14 +01:00
Nikolay Sivov 3556990387 mfmediaengine: Force returned playback position after presentation ends.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:11 +01:00
Nikolay Sivov 67815c2f62 mfmediaengine: Set "ended" state when session presentation ends.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:08 +01:00
Nikolay Sivov 85a62b3657 mfmediaengine: Use existing helper to update engine state flags.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:05 +01:00
Nikolay Sivov 39d177b88b mfmediaengine: Use presentation clock interface from the session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 13:47:01 +01:00
Nikolay Sivov 84b66e153d mfmediaengine: Return full presentation range in GetBuffered().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-27 21:04:34 +01:00
Nikolay Sivov db549a680e mfmediaengine: Add partial implementation of a time range object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-27 21:04:32 +01:00
Nikolay Sivov 3f00fbc2e9 mfmediaengine: Return current session time in GetCurrentTime().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-25 23:31:09 +01:00
Nikolay Sivov 86a72e055e mfmediaengine: Handle shutdown state in GetNativeVideoSize().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-05 20:46:41 +01:00
Nikolay Sivov ef8bf642c7 mfmediaengine: Implement GetVideoAspectRatio().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-05 20:46:39 +01:00
Nikolay Sivov b793799d3d mfmediaengine: Implement GetNativeVideoSize().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-04 21:11:44 +01:00
Nikolay Sivov feb4236e31 mfmediaengine: Implement OnVideoStreamTick().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:47 +01:00
Nikolay Sivov 37ffe44443 mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_FIRSTFRAMEREADY on first video sample.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:45 +01:00
Derek Lesho fa25360235 mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_ENDED upon MESessionEnded.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:43 +01:00
Derek Lesho 4b45a8dd8e mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_PLAYING upon MESessionStarted.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:40 +01:00
Derek Lesho 97b4c04e0d mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_CANPLAY upon MF_TOPOSTATUS_READY.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:38 +01:00
Derek Lesho b7d341497e mfmediaengine: Provide the partial topology to the media session.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:36 +01:00
Nikolay Sivov 344d3fb8a4 mfmediaengine: Add video output topology branch.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 21:48:34 +01:00
Nikolay Sivov 113a4c4fa0 mfmediaengine: Keep "preload" property.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-02 16:01:23 +01:00
Nikolay Sivov a82fa9207d mfmediaengine: Set up audio output branch.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:39 +02:00
Nikolay Sivov b643cefdc0 mfmediaengine: Update ready state property during resolution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:37 +02:00
Nikolay Sivov 496a7035ac mfmediaengine: Implement GetCurrentSource().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:35 +02:00
Nikolay Sivov fae575cee9 mfmediaengine: Fully initialize error state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:33 +02:00
Nikolay Sivov 4d56ed9d02 mfmediaengine: Implement error property.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:31 +02:00
Nikolay Sivov 48c3a30650 mfmediaengine: Implement error object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:48 +02:00
Nikolay Sivov 63d8cfa8f9 mfmediaengine/tests: Add some tests for error property.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:46 +02:00
Nikolay Sivov 3e784ab4a6 mfmediaengine: Set presentation duration attribute.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:42 +02:00
Nikolay Sivov c1a12f10b3 mfmediaengine: Set media type flags on source resolution.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:38 +02:00
Nikolay Sivov f151550e56 mfmediaengine: Forward buffering events to user callback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 12:37:28 +02:00
Nikolay Sivov 4bbb7b6649 mfmediaengine: Duplicate configuration attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 12:37:28 +02:00
Nikolay Sivov 13aafb43a3 mfmediaengine: Propagate error out on missing callback attribute.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:15:33 +02:00
Nikolay Sivov e9cc1d58b4 mfmediaengine: Send "volumechange" event on volume change.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:15:30 +02:00
Nikolay Sivov daa119581a mfmediaengine: Send "volumechange" event on muted state change.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:15:26 +02:00
Nikolay Sivov 6fa8ff6930 mfmediaengine: Send "ratechange" event for both default and playback rate changes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:15:22 +02:00
Nikolay Sivov 58f4680380 mfmediaengine: Send "pause" event on Pause().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 21:19:12 +02:00
Nikolay Sivov 41af1d1e71 mfmediaengine: Send "play" event on Play().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 21:19:10 +02:00
Nikolay Sivov f465187f41 mfmediaengine: Create media session instance.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 21:19:07 +02:00
Nikolay Sivov 8805f0429e mfmediaengine: Keep loop flag.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Nikolay Sivov e5b25e874e mfmediaengine: Keep auto-play flag.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Nikolay Sivov 5007c2bd36 mfmediaengine: Add shut down state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Nikolay Sivov a8ee0575fd mfmediaengine/tests: Add some tests for shutdown state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Nikolay Sivov 9de7895e4e mfmediaengine/tests: Use global factory instance.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Jactry Zeng b5bfc2768c mfmediaengine: Merge media_engine_attributes into media_engine struct.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-06 15:33:41 +02:00
Jactry Zeng 00c1e64ba4 mfmediaengine: Add IMFMediaEngine stub.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-04 21:25:29 +02:00
Jactry Zeng 3a3ace8b06 mfmediaengine: Add MFMediaEngineClassFactory stub.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 20:05:13 +02:00
Jactry Zeng dfbd925f2c mfmediaengine: Add stub dll.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-30 20:00:40 +02:00