4 changed files with 2 additions and 120 deletions
@ -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) |
|||
|
|||
@ -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 |
|||
|
|||
@ -1 +1 @@ |
|||
e1360ad08aa6cc67a80efa81a09004faebbe31105f1961494f82f655e3e7378b198ee3bc534b0d0c2bfec726939b11b545cc8bbfa30794fc647432dadf71089b libbluray-1.0.2.tar.bz2 |
|||
9e1c8408ded0548584cf9d01fdf8153bb713cae5bfc8ff4cb6ace92cddcb2f8546d08db960507e4be8a79741c6196176726da7befac4244f887ab72b35136e9d libbluray-1.1.0.tar.bz2 |
|||
|
|||
Loading…
Reference in new issue