<p dir="ltr">Apologies, I assumed that it was maintained by videolan because of <a href="http://www.videolan.org/developers/libbluray.html">http://www.videolan.org/developers/libbluray.html</a></p>
<p dir="ltr">Do you know who I should contact instead? </p>
<p dir="ltr">Cheers, </p>
<p dir="ltr">Wout. </p>
<div class="gmail_quote">On May 3, 2014 6:34 PM, "Jean-Baptiste Kempf" <<a href="mailto:jb@videolan.org">jb@videolan.org</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello,<br>
<br>
You are on the wrong mailing list.<br>
<br>
On 03 May, Wout Mertens wrote :<br>
> Hi,<br>
><br>
> I noticed that Handbrake patches libbluray with the patch below, and it<br>
> applies cleanly. A candidate for inclusion?<br>
><br>
> Cheers,<br>
><br>
> Wout.<br>
><br>
> diff --git a/src/libbluray/bdnav/navigation.c<br>
> b/src/libbluray/bdnav/navigation.c<br>
> index c8dc307..26d0000 100644<br>
> --- a/src/libbluray/bdnav/navigation.c<br>
> +++ b/src/libbluray/bdnav/navigation.c<br>
> @@ -32,9 +32,25 @@<br>
>  #include <stdlib.h><br>
>  #include <string.h><br>
><br>
> +static int _stream_cmp(MPLS_STREAM *a, MPLS_STREAM *b)<br>
> +{<br>
> +    if (a->stream_type == b->stream_type &&<br>
> +        a->coding_type == b->coding_type &&<br>
> +        a->pid         == b->pid         &&<br>
> +        a->subpath_id  == b->subpath_id  &&<br>
> +        a->subclip_id  == b->subclip_id  &&<br>
> +        a->format      == b->format      &&<br>
> +        a->rate        == b->rate        &&<br>
> +        a->char_code   == b->char_code   &&<br>
> +        memcmp(a->lang, b->lang, 4) == 0) {<br>
> +        return 1;<br>
> +    }<br>
> +    return 0;<br>
> +}<br>
> +<br>
>  static int _filter_dup(MPLS_PL *pl_list[], unsigned count, MPLS_PL *pl)<br>
>  {<br>
> -    unsigned ii, jj;<br>
> +    unsigned ii, jj, kk;<br>
><br>
>      for (ii = 0; ii < count; ii++) {<br>
>          if (pl->list_count != pl_list[ii]->list_count) {<br>
> @@ -54,7 +70,48 @@ static int _filter_dup(MPLS_PL *pl_list[], unsigned<br>
> count, MPLS_PL *pl)<br>
>                  pi1->out_time != pi2->out_time) {<br>
>                  break;<br>
>              }<br>
> +            if (pi1->stn.num_video           != pi2->stn.num_video<br>
>   ||<br>
> +                pi1->stn.num_audio           != pi2->stn.num_audio<br>
>   ||<br>
> +                pi1->stn.num_pg              != pi2->stn.num_pg<br>
>    ||<br>
> +                pi1->stn.num_ig              != pi2->stn.num_ig<br>
>    ||<br>
> +                pi1->stn.num_secondary_audio !=<br>
> pi2->stn.num_secondary_audio ||<br>
> +                pi1->stn.num_secondary_video !=<br>
> pi2->stn.num_secondary_video) {<br>
> +                break;<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_video; kk++) {<br>
> +                if (!_stream_cmp(&pi1->stn.video[kk],<br>
> &pi2->stn.video[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_audio; kk++) {<br>
> +                if (!_stream_cmp(&pi1->stn.audio[kk],<br>
> &pi2->stn.audio[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_pg; kk++) {<br>
> +                if (!_stream_cmp(&pi1-><a href="http://stn.pg" target="_blank">stn.pg</a>[kk], &pi2-><a href="http://stn.pg" target="_blank">stn.pg</a>[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_ig; kk++) {<br>
> +                if (!_stream_cmp(&pi1->stn.ig[kk], &pi2->stn.ig[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_secondary_audio; kk++) {<br>
> +                if (!_stream_cmp(&pi1->stn.secondary_audio[kk],<br>
> +                                 &pi2->stn.secondary_audio[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
> +            for (kk = 0; kk < pi1->stn.num_secondary_video; kk++) {<br>
> +                if (!_stream_cmp(&pi1->stn.secondary_video[kk],<br>
> +                                 &pi2->stn.secondary_video[kk])) {<br>
> +                    goto next;<br>
> +                }<br>
> +            }<br>
>          }<br>
> +next:<br>
>          if (jj != pl->list_count) {<br>
>              continue;<br>
>          }<br>
<br>
> _______________________________________________<br>
> vlc-devel mailing list<br>
> To unsubscribe or modify your subscription options:<br>
> <a href="https://mailman.videolan.org/listinfo/vlc-devel" target="_blank">https://mailman.videolan.org/listinfo/vlc-devel</a><br>
<br>
<br>
--<br>
With my kindest regards,<br>
<br>
--<br>
Jean-Baptiste Kempf<br>
<a href="http://www.jbkempf.com/" target="_blank">http://www.jbkempf.com/</a> - <a href="tel:%2B33%20672%20704%20734" value="+33672704734">+33 672 704 734</a><br>
Sent from my Electronic Device<br>
</blockquote></div>