mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
kodi: update drmprime-filter patches
Fix missing flush after EOF Signed-off-by: Matthias Reichl <hias@horus.com>
This commit is contained in:
parent
864420aae0
commit
eb9923c34c
@ -1,7 +1,7 @@
|
||||
From 3f4e5cd94c1ad7e9361f68f04dba23aec06e0e49 Mon Sep 17 00:00:00 2001
|
||||
From 24d09f0f92e3afc975f211591c147032f663ed01 Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Sun, 20 Oct 2019 17:10:07 +0000
|
||||
Subject: [PATCH 1/6] WIP: DVDVideoCodecDRMPRIME: add support for filters
|
||||
Subject: [PATCH 1/7] WIP: DVDVideoCodecDRMPRIME: add support for filters
|
||||
|
||||
---
|
||||
.../DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp | 62 +++++++++++++++++--
|
||||
@ -135,5 +135,5 @@ index db49d165e7..b5cacf1a3c 100644
|
||||
std::shared_ptr<IVideoBufferPool> m_videoBufferPool;
|
||||
};
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From a2f57bbd2c63fc0cf89304805e93f3b57ce55b58 Mon Sep 17 00:00:00 2001
|
||||
From da88bb2f1dfbb6745406fab1bbece5b71df39b91 Mon Sep 17 00:00:00 2001
|
||||
From: Jernej Skrabec <jernej.skrabec@siol.net>
|
||||
Date: Thu, 26 Dec 2019 11:01:51 +0100
|
||||
Subject: [PATCH 2/6] WIP: DRMPRIME deinterlace filter
|
||||
Subject: [PATCH 2/7] WIP: DRMPRIME deinterlace filter
|
||||
|
||||
---
|
||||
.../DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp | 379 +++++++++++++++---
|
||||
@ -517,5 +517,5 @@ index b5cacf1a3c..fab3431d40 100644
|
||||
AVFilterContext* m_pFilterIn = nullptr;
|
||||
AVFilterContext* m_pFilterOut = nullptr;
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From c2b50468de1a8a72a4e00e53492e4e26f2573490 Mon Sep 17 00:00:00 2001
|
||||
From cb187a5456d0e992b4875ad965a6b628726c557f Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Fri, 27 Aug 2021 20:29:50 +0100
|
||||
Subject: [PATCH 3/6] DVDVideoCodecDRMPRIME: Avoid exception with
|
||||
Subject: [PATCH 3/7] DVDVideoCodecDRMPRIME: Avoid exception with
|
||||
AV_PIX_FMT_NONE
|
||||
|
||||
---
|
||||
@ -22,5 +22,5 @@ index 1843e72e55..709311e75f 100644
|
||||
return false;
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 66833bc8221a9d5a5fbc625c3f0293a261bbd412 Mon Sep 17 00:00:00 2001
|
||||
From 7b98c8968c7dd3b5a56f76695515cb59654f8691 Mon Sep 17 00:00:00 2001
|
||||
From: popcornmix <popcornmix@gmail.com>
|
||||
Date: Fri, 17 Sep 2021 15:23:16 +0100
|
||||
Subject: [PATCH 4/6] DVDVideoCodecDRMPRIME: Leave deinterlace filter active on
|
||||
Subject: [PATCH 4/7] DVDVideoCodecDRMPRIME: Leave deinterlace filter active on
|
||||
a progressive frame
|
||||
|
||||
Interlaced content often has strange mixtures of interlace and progressive frames (e.g. IIPPPPIIPPPP)
|
||||
@ -29,5 +29,5 @@ index 709311e75f..6ba0804904 100644
|
||||
filterChain += m_deintFilterName;
|
||||
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 6d40c431345c8bac66fb1a3bb06e29a0f944ac3d Mon Sep 17 00:00:00 2001
|
||||
From c17af60a355973986d9ea5b6baefb96577299b9f Mon Sep 17 00:00:00 2001
|
||||
From: Dom Cobley <popcornmix@gmail.com>
|
||||
Date: Tue, 30 Nov 2021 16:05:06 +0000
|
||||
Subject: [PATCH 5/6] SetVideoInterlaced: Set and unset deinterlace method name
|
||||
Subject: [PATCH 5/7] SetVideoInterlaced: Set and unset deinterlace method name
|
||||
reported
|
||||
|
||||
---
|
||||
@ -37,5 +37,5 @@ index 6ba0804904..9139233bc4 100644
|
||||
{
|
||||
CLog::Log(LOGDEBUG, LOGVIDEO, "CDVDVideoCodecDRMPRIME::FilterClose - Freeing filter graph");
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From e014499333c6ca6ef4dca3a15b8c81ec07d80c12 Mon Sep 17 00:00:00 2001
|
||||
From 37ee879ee3bdcf8320fe135acc6cae0a8cbdb991 Mon Sep 17 00:00:00 2001
|
||||
From: Dom Cobley <popcornmix@gmail.com>
|
||||
Date: Wed, 24 Nov 2021 20:21:28 +0000
|
||||
Subject: [PATCH 6/6] DVDVideoCodecDRMPRIME: Close deinterlace filter on error
|
||||
Subject: [PATCH 6/7] DVDVideoCodecDRMPRIME: Close deinterlace filter on error
|
||||
|
||||
Otherwise we crash later with an invalid m_pFilterGraph pointer
|
||||
---
|
||||
@ -69,5 +69,5 @@ index 9139233bc4..0b44d90f13 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.34.1
|
||||
2.39.2
|
||||
|
||||
|
@ -0,0 +1,32 @@
|
||||
From 9996a0027ee8b0149b639fdc1bb7b524a8176bc0 Mon Sep 17 00:00:00 2001
|
||||
From: Dom Cobley <popcornmix@gmail.com>
|
||||
Date: Mon, 15 May 2023 12:50:16 +0100
|
||||
Subject: [PATCH 7/7] DVDVideoCodecDRMPRIME: Fix missing flush after eof
|
||||
|
||||
---
|
||||
.../VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
|
||||
index 0b44d90f13..a472a06792 100644
|
||||
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
|
||||
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecDRMPRIME.cpp
|
||||
@@ -891,7 +891,15 @@ CDVDVideoCodec::VCReturn CDVDVideoCodecDRMPRIME::GetPicture(VideoPicture* pVideo
|
||||
if (ret == AVERROR(EAGAIN))
|
||||
return VC_BUFFER;
|
||||
else if (ret == AVERROR_EOF)
|
||||
+ {
|
||||
+ if (m_codecControlFlags & DVD_CODEC_CTRL_DRAIN)
|
||||
+ {
|
||||
+ CLog::Log(LOGDEBUG, "CDVDVideoCodecDRMPRIME::{} - flush buffers", __FUNCTION__);
|
||||
+ avcodec_flush_buffers(m_pCodecContext);
|
||||
+ SetCodecControl(m_codecControlFlags & ~DVD_CODEC_CTRL_DRAIN);
|
||||
+ }
|
||||
return VC_EOF;
|
||||
+ }
|
||||
else if (ret)
|
||||
{
|
||||
char err[AV_ERROR_MAX_STRING_SIZE] = {};
|
||||
--
|
||||
2.39.2
|
||||
|
Loading…
x
Reference in New Issue
Block a user