[MPlayer-users] What is required for libaacs support for libbluray in mplayer?

max muster steyding at yahoo.de
Tue Aug 23 22:09:00 EEST 2022


Hello Guys.

Here are my working instructions for playing Bluray with MPLayer.

I use MinGW32 environment on Windows 10 for compille libbluray/libaacs/libbluray/MPlayer.
I install MinGW32 via media-autobuild_suite script:

https://github.com/m-ab-s/media-autobuild_suite
1. Download and install the following Java environments via link below:   OpenJDK 15:
   https://www.oracle.com/java/technologies/javase-downloads.html
   jdk-15.0.1_windows-x64_bin.exe
   
   JRE 8:
   https://www.java.com/de/download/manual.jsp
   jre-8u271-windows-x64.exe
   jre-8u271-windows-i586.exe

2. Set system variable:
   Name:    JAVA_HOME
   Path:    C:\Program Files\Java\jdk-15.0.1

3. Download und compile libaacs and libbdplus libraries via links below:
   Download libaacs: https://www.videolan.org/developers/libaacs.html
   Download libbdplus: https://www.videolan.org/developers/libbdplus.html
   Download ANT: https://ftp-stud.hs-esslingen.de/pub/Mirrors/ftp.apache.org/dist//ant/binaries/
   Extract binaries package and move containing folders BIN,LIB,ETC to /mingw32 (x86) or /mingw64 (x64)
   Compile libbluray library (without option --disable-bdjava-jar !!)

4. Move compiled DLLs ("libaacs-0.dll", "libbdplus-0.dll") to corresponding MPLayer binary (MPLayer.exe) directory und rename to "libaacs.dll" and "libbdplus.dll"
   Move JAR files (e.g. libbluray-awt-j2se-1.2.1.jar, libbluray-j2se-1.2.1.jar) from source code sub folder ".libs"
   to corresponding MPLayer binary (MPLayer.exe) directory.

5. Download AACS keydb.cfg file via http://fvonline-db.bplaced.net and move it to "C:\Users\<YourWindowsUser>\AppData\Roaming\aacs"
   For example "C:\Users\WonderFox\AppData\Roaming\aacs". Just create an "aacs" folder if it doesn't exist in the subfolder of "Roaming".

6. Now run MPLayer: "mplayer -cache 8192 br:///E:" in case E: is your Bluray drive

Troubleshooting:
--------------------------------------------------------------------------------------------------------------------------------------------------------
Bluray would not be played - MPLayer message(s):

---------------------->        ../src/libaacs/aacs.c:597: Error calculating media key. Missing right processing key ?
../src/libaacs/mmc.c:682: Drive does not support reading drive certificate
../src/libaacs/aacs.c:1142: Unable to read drive certificate
src/libbluray/disc/aacs.c:121: No usable AACS libraries found!
src/libbluray/disc/dec.c:197: aacs_open() failed: -3!
src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
Fülle Zwischenpuffer:  0.00% (0 Bytes)   src/libbluray/bluray.c:752: Skipping broken unit at 0
src/libbluray/bluray.c:299: 00002.m2ts: no timestamp for SPN 0 (got 0). clip 90000-436666140.
src/libbluray/bluray.c:752: Skipping broken unit at 0
src/libbluray/bluray.c:752: Skipping broken unit at 6144
...
src/libbluray/bluray.c:695: TP header copy permission indicator != 0. Stream seems to be encrypted.
...

Explanation:
------------
The AACS keydb.cfg file does not contain the appropriate Device- and/or ProcessingKeys for AACS library for your Bluray device.

Solution:
---------
Download FindVUK via link below:
FindVUK tool - get VUK of all Blurays supported by DVDfab applications - Doom9's Forum

Install one of the following programs:
DVDFab 10.0.4.8
Passkey 9.2.1.1 or
Media Player 3.2.0.0. 

Registered versions are recommended !

However, newwer versions of DVDFab has stopped supporting these players for newer discs. Latest DVDFab programs only allow retrieval of UnitKeys.

Start FindVUK and follow the instructions.

--------------------------------------------------------------------------------------------------------------------------------------------------------
Bluray would not be played - MPLayer message(s):

---------------------->        ../src/file/keydbcfg.c:701: No valid AACS configuration files found
../src/libaacs/mmc.c:682: Drive does not support reading drive certificate
../src/libaacs/aacs.c:1142: Unable to read drive certificate
src/libbluray/disc/aacs.c:121: No usable AACS libraries found!
src/libbluray/disc/dec.c:197: aacs_open() failed: -2!
src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
Fülle Zwischenpuffer:  0.00% (0 Bytes)   src/libbluray/bluray.c:752: Skipping broken unit at 0
src/libbluray/bluray.c:299: 00002.m2ts: no timestamp for SPN 0 (got 0). clip 90000-436666140.
src/libbluray/bluray.c:752: Skipping broken unit at 0
src/libbluray/bluray.c:752: Skipping broken unit at 6144
...
src/libbluray/bluray.c:695: TP header copy permission indicator != 0. Stream seems to be encrypted.
src/libbluray/bluray.c:752: Skipping broken unit at 55296
...

Solution:
---------
Check if the AACS keydb.cfg file is located in "C:\Users\<YourWindowsUser>\AppData\Roaming\aacs"
For example "C:\Users\WonderFox\AppData\Roaming\aacs". Just create an "aacs" folder if it doesn't exist in the subfolder of "Roaming".
--------------------------------------------------------------------------------------------------------------------------------------------------------
MPLayer message(s):
...
---------------------->        src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
---------------------->        src/libbluray/bdj/bdj.c:750: BD-J check: Failed to load JVM library
...

Solution 1:
-----------
Copy JAR files (e.g. libbluray-awt-j2se-1.2.1.jar, libbluray-j2se-1.2.1.jar) from source sub folder ".libs" corresponding MPLayer binary (MPLayer.exe) directory.

Solution 2:
-----------
Delete system variable "JAVA_HOME"

Regards,
Mark


More information about the MPlayer-users mailing list