Browse Source

contrib: update libbluray to 1.1.0

pull/85/head
Konstantin Pavlov 7 years ago
parent
commit
e9d74cb75d
  1. 62
      contrib/src/bluray/0001-Implement-dl_get_path-for-darwin-macOS.patch
  2. 54
      contrib/src/bluray/0001-improve-main-playlist-guess.patch
  3. 2
      contrib/src/bluray/SHA512SUMS
  4. 4
      contrib/src/bluray/rules.mak

62
contrib/src/bluray/0001-Implement-dl_get_path-for-darwin-macOS.patch

@ -1,62 +0,0 @@
From 8c15fdad7797854bc4f98cdb339074a4f9f2dbb3 Mon Sep 17 00:00:00 2001
From: Marvin Scholz <epirat07@gmail.com>
Date: Wed, 7 Mar 2018 10:24:41 +0100
Subject: [PATCH] Implement dl_get_path for darwin (macOS)
---
src/file/dl_posix.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/src/file/dl_posix.c b/src/file/dl_posix.c
index f1852a43..b97f12fe 100644
--- a/src/file/dl_posix.c
+++ b/src/file/dl_posix.c
@@ -27,6 +27,11 @@
#include "util/logging.h"
#include "util/strutl.h"
+#ifdef __APPLE__
+// Required to make dladdr available
+# define _DARWIN_C_SOURCE
+#endif
+
#if defined(HAVE_DLFCN_H)
# include <dlfcn.h>
#elif defined(HAVE_SYS_DL_H)
@@ -112,6 +117,7 @@ int dl_dlclose(void *handle)
return dlclose(handle);
}
+#define PATH_SEPARATOR '/'
const char *dl_get_path(void)
{
static char *lib_path = NULL;
@@ -120,7 +126,25 @@ const char *dl_get_path(void)
if (!initialized) {
initialized = 1;
+#ifdef __APPLE__
+ Dl_info dl_info;
+ int ret = dladdr((void *)dl_get_path, &dl_info);
+
+ if (ret != 0) {
+ lib_path = strdup(dl_info.dli_fname);
+
+ /* cut library name from path */
+ char *p = strrchr(lib_path, PATH_SEPARATOR);
+ if (p) {
+ *(p+1) = 0;
+ }
+ BD_DEBUG(DBG_FILE, "library file is %s\n", lib_path);
+ } else {
+ BD_DEBUG(DBG_FILE, "Can't determine libbluray.so install path\n");
+ }
+#else
BD_DEBUG(DBG_FILE, "Can't determine libbluray.so install path\n");
+#endif
}
return lib_path;
--
2.14.3 (Apple Git-98)

54
contrib/src/bluray/0001-improve-main-playlist-guess.patch

@ -1,54 +0,0 @@
From c11f3fcb34a8b7af864f4e2addcf28b0e7851605 Mon Sep 17 00:00:00 2001
From: Francois Cartegnie <fcartegnie@free.fr>
Date: Tue, 5 Feb 2019 14:40:07 +0100
Subject: [PATCH] improve main playlist guess
---
src/libbluray/bdnav/navigation.c | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/src/libbluray/bdnav/navigation.c b/src/libbluray/bdnav/navigation.c
index f72d253..e48461a 100644
--- a/src/libbluray/bdnav/navigation.c
+++ b/src/libbluray/bdnav/navigation.c
@@ -71,6 +71,25 @@ _pl_chapter_count(MPLS_PL *pl)
return chapters;
}
+static uint32_t
+_pl_streams_score(MPLS_PL *pl)
+{
+ MPLS_PI *pi;
+ uint32_t i_num_audio = 0;
+ uint32_t i_num_pg = 0;
+
+ for (int ii = 0; ii < pl->list_count; ii++) {
+ pi = &pl->play_item[ii];
+ if(pi->stn.num_audio > i_num_audio)
+ i_num_audio= pi->stn.num_audio;
+
+ if(pi->stn.num_pg > i_num_pg)
+ i_num_pg = pi->stn.num_pg;
+ }
+
+ return i_num_audio * 2 + i_num_pg;
+}
+
/*
* Check if two playlists are the same
*/
@@ -353,7 +372,10 @@ static int _pl_guess_main_title(MPLS_PL *p1, MPLS_PL *p2,
return -1;
}
- return 0;
+ /* prefer playlist with higher number of tracks */
+ int sc1 = _pl_streams_score(p1);
+ int sc2 = _pl_streams_score(p2);
+ return sc2 - sc1;
}
/*
--
2.20.1

2
contrib/src/bluray/SHA512SUMS

@ -1 +1 @@
e1360ad08aa6cc67a80efa81a09004faebbe31105f1961494f82f655e3e7378b198ee3bc534b0d0c2bfec726939b11b545cc8bbfa30794fc647432dadf71089b libbluray-1.0.2.tar.bz2
9e1c8408ded0548584cf9d01fdf8153bb713cae5bfc8ff4cb6ace92cddcb2f8546d08db960507e4be8a79741c6196176726da7befac4244f887ab72b35136e9d libbluray-1.1.0.tar.bz2

4
contrib/src/bluray/rules.mak

@ -1,6 +1,6 @@
# LIBBLURAY
BLURAY_VERSION := 1.0.2
BLURAY_VERSION := 1.1.0
BLURAY_URL := $(VIDEOLAN)/libbluray/$(BLURAY_VERSION)/libbluray-$(BLURAY_VERSION).tar.bz2
ifdef BUILD_DISCS
@ -48,11 +48,9 @@ $(TARBALLS)/libbluray-$(BLURAY_VERSION).tar.bz2:
bluray: libbluray-$(BLURAY_VERSION).tar.bz2 .sum-bluray
$(UNPACK)
$(APPLY) $(SRC)/bluray/0001-Implement-dl_get_path-for-darwin-macOS.patch
$(APPLY) $(SRC)/bluray/0001-keep-on-with-menuless-user-selected-streams-between-.patch
$(APPLY) $(SRC)/bluray/0001-install-bdjo_data-header.patch
$(APPLY) $(SRC)/bluray/0001-library-paths-Explicitly-add-usr-local-lib.patch
$(APPLY) $(SRC)/bluray/0001-improve-main-playlist-guess.patch
$(call pkg_static,"src/libbluray.pc.in")
$(MOVE)

Loading…
Cancel
Save