mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
xbmc: add patch for fixing DVD menus on some DVDs. Fixes issue #737
This commit is contained in:
parent
a967bd38d4
commit
1f82b1d445
@ -0,0 +1,37 @@
|
||||
From 497941802e56121adf03428d964e225c80989afd Mon Sep 17 00:00:00 2001
|
||||
From: elupus <elupus@xbmc.org>
|
||||
Date: Sat, 7 Apr 2012 00:08:34 +0200
|
||||
Subject: [PATCH] fixed: still frames at the start of a VTS in dvd could end
|
||||
up not showing
|
||||
|
||||
This occured due to a change in behavior in updated ffmpeg. Old code would
|
||||
return EOF once after a VTS change to trigger demuxer flush, however
|
||||
updated ffmpeg will read multiple times causing demuxer reset actions
|
||||
to get executed after actual data having been processed by demuxer.
|
||||
---
|
||||
.../cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
index dbdff52..3ae4843 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
@@ -419,9 +419,12 @@ int CDVDInputStreamNavigator::ProcessBlock(BYTE* dest_buffer, int* read)
|
||||
iNavresult = NAVRESULT_HOLD;
|
||||
}
|
||||
else
|
||||
+ {
|
||||
iNavresult = m_pDVDPlayer->OnDVDNavResult(buf, DVDNAV_VTS_CHANGE);
|
||||
-
|
||||
- m_bInMenu = (0 == m_dll.dvdnav_is_domain_vts(m_dvdnav));
|
||||
+ m_holdmode = HOLDMODE_HELD;
|
||||
+ m_lastevent = DVDNAV_NOP;
|
||||
+ m_bInMenu = (0 == m_dll.dvdnav_is_domain_vts(m_dvdnav));
|
||||
+ }
|
||||
}
|
||||
break;
|
||||
|
||||
--
|
||||
1.7.10
|
||||
|
||||
|
@ -0,0 +1,37 @@
|
||||
From 497941802e56121adf03428d964e225c80989afd Mon Sep 17 00:00:00 2001
|
||||
From: elupus <elupus@xbmc.org>
|
||||
Date: Sat, 7 Apr 2012 00:08:34 +0200
|
||||
Subject: [PATCH] fixed: still frames at the start of a VTS in dvd could end
|
||||
up not showing
|
||||
|
||||
This occured due to a change in behavior in updated ffmpeg. Old code would
|
||||
return EOF once after a VTS change to trigger demuxer flush, however
|
||||
updated ffmpeg will read multiple times causing demuxer reset actions
|
||||
to get executed after actual data having been processed by demuxer.
|
||||
---
|
||||
.../cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
index dbdff52..3ae4843 100644
|
||||
--- a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
+++ b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp
|
||||
@@ -419,9 +419,12 @@ int CDVDInputStreamNavigator::ProcessBlock(BYTE* dest_buffer, int* read)
|
||||
iNavresult = NAVRESULT_HOLD;
|
||||
}
|
||||
else
|
||||
+ {
|
||||
iNavresult = m_pDVDPlayer->OnDVDNavResult(buf, DVDNAV_VTS_CHANGE);
|
||||
-
|
||||
- m_bInMenu = (0 == m_dll.dvdnav_is_domain_vts(m_dvdnav));
|
||||
+ m_holdmode = HOLDMODE_HELD;
|
||||
+ m_lastevent = DVDNAV_NOP;
|
||||
+ m_bInMenu = (0 == m_dll.dvdnav_is_domain_vts(m_dvdnav));
|
||||
+ }
|
||||
}
|
||||
break;
|
||||
|
||||
--
|
||||
1.7.10
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user