This is a heavily simplified version of Michael Müller's staging patch
(the staging version got broken by the PE/Unix split)
I rebased that staging patch but I thought it was too big for what it
does (so I did this instead)
As for automatically changing the status, SM_MEDIACENTER would require
Windows version checks (which are never used in Wine) and SM_TABLETPC
would likely require touchscreen/tablet detection (rbernon is working
on some touch stuff so that could be useful)
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5234
Part 1 of a set of changes for making the recording of highlights and "Play of the Game"s to mp4 in Overwatch work.
This MR contains most of the required IMFMediaSink changes.
--
v4: winegstreamer: Avoid an assert in Gstreamer code.
mfplat: Return NULL for *stream_sink on error in IMFMediaSink::AddStreamSink.
mfplat: Accept any media types without a MF_MT_USER_DATA attribute in MFCreateWaveFormatExFromMFMediaType.
mf/tests: Add test for MEStreamSinkStarted and MEStreamSinkRequestSample events.
winegstreamer: Add support for ADTS container format (.aac files).
winegstreamer: Request new samples after starting media sink and after processing a sample.
mf/tests: Test media sink creation with a media type without MF_MT_USER_DATA attribute.
winegstreamer: Generate AAC codec data if not provided in a media type.
winegstreamer: Implement IMFStreamSink::IMFMediaTypeHandler.GetMajorType.
winegstreamer: Copy media type instead of returning a reference in IMFStreamSink::IMFMediaTypeHandler.GetCurrentMediaType.
winegstreamer: Implement IMFMediaSink::GetPresentationClock.
winegstreamer: Implement IMFMediaSink::SetPresentationClock.
https://gitlab.winehq.org/wine/wine/-/merge_requests/5159
On Mon Mar 25 12:06:39 2024 +0000, Nikolay Sivov wrote:
> It is correct. We should check for negative values only. Constant
> evaluated expressions are not allowed.
We should have tests for that then; I don't think we do currently.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/739#note_66028
When present, the aperture indicates the area of the sample's buffers to display. The frame size instead includes some undesired padding. This is the case when color planes are aligned, such as with YUV output from a decoder MFT.
--
v3: evr/mixer: Respect input media type MF_MT_GEOMETRIC_APERTURE.
evr/tests: Add more video mixer input media type aperture tests.
evr/tests: Split check_presenter_output to a separate helper.
evr/tests: Split create_d3d_sample to a separate helper.
mf/tests: Check that pan scan and geometric apertures are set.
https://gitlab.winehq.org/wine/wine/-/merge_requests/5297
When present, the aperture indicates the area of the sample's buffers to display. The frame size instead includes some undesired padding. This is the case when color planes are aligned, such as with YUV output from a decoder MFT.
--
v2: evr/mixer: Respect input media type MF_MT_GEOMETRIC_APERTURE.
evr/tests: Add more video mixer input media type aperture tests.
evr/tests: Split check_presenter_output to a separate helper.
evr/tests: Split create_d3d_sample to a separate helper.
mf/tests: Check that pan scan and geometric apertures are set.
https://gitlab.winehq.org/wine/wine/-/merge_requests/5297
With some intermediate refactoring to make the code simpler.
I believe the failures that happened previously were coming from how NtGdiDdDDIOpenAdapterFromLuid initialized desc->hAdapter in win32u while winex11 was then relying on it. I missed this detail before and it should be working fine now that the vulkan path is only used to retrieve the physical device.
--
v3: win32u: Move D3DKMT vulkan implementation out of winex11.
winex11: Introduce a new find_adapter_from_handle helper.
winex11: Introduce a new get_vulkan_physical_device helper.
winex11: Initialize D3DKMT vulkan instance only once.
win32u: Open adapters in NtGdiDdDDIEnumAdapters2 outside of the display devices lock.
https://gitlab.winehq.org/wine/wine/-/merge_requests/5306