Hello nixxers ![]()
I have been trying to make VLC work with my Blu-ray player, but nothing seems to work on my end. I have successfully made MakeMKV work on its own, so I can rip Blu-rays and watch them in their MKV form.
But for the VLC part, nothing seems to work, unfortunately ![]()
I have tried several way to do it but the code below i only one of my try
So I am seeking help here; if anyone has any experience with this, I would gladly take it.
Thx in advance
PS: The nixpkgs-2311 is for pinning an older version of MakeMKV (v1.17.6) because my drive (HL-DT-ST GGC-H20L) does not seem to work with the latest v1.18.
Here is my code :
{
pkgs,
self,
inputs,
...
}:
let
pkgs-2311 = import inputs.nixpkgs-2311 {
system = pkgs.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
libaacs-compat = pkgs.runCommand "libaacs-libbdplus-compat" { } ''
mkdir -p $out/lib
ln -s ${pkgs-2311.makemkv}/lib/libmmbd.so.0 $out/lib/libaacs.so.0
ln -s ${pkgs-2311.makemkv}/lib/libmmbd.so.0 $out/lib/libbdplus.so.0
ln -s ${pkgs-2311.makemkv}/lib/libmmbd.so.0 $out/lib/libaacs.so
ln -s ${pkgs-2311.makemkv}/lib/libmmbd.so.0 $out/lib/libbdplus.so
'';
vlc-with-makemkv =
let
libPath = pkgs.lib.makeLibraryPath [
libaacs-compat
pkgs-2311.makemkv
];
in
pkgs.symlinkJoin {
name = "vlc-with-aacs";
paths = [ pkgs.vlc ];
buildInputs = [ pkgs.makeWrapper ];
postBuild = ''
for bin in $out/bin/*; do
wrapProgram "$bin" \
--prefix LD_LIBRARY_PATH : "${libPath}" \
--set JAVA_HOME "${pkgs.jre}"
done
'';
};
in
{
home.packages = with pkgs; [
vlc-with-makemkv
pkgs-2311.makemkv
];
}
Here is the logs :
\[000055ed65b41940\] main playlist: playlist is empty
aacs.c:121: No usable AACS libraries found!
aacs.c:333: get_aacs_data(DISC_ID): libaacs not initialized!
dec.c:197: aacs_open() failed: -6!
bdj.c:795: BD-J check: Failed to load JVM library
bdj.c:795: BD-J check: Failed to load JVM library
\[00007fee0c001130\] libbluray demux: First play: 0, Top menu: 0