Add built-in Java support

  • How can I reproduce this issue (step by step)? Should mentioned that I don't have any optical drive (just a folder).

  • I have the generic X64 LE build and MakeMKV addon from that Google drive. I suppose it will be hard for you to reproduce without an optical drive. I have a region B drive and try to play a region A disc with Java menu. Or can Blu-ray ISO be region protected?

  • Then you are on your own :)

    Because I don't understand how makemkv is using java. Maybe you need full java and not only jre?

  • vpeter


    The wget warning is gone. But the region lock problem with Blu-ray Java menu disc remains. Using simple menu the disc is decrypted and played through MakeMKV. However, it seems that we can now play any region disc without MakeMKV if we have a KEYDB.cfg in /storage/.config.aacs. This works with my region A Java menu disc, but I have to set the region to A in System/Player settings/Discs.

    But MakeMKV would provide a more seamless experience. I still think that th eproblem must be that MakeMKV doesn't find the JRE, so we would have to set the JRE path in MakeMKV settings.

  • Try creating settings file /storage/.MakeMKV/settings.conf and try with different paths for app_Java

    Code
    /storage/.kodi/addons/java
    /storage/.kodi/addons/java/
    /storage/.kodi/addons/java/jre
    /storage/.kodi/addons/java/jre/
    
    LibreELEC:~ # cat /storage/.MakeMKV/settings.conf
    app_Java = "/storage/.kodi/addons/java"
    
    LibreELEC:~ #
  • I added that setting and tried all the path variations you listed, but none worked.


    Playing with makemkvcon command I noticed that it displays this warning :

    Code
    Profile parsing error: default profile missing, using builtin default


    Could it be that other settings than the beta serial key should be placed in that profile?

    Also to get the disc info you have to run makemkvcon with the -r switch.

    Edited 2 times, last by andersos ().

  • This profile error is harmless I think because in makemkv it is available only under expert mode. And we are obviously not experts ;(

    Anyway, try setting java path to /storage/.kodi/addons/java/jre1.7.0_04/bin/java because seems it must point to java executable.


    ak69co111r9m.jpg

    from here

  • I tried :


    Code
    app_Java = "/storage/.kodi/addons/java/jre/bin/"
    app_Java = "/storage/.kodi/addons/java/jre/bin/java"
    app_Java = "/storage/.kodi/addons/java/jre1.7.0_04/bin/"
    app_Java = "/storage/.kodi/addons/java/jre1.7.0_04/bin/java"

    None of them do any difference. My settings.conf look like for example :

    Code
    LibreELEC:~/.MakeMKV # cat settings.conf 
    app_Key = "T-LW1uLLbYkVG@LRXgUx8eZlPSc5XtHUoGDg9My9NgOMC@2jNEQjvNY4zLxK8E0YduZT"
    app_Java = "/storage/.kodi/addons/java/jre1.7.0_04/bin/java"
    LibreELEC:~/.MakeMKV # 


    After uninstalling MakeMKV and using only the KEYDB.cfg file (libaacs) I couldn't play the region A BD at all. No matter what settings.

    So it seems that MakeMKV is indeed decrypting the Java BD, but I have to set Kodi Blu-ray region code to A to play the BD, or else I get the "This disc is not intended to play in your region" message. strange.

  • Just a little progress: seems Java for MakeMKV is only need to solve playlist obfuscation. Need to find one such ISO :)

  • I have tried blob810s version of JRE on RasPi but I get mostly errors like

    ERROR: CDVDInputStreamBluray::Open - Can't play disc in HDMV navigation mode - First Play title not supported

    ERROR: CDVDInputStreamBluray::Open - Unsupported titles found - Some titles can't be played in navigation mode


    Some Blurays show the menu but I suspect they are not java.

    How do I check if Java works?

  • complains about wrong libbluray. filename is libbluray-j2se-1.0.1.jar

  • Yes, libbluray was bumped to 1.0.2 not so long and needs to be updated.


    You can try downloading it

    Code
    wget -O /storage/.kodi/addons/java/libbluray-j2se-1.0.2.jar http://vpeter.libreelec.tv/BD-J/libbluray-j2se-1.0.2.jar