libbluray: update package
This commit is contained in:
parent
c6dece9986
commit
7a2387a6b5
|
@ -1,80 +0,0 @@
|
|||
diff --git a/src/libbluray/bdnav/navigation.c b/src/libbluray/bdnav/navigation.c
|
||||
index c8dc307..26d0000 100644
|
||||
--- a/src/libbluray/bdnav/navigation.c
|
||||
+++ b/src/libbluray/bdnav/navigation.c
|
||||
@@ -32,9 +32,25 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
+static int _stream_cmp(MPLS_STREAM *a, MPLS_STREAM *b)
|
||||
+{
|
||||
+ if (a->stream_type == b->stream_type &&
|
||||
+ a->coding_type == b->coding_type &&
|
||||
+ a->pid == b->pid &&
|
||||
+ a->subpath_id == b->subpath_id &&
|
||||
+ a->subclip_id == b->subclip_id &&
|
||||
+ a->format == b->format &&
|
||||
+ a->rate == b->rate &&
|
||||
+ a->char_code == b->char_code &&
|
||||
+ memcmp(a->lang, b->lang, 4) == 0) {
|
||||
+ return 1;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static int _filter_dup(MPLS_PL *pl_list[], unsigned count, MPLS_PL *pl)
|
||||
{
|
||||
- unsigned ii, jj;
|
||||
+ unsigned ii, jj, kk;
|
||||
|
||||
for (ii = 0; ii < count; ii++) {
|
||||
if (pl->list_count != pl_list[ii]->list_count) {
|
||||
@@ -54,7 +70,48 @@ static int _filter_dup(MPLS_PL *pl_list[], unsigned count, MPLS_PL *pl)
|
||||
pi1->out_time != pi2->out_time) {
|
||||
break;
|
||||
}
|
||||
+ if (pi1->stn.num_video != pi2->stn.num_video ||
|
||||
+ pi1->stn.num_audio != pi2->stn.num_audio ||
|
||||
+ pi1->stn.num_pg != pi2->stn.num_pg ||
|
||||
+ pi1->stn.num_ig != pi2->stn.num_ig ||
|
||||
+ pi1->stn.num_secondary_audio != pi2->stn.num_secondary_audio ||
|
||||
+ pi1->stn.num_secondary_video != pi2->stn.num_secondary_video) {
|
||||
+ break;
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_video; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.video[kk], &pi2->stn.video[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_audio; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.audio[kk], &pi2->stn.audio[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_pg; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.pg[kk], &pi2->stn.pg[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_ig; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.ig[kk], &pi2->stn.ig[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_secondary_audio; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.secondary_audio[kk],
|
||||
+ &pi2->stn.secondary_audio[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
+ for (kk = 0; kk < pi1->stn.num_secondary_video; kk++) {
|
||||
+ if (!_stream_cmp(&pi1->stn.secondary_video[kk],
|
||||
+ &pi2->stn.secondary_video[kk])) {
|
||||
+ goto next;
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
+next:
|
||||
if (jj != pl->list_count) {
|
||||
continue;
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig
|
||||
{ stdenv, fetchurl, pkgconfig, fontconfig
|
||||
, withAACS ? false, libaacs ? null, jdk ? null, ant ? null
|
||||
, withMetadata ? true, libxml2 ? null
|
||||
, withFonts ? true, freetype ? null
|
||||
|
@ -13,12 +13,12 @@ assert withFonts -> freetype != null;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
baseName = "libbluray";
|
||||
version = "0.6.2";
|
||||
version = "0.7.0";
|
||||
name = "${baseName}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.videolan.org/pub/videolan/${baseName}/${version}/${name}.tar.bz2";
|
||||
sha256 = "1l2wr9mwz5pikqxlxkjfw3rwz0l1j0n7x9hl80sfiqm1lk41194c";
|
||||
sha256 = "13dngs4b4cv29f6b825dq14n77mfhvk1kjb42axpq494pfgyp6zp";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with stdenv.lib;
|
||||
|
@ -27,7 +27,8 @@ stdenv.mkDerivation rec {
|
|||
;
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
optionals withAACS [jdk libaacs]
|
||||
[fontconfig]
|
||||
++ optionals withAACS [jdk libaacs]
|
||||
++ optional withMetadata libxml2
|
||||
++ optional withFonts freetype
|
||||
;
|
||||
|
|
Loading…
Reference in New Issue