Page 1 of 3

Using Java Runtime Environment to get around obfuscation

Posted: Wed Mar 29, 2017 2:10 am
by thetanmancan
Hello MakeMKV support forum,

I've been using MakeMKV for almost a year now, and recently I've been running into the screen pass/playlist obfuscation issue on Blu-rays, namely on Hell or High Water and Manchester by the Sea.

I've been reading around on the forums, and some people seem to have a solution using Process Monitor and AnyDVD (https://www.youtube.com/watch?v=AlhBmIbReao). The problem for me is that those are Windows-only programs, and I'm using a Mac (macOS Sierra, Version 10.12.3).

However, in these two forums:

http://www.makemkv.com/forum2/viewtopic.php?f=1&t=15882
https://www.makemkv.com/forum2/viewtopi ... =4&t=14800

there is a solution described wherein MakeMKV uses Java Runtime Environment to find the correct version of the film on the Blu-ray.

I've installed JRE system-wide on my Mac (despite the security risks because I don't know how to install it on a virtual machine), but MakeMKV doesn't pick up on it automatically. I'm assuming that I have to force MakeMKV to recognize it through the MakeMKV > Preferences > Protection > Custom Java executable location field, but I don't know what to put there. One of the forums mentions that there should be some sort of executable file in Macintosh HD > Library > Java > JavaVirtualMachines, but I don't see any files there.

I'm using MakeMKV version 1.10.5. Other than downgrading to version 1.9 (which the forums suggest works but is a workaround I'd like to avoid), is there a way to get MakeMKV to use Java on my Mac as a way of identifying which file on a obfuscation-protected Blu-ray is the real feature film?

Thank you in advance.

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu Mar 30, 2017 1:17 am
by tornadobox
I have the same question.

I installed the JRE (not JDK) from Java.com, build 1.8.0_121-b13. I'm on OS X 10.10.5, running MakeMKV 1.10.5.

I set Custom Java executable location to: /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java (also tried /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java.exe). The Java executable does exist in this location on my machine - verified by browsing to it (however the Info panel doesn't list the java executable as having a file extension).

Trying to get FPL_MainFeature to display, but so far no luck (not seeing it on Patriot's Day or Hunger Games: Catching Fire...both Lionsgate with obfuscation).

Re: Using Java Runtime Environment to get around obfuscation

Posted: Wed May 03, 2017 5:54 pm
by asr101
Hi:

I have run into the obfuscation problem on the Season 2 Blu Ray of Home Fires.

I would love it if someone could post instructions on how to get the JRE and MakeMKV linked up and working.

Many thanks in advance

Andrew

Re: Using Java Runtime Environment to get around obfuscation

Posted: Wed May 03, 2017 8:30 pm
by Woodstock
Mike said it doesn't work on everything, but... he also asked that if you found something that it guessed wrong at, you should follow the steps in the first message of this topic:

http://www.makemkv.com/forum2/viewtopic.php?f=8&t=14330

If Java is working and MakeMKV doesn't even offer a "feature movie", it probably did not detect obfuscation, so that should be reported, too. But, if there aren't at least 10 different titles with the same approximate length, obfuscation is NOT the likely reason!

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu May 04, 2017 1:44 am
by asr101
Hi Thanks for you response.

There are 400 titles to choose from.

How do I know if JAVA is working? I watched it load and it did not give any indication one way or the other. JAVA is installed on my mac.

My back up has a file called "BDMV" is that the same as the referenced "BDSMV" file.

Thanks in advance.

Andrew

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu May 04, 2017 1:04 pm
by Woodstock
I can't say how you tell on a Mac - I just know how it responds on Windows. I see NOTHING different in the opening screens, UNLESS I insert a disk with obfuscation, in which case there is more information displayed.

Re: Using Java Runtime Environment to get around obfuscation

Posted: Sat May 27, 2017 5:56 am
by TheTerrorBeyond
I can confirm that Java doesn't seem to work on the Mac. I have never seen a playlist-obfuscated disc show "main title" on my Mac. I put the disc in my Windows computer and it shows the "main title."

I pointed the Mac to the proper Java executable on the Mac and everything.

Re: Using Java Runtime Environment to get around obfuscation

Posted: Sat May 27, 2017 12:37 pm
by Lovely Rita
Works fine on my Mac. :wink:

Re: Using Java Runtime Environment to get around obfuscation

Posted: Mon May 29, 2017 7:41 pm
by asr101
Lovely Rita:

What mac OS are you running? What Java version?

In MakeMKV's preferences under the protection tab what does it say in the Java executable version box?

Thanks in advance. I would really like this to work on my machine!

Cheers

Andrew

Re: Using Java Runtime Environment to get around obfuscation

Posted: Wed May 31, 2017 1:42 am
by Lovely Rita
asr101 wrote:What mac OS are you running?
Sierra 10.12.5
What Java version?
Java 8 Update 131
In MakeMKV's preferences under the protection tab what does it say in the Java executable version box?

Nothing...it's blank....however it works.
Just tonight when working with Hacksaw Ridge the MakeMKV log begins with:

Using direct disc access mode
Using Java runtime from /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
Loaded content hash table, will verify integrity of M2TS files.


And........368 titles later:
Image

I could never get it to work by browsing from MakeMKV Preferences so I went into the Java preferences applet, selected the Java tab, then the View button, and then copied the "path" value to the clipboard and pasted it into MakeMKV's "Protection" custom Java location in MakeMKV's preferences and it has worked without issue**

**To be clear, it has not worked for me with Patriot's Day, La La Land and DeepWater Horizon.
In cases where it does NOT work we need to send the files needed to Mike per his instructions:
http://www.makemkv.com/forum2/viewtopic ... 330#p48158

I'm confident, over time, he'll be able to "tweak" the MakeMKV support for the BD-Java protection.

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu Jun 01, 2017 9:15 pm
by asr101
Lovely Rita

Thank you very much for your detailed response.

I never see this:

"Using Java runtime from /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java"

I have tried it with the box empty and I have copied the path from the JAVA applet into the MakeMKV.

We are using the same set up. I do not know why MakeMKV will not load JAVA or if there is something in the MacOS that is preventing it from loading.

Its very strange

Re: Using Java Runtime Environment to get around obfuscation

Posted: Mon Jul 10, 2017 8:53 pm
by asr101
Well I guess it depends on the disc. I just ripped a blu ray and Java launched and it labeled the files. I guess Home Fires Season 2 has an additional trick up its sleeve to prevent MakeMKV from launching the Java script.

I did submit the blurry files for that disc so hopefully it will work in a future release.

Re: Using Java Runtime Environment to get around obfuscation

Posted: Fri Aug 11, 2017 3:53 pm
by ember1205
Any chance that this would work in conjunction with the CLI version? On Linux? I'm wondering if it could be leveraged as a CLI option or something to try and "guess" the correct main feature file only instead of ending up with multiple files ripped that you have to wade through...

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu Aug 24, 2017 10:40 am
by rjvbb
I haven't read the full thread, but is use of the JRE something that goes through libbluray? If so, I've just provided its authors with a patch that makes that library detect and use the JRE provided by Oracle's JavaAppletPlugin as installed in /Library/Internet PlugIns.

FWIW, if libbluray is indeed involved, you can also install Oracle's JDK for Mac. Contrary to the JRE it installs in a standard location where the system `java_home` utility will find it (and libbluray too, therefore). It takes a bit more space, but that can be alleviated with HFS compression (google for the afsctool utility).

Re: Using Java Runtime Environment to get around obfuscation

Posted: Thu Aug 24, 2017 1:17 pm
by Woodstock
Use of the JRE is only to determine the likely candidates for "main feature", and I'm guessing that is only for the GUI.