From 2996658d6a85ddb15b6cb6b28843654b2743797e Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Sun, 13 Sep 2020 13:40:27 +1000 Subject: [PATCH] Updated mfplat-streaming-support patchset --- ...winegstreamer-Support-older-versions.patch | 48 +++++++++++++++++++ patches/patchinstall.sh | 20 ++++---- 2 files changed, 59 insertions(+), 9 deletions(-) create mode 100644 patches/mfplat-streaming-support/0054-winegstreamer-Support-older-versions.patch diff --git a/patches/mfplat-streaming-support/0054-winegstreamer-Support-older-versions.patch b/patches/mfplat-streaming-support/0054-winegstreamer-Support-older-versions.patch new file mode 100644 index 00000000..9c3b7970 --- /dev/null +++ b/patches/mfplat-streaming-support/0054-winegstreamer-Support-older-versions.patch @@ -0,0 +1,48 @@ +From 4275e2569a44939e04098fca9cf8beab4cb3941e Mon Sep 17 00:00:00 2001 +From: Alistair Leslie-Hughes +Date: Sun, 13 Sep 2020 13:39:07 +1000 +Subject: [PATCH] winegstreamer: Support older versions + +--- + configure.ac | 4 +++- + dlls/winegstreamer/media_source.c | 2 ++ + 3 files changed, 14 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 5d882b94d99..8abd50e6690 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1665,7 +1665,9 @@ then + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], + [[static int a[sizeof(gint64) > 4 ? 1 : -1]; if (a[0]) return 0;]])], + [AC_MSG_RESULT([yes]) +- AC_CHECK_LIB(gstreamer-1.0,gst_pad_new,[:],,[$GSTREAMER_LIBS])], ++ AC_CHECK_LIB(gstreamer-1.0,gst_pad_new,[:],,[$GSTREAMER_LIBS]) ++ WINE_CHECK_LIB_FUNCS([gst_structure_get_list], [$GSTREAMER_LIBS]) ++ ], + [AC_MSG_RESULT([no]) + ac_glib2_broken=yes + WINE_NOTICE([glib-2.0 pkgconfig configuration is for the wrong architecture, winegstreamer won't be built.])])])]) +diff --git a/dlls/winegstreamer/media_source.c b/dlls/winegstreamer/media_source.c +index 07c16ac8a07..3ef258937dc 100644 +--- a/dlls/winegstreamer/media_source.c ++++ b/dlls/winegstreamer/media_source.c +@@ -1087,6 +1087,7 @@ static HRESULT media_stream_init_desc(struct media_stream *stream) + + if (!strcmp(gst_structure_get_name(gst_caps_get_structure(stream->their_caps, 0)), "video/x-raw")) + { ++#ifdef HAVE_GST_STRUCTURE_GET_LIST + GstElementFactory *videoconvert_factory = gst_element_factory_find("videoconvert"); + /* output every format supported by videoconvert */ + const GList *template_list = gst_element_factory_get_static_pad_templates(videoconvert_factory); +@@ -1118,6 +1119,7 @@ static HRESULT media_stream_init_desc(struct media_stream *stream) + gst_caps_unref(src_caps); + break; + } ++#endif + } + else if (!strcmp(gst_structure_get_name(gst_caps_get_structure(stream->their_caps, 0)), "audio/x-raw")) + { +-- +2.28.0 + diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index db31cc99..0d8e1061 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -57,7 +57,7 @@ upstream_commit() # Show version information version() { - echo "Wine Staging 5.17" + echo "Wine Staging 5.17.1" echo "Copyright (C) 2014-2019 the Wine Staging project authors." echo "Copyright (C) 2018-2020 Alistair Leslie-Hughes" echo "" @@ -2700,14 +2700,15 @@ fi # | * [#49692] mfplat: Improved support for multiple video formats. # | # | Modified files: -# | * dlls/mf/Makefile.in, dlls/mf/handler.c, dlls/mf/handler.h, dlls/mf/main.c, dlls/mf/sar.c, dlls/mf/session.c, -# | dlls/mf/tests/mf.c, dlls/mf/topology.c, dlls/mfplat/mediatype.c, dlls/mfplat/tests/mfplat.c, dlls/mfplat/tests/test.mp4, -# | dlls/mfreadwrite/reader.c, dlls/mfreadwrite/tests/mfplat.c, dlls/mfreadwrite/tests/resource.rc, -# | dlls/mfreadwrite/tests/test.mp4, dlls/winegstreamer/Makefile.in, dlls/winegstreamer/audioconvert.c, -# | dlls/winegstreamer/colorconvert.c, dlls/winegstreamer/gst_cbs.c, dlls/winegstreamer/gst_cbs.h, -# | dlls/winegstreamer/gst_private.h, dlls/winegstreamer/main.c, dlls/winegstreamer/media_source.c, -# | dlls/winegstreamer/mf_decode.c, dlls/winegstreamer/mfplat.c, dlls/winegstreamer/winegstreamer_classes.idl, -# | include/mfidl.idl, tools/make_makefiles, tools/makedep.c +# | * configure.ac, dlls/mf/Makefile.in, dlls/mf/handler.c, dlls/mf/handler.h, dlls/mf/main.c, dlls/mf/sar.c, +# | dlls/mf/session.c, dlls/mf/tests/mf.c, dlls/mf/topology.c, dlls/mfplat/mediatype.c, dlls/mfplat/tests/mfplat.c, +# | dlls/mfplat/tests/test.mp4, dlls/mfreadwrite/reader.c, dlls/mfreadwrite/tests/mfplat.c, +# | dlls/mfreadwrite/tests/resource.rc, dlls/mfreadwrite/tests/test.mp4, dlls/winegstreamer/Makefile.in, +# | dlls/winegstreamer/audioconvert.c, dlls/winegstreamer/colorconvert.c, dlls/winegstreamer/gst_cbs.c, +# | dlls/winegstreamer/gst_cbs.h, dlls/winegstreamer/gst_private.h, dlls/winegstreamer/main.c, +# | dlls/winegstreamer/media_source.c, dlls/winegstreamer/mf_decode.c, dlls/winegstreamer/mfplat.c, +# | dlls/winegstreamer/winegstreamer_classes.idl, include/config.h.in, include/mfidl.idl, tools/make_makefiles, +# | tools/makedep.c # | if test "$enable_mfplat_streaming_support" -eq 1; then patch_apply mfplat-streaming-support/0001-winegstreamer-Add-a-GstPad-wrapping-the-media-source.patch @@ -2763,6 +2764,7 @@ if test "$enable_mfplat_streaming_support" -eq 1; then patch_apply mfplat-streaming-support/0051-mf-sar-Compare-against-native-media-type-in-IsMediaT.patch patch_apply mfplat-streaming-support/0052-winegstreamer-Implement-audio-conversion-MFT.patch patch_apply mfplat-streaming-support/0053-winegstreamer-Support-eAVEncH264VProfile_Constrained.patch + patch_apply mfplat-streaming-support/0054-winegstreamer-Support-older-versions.patch fi # Patchset mmsystem.dll16-MIDIHDR_Refcount