VLC et les Blu-ray sur Mac : un bilan (et des menus en Java)

Ca fait deux ans que je teste la lecture des Blu-ray sur Mac avec VLC. En février 2012, je pouvais lire un Blu-ray de test, sans protection, avec une bêta de VLC 2.0. Là, en mars 2014, une bonne partie de mes Blu-ray fonctionne, certains avec les menus, et le travail effectué est vraiment important. J’en profite donc pour faire un petit bilan.
In English.


Un peu de technique, d’abord. Pour lire un Blu-ray sur un Mac, il va falloir un lecteur de Blu-ray, ça se trouve pour environ 70 € en externe.

Pour la lecture elle-même, on a besoin de trois bibliothèques. Libbluray (actuellement en version 0.5), libaacs (actuellement en version 0.7) et libbdplus, actuellement en version 0.1.

Libbluray est intégré dans VLC directement, et gère la lecture des Blu-ray, sans les protections. Actuellement, VLC intègre libbluray 0.4 sans le support BD-J (une implémentation de Java utilisée pour les menus et les bonus). La prochaine version de VLC, la 2.2, devrait intégrer libbluray 0.5 avec le support BD-J. Pour tester, j’ai compilé manuellement VLC 2.2 pour ma machine avec libbluray 0.5 et BD-J, mais ça reste assez compliqué, donc je vous conseille d’attendre une version finale.

libaacs est disponible sur le site de Videolan, doit être compilé et permet de décoder les Blu-ray protégés avec le DRM AACS. Dans le monde des Blu-ray, tous les films commerciaux sont protégés. libaacs nécessite des clés pour fonctionner, qui ne sont évidemment pas distribuées par Videolan pour des raisons évidentes de droits.

libbdplus est disponible sur le site de Videolan, doit être compilé et permet de décoder les (rares) Blu-ray protégés avec le DRM BD+. libbdplus nécessite l’équivalent d’une clé pour fonctionner, qui n’est pas distribué par Videolan (pour des raisons évidentes).

Les clés

En simplifiant, on peut décoder un Blu-ray de deux façons : soit avec sa clé unique (VUK), soit en utilisant une clé « générique ». On trouve des VUK assez facilement, mais la solution idéale est évidemment la clé générique, même si elle a des limites. Les Blu-ray évoluent en effet, et la clé de déchiffrement aussi : les premiers films avaient une protection en version 1, les Blu-ray actuels en sont (au moins) à la version 44. Les clés que l’on peut trouver sur Internet en quelques clics permettent de décoder les Blu-ray dont la clé est au maximum en version 28 selon mes tests. Au-delà, le décodage ne fonctionne pas.

Pour BD+, le décodage est possible en théorie sur les trois premières générations de la protection (on est actuellement en version 17), mais je n’ai pu décoder que des films utilisant les deux premières générations.

Les menus

Le support des menus est encore expérimental. Actuellement, sur 94 Blu-ray, j’ai cinq disques dont les menus sont totalement fonctionnels et 15 disques dont les menus sont utilisables en partie. A noter que la gestion des zones est laissée au lecteur logiciel (et pas au lecture physique comme sur les DVD) et qu’il faut donc parfois paramétrer VLC pour sélectionner manuellement la bonne zone.

Un message de zone

Un message de zone

Le choix de la zone

Le choix de la zone

Un exemple de menu qui fonctionne dans VLC.

Dans l’absolu, VLC devrait être capable de lire la grande majorité des Blu-ray avec une clé à jour : sur 94 films, j’ai 18 films en BD+ et certains fonctionnent, et tous les autres utilisent uniquement l’AACS. Dans la pratique, j’ai uniquement un disque qui ne fonctionne pas du tout : un Blu-ray de bonus.