Skip to content

Commit

Permalink
rtsp12-hotfix
Browse files Browse the repository at this point in the history
  • Loading branch information
SpookySkeletons committed Jul 24, 2024
1 parent 334a767 commit deb19d1
Show file tree
Hide file tree
Showing 44 changed files with 95 additions and 42 deletions.
1 change: 1 addition & 0 deletions patches/protonprep-valve-staging.sh
Original file line number Diff line number Diff line change
Expand Up @@ -349,6 +349,7 @@
patch -Np1 < ../patches/wine-gst/0040-mf-Schedule-stored-timers-for-the-original-time-inst.patch
patch -Np1 < ../patches/wine-gst/0041-mf-Start-forwarding-samples-only-at-the-PTS-of-the-f.patch
patch -Np1 < ../patches/wine-gst/0042-ntdll-Use-unixcall-instead-of-syscall-for-QueryPerfo.patch
patch -Np1 < ../patches/wine-gst/0043-HACK-kernelbase-Replace-stderr-of-yt-dlp-process.patch

#echo "WINE: -Nvidia Reflex- Support VK_NV_low_latency2"
#patch -Np1 < ../patches/proton/83-nv_low_latency_wine.patch
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 5a42c6f7a56ffae4ac2d1367eac2d659b5336ca8 Mon Sep 17 00:00:00 2001
From: Zhiyi Zhang <[email protected]>
Date: Tue, 1 Aug 2023 10:52:21 +0800
Subject: [PATCH 01/42] mf: Add seeking support for IMFMediaSession::Start().
Subject: [PATCH 01/43] mf: Add seeking support for IMFMediaSession::Start().

---
dlls/mf/session.c | 57 ++++++++++++++++++++++++++++++++++++++++++-----
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 134b5bbd0f07cdeaa3acd6e1d205ba1fd6cfe5c2 Mon Sep 17 00:00:00 2001
From: Zhiyi Zhang <[email protected]>
Date: Tue, 8 Aug 2023 15:24:34 +0800
Subject: [PATCH 02/42] mf/tests: Add a create_media_session_with_source_sink()
Subject: [PATCH 02/43] mf/tests: Add a create_media_session_with_source_sink()
helper.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From ca2e4786f3a1e43aa542d79df84a434a6bbe03d6 Mon Sep 17 00:00:00 2001
From: Zhiyi Zhang <[email protected]>
Date: Mon, 7 Aug 2023 11:52:20 +0800
Subject: [PATCH 03/42] mf/tests: Test IMFMediaSession::Start().
Subject: [PATCH 03/43] mf/tests: Test IMFMediaSession::Start().

---
dlls/mf/tests/mf.c | 704 ++++++++++++++++++++++++++++++++++++++++++++-
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 502f072eec3417eb1ae1fde7c28ac68529d51ba5 Mon Sep 17 00:00:00 2001
From: Zhiyi Zhang <[email protected]>
Date: Fri, 28 Jul 2023 18:04:30 +0800
Subject: [PATCH 04/42] mfmediaengine: Implement
Subject: [PATCH 04/43] mfmediaengine: Implement
IMFMediaEngineEx::SetCurrentTime/Ex().

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 2dcc6d2934f8ffa9c5abfcc51a57c68933643d02 Mon Sep 17 00:00:00 2001
From: Zhiyi Zhang <[email protected]>
Date: Mon, 7 Aug 2023 11:53:41 +0800
Subject: [PATCH 05/42] mfmediaengine/tests: Test
Subject: [PATCH 05/43] mfmediaengine/tests: Test
IMFMediaEngineEx::SetCurrentTime/Ex().

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 93a92705c0b31f0d80bc75ff40222e1f36911a0a Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 14 Jun 2024 03:09:34 +0200
Subject: [PATCH 06/42] mfmediaengine: Implement IMFMediaEngine::IsSeeking.
Subject: [PATCH 06/43] mfmediaengine: Implement IMFMediaEngine::IsSeeking.

---
dlls/mfmediaengine/main.c | 11 +++++++++--
Expand Down
2 changes: 1 addition & 1 deletion patches/wine-gst/0007-AVPro-Video-seeking-support.patch
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 94470715480c6c9ab86777c8d95f4d9d1bbc4b46 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 10 Apr 2024 18:57:59 +0200
Subject: [PATCH 07/42] === AVPro Video seeking support ===
Subject: [PATCH 07/43] === AVPro Video seeking support ===

---
MAINTAINERS | 2 ++
Expand Down
2 changes: 1 addition & 1 deletion patches/wine-gst/0008-Memory-leak-fixes.patch
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From d8d434c2be793c63ad20f6e0c749804d1f7cd21d Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 10 Apr 2024 18:59:43 +0200
Subject: [PATCH 08/42] === Memory leak fixes ===
Subject: [PATCH 08/43] === Memory leak fixes ===

---
MAINTAINERS | 1 +
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From da53e43b7436b39c7945b67442c5705e672a6e94 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 14 Jun 2024 03:15:57 +0200
Subject: [PATCH 09/42] winegstreamer: Initialize condition variable of struct
Subject: [PATCH 09/43] winegstreamer: Initialize condition variable of struct
media_stream.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From fbfbf77dc4e36b616d669915df71b72a0c77e420 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Sun, 31 Mar 2024 15:49:33 +0200
Subject: [PATCH 10/42] winegstreamer: Connect autoplug-continue and
Subject: [PATCH 10/43] winegstreamer: Connect autoplug-continue and
deep-element-added callbacks to uridecodebin-based parsers too.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From ff6e615f58cb792b871b77f1d2ceb0806382a0c3 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 25 Mar 2024 09:19:18 +0100
Subject: [PATCH 11/42] winegstreamer: Do not create a read thread for
Subject: [PATCH 11/43] winegstreamer: Do not create a read thread for
uridecodebin-based media sources.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 292c1944002bef1426a8089e6b7cac78d34f35cc Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 19 Mar 2024 04:06:37 +0100
Subject: [PATCH 12/42] winegstreamer: Ignore an assert in wg_parser.
Subject: [PATCH 12/43] winegstreamer: Ignore an assert in wg_parser.

This gets hit when a wg_parser receives GST_EVENT_FLUSH_START between the wg_parser_stream_get_buffer function return
and the wg_parser_stream_release_buffer call. In this case the NULL buffer can be ignored, it does no harm and there
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 7696a4041c007e7a978535b4bfe5c9cb4f349ed9 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 20 Feb 2024 23:17:28 +0100
Subject: [PATCH 13/42] winegstreamer: Make wg_parser report the exact
Subject: [PATCH 13/43] winegstreamer: Make wg_parser report the exact
supported formats to gstreamer instead of just ANY.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 7bac2ac4dcaeb00b594d80ef263e8c5259eefb4e Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:54 +0100
Subject: [PATCH 14/42] winegstreamer: Add more RTSP-based URI schemes to
Subject: [PATCH 14/43] winegstreamer: Add more RTSP-based URI schemes to
GStreamer scheme handler.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 23003a1845e60b6ff8626b4e0c616c9a7b906567 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 22 Apr 2024 11:43:45 +0200
Subject: [PATCH 15/42] winegstreamer: Mark wg_parser container bin as
Subject: [PATCH 15/43] winegstreamer: Mark wg_parser container bin as
streams-aware.

Mirroring wg_source.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 4a2af2d7746bcb40c4e537a37fc791d0a09012bb Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:55 +0100
Subject: [PATCH 16/42] winegstreamer: Set a clock for the wg_parser pipeline.
Subject: [PATCH 16/43] winegstreamer: Set a clock for the wg_parser pipeline.

Some elements under uridecodebin (e.g. the RTSP demuxer) require a valid clock to function properly.
GstPipeline does this so let's do this too.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 0c477ecbd185dde1916a67b24fad61a1dadc68a4 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:55 +0100
Subject: [PATCH 17/42] winegstreamer: Set base time on wg_parser bin while
Subject: [PATCH 17/43] winegstreamer: Set base time on wg_parser bin while
connecting.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 94c5c5295ee1e9b07a9b8f6e03d969d9a59a78ab Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:55 +0100
Subject: [PATCH 18/42] winegstreamer: Put pipeline into PLAYING state before
Subject: [PATCH 18/43] winegstreamer: Put pipeline into PLAYING state before
waiting for the no-more-pads callback.

Some elements (e.g. uridecodebin with an RTSP URI) won't send no-more-pads in READY/PAUSED state.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From bd8e19cee12ac63c010fddab30c2bde88472f682 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 23 Apr 2024 19:30:17 +0200
Subject: [PATCH 19/42] winegstreamer: Don't only accept segment events when
Subject: [PATCH 19/43] winegstreamer: Don't only accept segment events when
streams are enabled.

I don't know why this was done previously but this just creates a race condition, with no to me apparent benefit.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From bc58aec4522d7dcbfab9e23074f4135b5845af4c Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:55 +0100
Subject: [PATCH 20/42] winegstreamer: Convert buffer presentation timestamps
Subject: [PATCH 20/43] winegstreamer: Convert buffer presentation timestamps
into stream time.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 412ed5328d8f21dcf30a76280c708c51fa3cff53 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:55 +0100
Subject: [PATCH 21/42] winegstreamer: Reorder parser initialization code a bit
Subject: [PATCH 21/43] winegstreamer: Reorder parser initialization code a bit
to prevent race conditions.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 3a3c7d17c4961282b72d521354c2fe0c34dd288d Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:54 +0100
Subject: [PATCH 22/42] winegstreamer: Do away with the per-stream condvars and
Subject: [PATCH 22/43] winegstreamer: Do away with the per-stream condvars and
use one parser-wide condvar instead.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 23d10aa44bd2230077a8fe9b11d9733803510600 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 18 Mar 2024 10:18:07 +0100
Subject: [PATCH 23/42] winegstreamer: Use pthread_cond_broadcast instead of
Subject: [PATCH 23/43] winegstreamer: Use pthread_cond_broadcast instead of
pthread_cond_signal for stream_event_cond.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 92f1b0e6ccf780224021b266b9db8738604c0675 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 19 Mar 2024 10:09:59 +0100
Subject: [PATCH 24/42] winegstreamer: Do not fail caps negotiation when
Subject: [PATCH 24/43] winegstreamer: Do not fail caps negotiation when
there's a concurrent reconfigure.

If wg_parser_stream_enable is called between the time our sink's GST_QUERY_CAPS returns and the time our sink gets the
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 770cb2d26ef8b749dd093028b5167628df8f25ab Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Sun, 14 Apr 2024 06:12:55 +0200
Subject: [PATCH 25/42] winegstreamer: Do not seek live sources.
Subject: [PATCH 25/43] winegstreamer: Do not seek live sources.

souphttpsrc seems to break from seeking sometimes:

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From f375665f64fd9d2903ddd5c2b7e9f9543bf43c6f Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 10 Apr 2024 15:11:02 +0200
Subject: [PATCH 26/42] winegstreamer: Implement buffering events.
Subject: [PATCH 26/43] winegstreamer: Implement buffering events.

---
dlls/winegstreamer/gst_private.h | 3 ++
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 213dd767dc5cf4b2c1fa49c9b566aadaa2a1634d Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 21 May 2024 08:25:47 +0200
Subject: [PATCH 27/42] mf: Send sample requests for unused space of sample
Subject: [PATCH 27/43] mf: Send sample requests for unused space of sample
queue on pause => restart.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 6a3d0ad6f545fe0e4ea981d2523fd30c254a9957 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 3 Jun 2024 11:05:38 +0200
Subject: [PATCH 28/42] winegstreamer: Fix race between
Subject: [PATCH 28/43] winegstreamer: Fix race between
wg_parser_stream_disable and GST_EVENT_FLUSH_STOP.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From a124abd6b9944d24a4327afc78f2b048fae3bd50 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 14 Jun 2024 03:11:44 +0200
Subject: [PATCH 29/42] winegstreamer: Handle Gstreamer pipeline flushes
Subject: [PATCH 29/43] winegstreamer: Handle Gstreamer pipeline flushes
gracefully.

If a GST_EVENT_FLUSH_START event is received between the calls from PE code to wg_parser_stream_get_buffer
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 3c5be2333f0068736fcd506790077ab801de134e Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 14 Jun 2024 03:08:48 +0200
Subject: [PATCH 30/42] winegstreamer: Do waits for samples on stream-specific
Subject: [PATCH 30/43] winegstreamer: Do waits for samples on stream-specific
work queues.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 7bf3f7999a6399c86ecc2a6c07dad631df6a677d Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 8 Jul 2024 10:30:50 +0200
Subject: [PATCH 31/42] mf/session: Ensure that the command callback does not
Subject: [PATCH 31/43] mf/session: Ensure that the command callback does not
return without clearing SESSION_FLAG_PENDING_COMMAND.

Leaving SESSION_FLAG_PENDING_COMMAND set results in no more work items being queued by session_submit_command, and even
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 70ecdbf3a1602d8c468855f5d7be4a660d5745cb Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 9 Jul 2024 07:39:21 +0200
Subject: [PATCH 32/42] Revert "winegstreamer: Make wg_parser report the exact
Subject: [PATCH 32/43] Revert "winegstreamer: Make wg_parser report the exact
supported formats to gstreamer instead of just ANY."

This reverts commit 7696a4041c007e7a978535b4bfe5c9cb4f349ed9.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From e9876a0d2951803c827955d74682f2db0bd7fc27 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 10 Jul 2024 22:50:17 +0200
Subject: [PATCH 33/42] winegstreamer: Do not force uridecodebin to expose
Subject: [PATCH 33/43] winegstreamer: Do not force uridecodebin to expose
uncompressed streams by failing autoplug-continue callbacks.

Doing so makes uridecodebin expose pads that do not respond to CAPS queries correctly for HLS sources.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From ab4d635bcf12bf7b155be19ab4746e1a7b0a2a22 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:54 +0100
Subject: [PATCH 34/42] [HACK] winegstreamer: Add a resampler to wg_parser for
Subject: [PATCH 34/43] [HACK] winegstreamer: Add a resampler to wg_parser for
raw audio.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 82aa3f134eecfd1b0da14f1625c0f2f12a4576e8 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 31 Jan 2024 17:42:54 +0100
Subject: [PATCH 35/42] [HACK] winegstreamer: Add a videoscale element to
Subject: [PATCH 35/43] [HACK] winegstreamer: Add a videoscale element to
wg_parser for raw video.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From edf8fef10f54e399ffb1ad25af69ae2924dd1a10 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Sat, 2 Mar 2024 21:19:25 +0100
Subject: [PATCH 36/42] [HACK] mfmediaengine: Do not send
Subject: [PATCH 36/43] [HACK] mfmediaengine: Do not send
MF_MEDIA_ENGINE_EVENT_ERROR for VRChat.

Breaks AVPro Video (used by VRChat) when a IMFMediaEngine::GetError call inside the event handler doesn't return an
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From d3b3178e8b8fcae150bc00bb21b0e5e65150217a Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Mon, 25 Mar 2024 09:58:04 +0100
Subject: [PATCH 37/42] === Marker commit, do not put into MR ===
Subject: [PATCH 37/43] === Marker commit, do not put into MR ===

---
MAINTAINERS | 1 +
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 0ff3652d413dff8a4bb75681eedcac05339f55b8 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Tue, 19 Mar 2024 10:20:49 +0100
Subject: [PATCH 38/42] [DEBUG] winegstreamer: GST_LOG -> GST_DEBUG.
Subject: [PATCH 38/43] [DEBUG] winegstreamer: GST_LOG -> GST_DEBUG.

---
dlls/winegstreamer/wg_parser.c | 34 +++++++++++++++++-----------------
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From d31c5ce2ae25a086a889a6ddb6117fcc4c673e65 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Thu, 28 Mar 2024 16:43:07 +0100
Subject: [PATCH 39/42] [HACK] kernelbase: yt-dlp.exe redirection and cmdline
Subject: [PATCH 39/43] [HACK] kernelbase: yt-dlp.exe redirection and cmdline
modification to read cookies from browser.

---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From a62738cd8094c9444875293dc962be8cc7a09062 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 23 Feb 2024 21:45:44 +0100
Subject: [PATCH 40/42] mf: Schedule stored timers for the original time
Subject: [PATCH 40/43] mf: Schedule stored timers for the original time
instead of calling callbacks immediately when changing presentation clock
state.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From e5dfc6c596220dc3495269c917cddc43a7ecf132 Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Fri, 23 Feb 2024 21:50:22 +0100
Subject: [PATCH 41/42] mf: Start forwarding samples only at the PTS of the
Subject: [PATCH 41/43] mf: Start forwarding samples only at the PTS of the
first sample.

Hides desynchronization in applications that ignore the PTS, e.g. VRChat.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 487aa0da570b4516ad51e4dbb6ee01e7ef77a1ba Mon Sep 17 00:00:00 2001
From: Torge Matthies <[email protected]>
Date: Wed, 24 Apr 2024 22:00:49 +0200
Subject: [PATCH 42/42] ntdll: Use unixcall instead of syscall for
Subject: [PATCH 42/43] ntdll: Use unixcall instead of syscall for
QueryPerformanceCounter.

---
Expand Down
Loading

0 comments on commit deb19d1

Please sign in to comment.