<div dir="ltr">Well, I was looking at Petri's latest commit and now libbluray will search for JVM inside it's own folder. <div><br></div><div>This might be the answer for JRE on Android.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 21, 2021 at 3:18 AM Shaya Potter <<a href="mailto:spotter@gmail.com">spotter@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">As I said, Im not sure about the design that for blurays menus mean it's not in normal playback<div dir="auto"><br>Look at the game of thrones blurays, they have an interactive playback mode which plays episodes normally with interactive "menu" content that can give you information on the scene you are watching.</div><div dir="auto"><br></div><div dir="auto">I'd wonder what it would mean to say that anytime one is in a java title, one doesn't consider it a static menu, but "normal playback".</div><div dir="auto"><br></div><div dir="auto">Just a thought.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 21, 2021, 1:42 AM Vitor Dall'Acqua <<a href="mailto:veggav@gmail.com" target="_blank">veggav@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Oh, my bad, I figured you were.<div><br></div><div>The distinction applies for everything it plays, including DVDs. Kodi is a multi layer player and the way input stream bluray passes chapters/subtitles/audio follows the same route as any other video file being played. </div><div>One example of this is that chapters do not work with Blurays and UHD Blurays that have popup menus, because there are restrictions to avoid the end user to skip a chapter during menus, makes sense but during playback while thinking menus are active stops chapter skipping. </div><div><br></div><div>And while possible, and I did, restore chapters for menus that's exactly the opposite way the problem should be handled. </div><div><br></div><div>What I did, in this commit here:</div><div><a href="https://github.com/xbmc/xbmc/pull/17210" rel="noreferrer" target="_blank">https://github.com/xbmc/xbmc/pull/17210</a><br></div><div><br></div><div>Is that the user decides if menus are available or not and what he/she would like to control.</div><div>It works but an automatic solution would be a much better user experience. </div><div><br></div><div>Libbluray do have some calls that in theory should do this, but those are never used like:</div><div><code>BD_ARGB_OVERLAY_CLOSE</code> </div><div><br></div><div>Even BD_OVERLAY_IG is always != 0.</div><div><br></div><div>As you can see I tried to fix that last year, giving an attempt now once again.</div><div>I even went down to irc to nagg libbluray devs around asking this but can't find an answer. </div><div><br></div><div>One of Team Kodi devs proposed a very elaborated solution that's beyond my skills that is implement a OSD reader, similar to the Google Translator API used by RetroArch to translate games in real time. </div><div>This is like killing an ant with a nuke. </div><div><br></div><div> Hope now that we are discussing this once again a light might come up because I have debug every single line in here:</div><div><a href="https://github.com/xbmc/xbmc/blob/master/xbmc/cores/VideoPlayer/DVDInputStreams/DVDInputStreamBluray.cpp" rel="noreferrer" target="_blank">https://github.com/xbmc/xbmc/blob/master/xbmc/cores/VideoPlayer/DVDInputStreams/DVDInputStreamBluray.cpp</a><br></div><div><br></div><div>And nothing is consistent when the popup menu closes. </div><div>All I need is a flag saying: the popup menu is gone, that's it.</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 20, 2021 at 8:05 PM Shaya Potter <<a href="mailto:spotter@gmail.com" rel="noreferrer" target="_blank">spotter@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div>I'm not really a libbluray developer, but I'm wondering if kodi's distinction between menu and non menu really applies to blurays in general.  One can have menu type stuff on screen when a blurays is playing a movie, even resizing the video.  Heck, I've even seen dynamic animations done via java code overlayed on top of playing video (ex: the trivia track from the breakfast club 30th anniversary blurays, the dvd includes it as a normal vobsub, the bluray tries to be fancier).<div dir="auto"><br></div><div dir="auto">I.e. if the movie is being played from a java/xlet context, is there a difference if it's a menu or not?  I really don't know, hence asking the q.</div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 21, 2021, 12:46 AM Vitor Dall'Acqua <<a href="mailto:veggav@gmail.com" rel="noreferrer" target="_blank">veggav@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Really glad to hear back on this.<div dir="auto"><br></div><div dir="auto">Exactly, having libbluray running on Kodi on Android would make many people happy.</div><div dir="auto"><br></div><div dir="auto">Alas, this is not my first time attempting this and failing.</div><div dir="auto"><br></div><div dir="auto">It would make things much simpler if would be possible to just embed jre into libbluray when compiling but that probably violates several license agreements.</div><div dir="auto"><br></div><div dir="auto">Right now, I'm still working on libbluray and Kodi with a different issue, actually the only remaining issue with bluray and bluray uhd playback on Kodi using libbluray (on linux and windows).</div><div dir="auto"><br></div><div dir="auto">Kodi has 2 states when playing a disc: inside a menu and playback.</div><div dir="auto">The problem I'm facing is the popup menus, which causes Kodi to behave as if it's inside a menu during entire playback.</div><div dir="auto"><br></div><div dir="auto">I need to figure out a way to get any value when the popup menu isn't rendering on screen.</div><div dir="auto"><br></div><div dir="auto">BD_EVENT_POPUP doesn't change.</div><div dir="auto">All the axis, img byte size, the palette, still can't figure out anything that I can use.</div><div dir="auto"><br></div><div dir="auto">Do you have advice of what can be used for this?</div><div dir="auto"><br></div><div dir="auto">This would greatly improve the user experience using Kodi and full discs.</div><div dir="auto"><br></div><div dir="auto">Either way, thank you for taking your time to answer this.</div><div dir="auto"><br></div><div dir="auto">Regards</div><div dir="auto">Vitor</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jan 20, 2021, 7:11 PM Shaya Potter <<a href="mailto:spotter@gmail.com" rel="noreferrer noreferrer" target="_blank">spotter@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I can't speak to any specifics, but there are some obvious issues that would prevent libbluray from loading it.<br><br></div><div>libbluray searches for the the java root dir in a number of places (including the JAVA_HOME env)<br></div><div><br></div><div>from the root dir, it searches in a number of subdir's for libjvm.so<br><br></div><div>the dirs it searches are</div><div><br></div><div><pre lang="c"><span id="gmail-m_6582005322549414006m_8829295915495161612gmail-m_145950926883555040m_4180750686103753882m_-2434557197559808633gmail-LC416" lang="c">    <span>static</span> <span>const</span> <span>char</span> <span>*</span> <span>const</span> <span>jvm_dir</span><span>[]</span>  <span>=</span> <span>{</span><span>"jre/lib/"</span> <span>JAVA_ARCH</span> <span>"/server"</span><span>,</span></span>
<span id="gmail-m_6582005322549414006m_8829295915495161612gmail-m_145950926883555040m_4180750686103753882m_-2434557197559808633gmail-LC417" lang="c">                                            <span>"lib/server"</span><span>,</span></span>
<span id="gmail-m_6582005322549414006m_8829295915495161612gmail-m_145950926883555040m_4180750686103753882m_-2434557197559808633gmail-LC418" lang="c">                                            <span>"lib/client"</span><span>,</span></span>
</pre></div><div><br></div><div>it turns out that none of those dirs are where this jvm stores libjvm.so.  it stores it in "lib/arm/client".<br><br></div><div>hence it can't find it.  a simple experiment would be for you to build your own libbluray and add "lib/arm/client" or perhaps even "lib" JAVA_ARCH "/client" (again, unsure) and see if that improves the situation.</div><div><br></div><div>with that said, I have some skepticism that it can work when loaded into the shared data partition as google has gone through efforts to lock down executable code being stored there, with that said, I don't know how that impact dlopen and the like and might only impact Android Q users.<br></div><div><br></div><div>but again, this is just low hanging fruit issues, dont really know what it would be.  (with that said, I think the holy grail for many people would be to have kodi be able to use java on android).<br><br></div><div>The other issue is that these devs don't provide any source code for the jvm that they built.  as it's under the GPL and they aren't providing sources they built it from, they are arguably in violation of the license.  that's going to prevent it from anyone putting significant effort into it.<br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jan 2, 2021 at 4:35 AM Vitor Dall'Acqua <<a href="mailto:veggav@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">veggav@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Just wanted to share this with you,<div><br></div><div>Someone made a JRE for Termux that runs on Android devices.</div><div><a href="https://github.com/MasterDevX/Termux-Java" rel="noreferrer noreferrer noreferrer" target="_blank">https://github.com/MasterDevX/Termux-Java</a><br></div><div><br></div><div>I've tried to add this to Kodi and setenv</div><div>  setenv("JAVA_HOME", "/storage/emulated/0/JAVA/", 1);<br><br></div><div>added the binaries and the *.jar files</div><div><br></div><div>Libbluray still won't see it. </div><div><br></div><div>DEBUG <general>: CBlurayCallback::Logger - bdj.c:746: BD-J check: Failed to load JVM library<br></div><div><br></div><div>I have little to no experience with Android and how paths are set but if it's just a matter of figuring out how to set it, it would be really nice to have.</div><div><br></div><div>Hope someone shares the sentiment and feels like having a look at it.</div><div><br></div><div>Regards</div><div>Vitor</div><div><br></div></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" rel="noreferrer noreferrer noreferrer" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" rel="noreferrer noreferrer noreferrer" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" rel="noreferrer noreferrer" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer noreferrer noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div></div></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" rel="noreferrer" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" rel="noreferrer" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div>
_______________________________________________<br>
libbluray-devel mailing list<br>
<a href="mailto:libbluray-devel@videolan.org" target="_blank">libbluray-devel@videolan.org</a><br>
<a href="https://mailman.videolan.org/listinfo/libbluray-devel" rel="noreferrer" target="_blank">https://mailman.videolan.org/listinfo/libbluray-devel</a><br>
</blockquote></div>