Difference between revisions of "Blu-ray"

From ArchWiki
Jump to: navigation, search
(Fast & Simple: added note on revocation)
(mplayer: title number in command line)
Line 31: Line 31:
To play blurays in mplayer the basic playback command is:
To play blurays in mplayer the basic playback command is:
{{bc|mplayer br:///</bluray/mount/dir>}}
{{bc|mplayer br:///</bluray/mount/dir>}}
{{bc|mplayer br://<title number> -bluray-device </bluray/mount/dir>}}

Revision as of 17:40, 17 April 2012

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.

Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어

External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی



Firstly install libbluray from the official repositories and libaacsAUR from the AUR.

Fast & Simple

Put http://vlc-bluray.whoknowsmy.name/files/KEYDB.cfg (no pregenerated keys, contains a real hcert) in ~/.config/aacs/. This method will only work if your drive has not revoked the host key/certificate (usually when inserting a newer disc) that is in the KEYDB.cfg file.

cd ~/.config/aacs/ && wget http://vlc-bluray.whoknowsmy.name/files/KEYDB.cfg
Next, mount the bluray to a directory. eg:
# mount /dev/sr0 /media/blurays
If Fast & Simple does not work
If bluray playback with the hcert mentioned above does not work, install aacskeysAUR and get KEYDB.cfg from http://forum.doom9.org/attachment.php?attachmentid=11170&d=1276615904 or (newer) http://forum.doom9.org/showthread.php?p=1525922#post1525922 and unzip it into ~/.config/aacs/. Then run
sed -i 's/\([[:xdigit:]]\)\{5,\}/0x&/g' ~/.config/aacs/KEYDB.cfg"
Next, mount the bluray to a directory. eg:
# mount /dev/sr0 /media/blurays
Now the bluray has to be added to the key database so that libaacs can decrypt it. To do this, cd into /usr/share/aacskeys and run:
aacskeys </bluray/mount/dir>
cd /usr/share/aacskeys && aacskeys /media/blurays

Edit ~/.config/aacs/KEYDB.cfg and add the information outputted by aacskeys using this syntax:

0x<unit key file hash> = Film Title    | V | 0x<volume unique key>
If aacskeys is not able to generate the key

Try to generate the VolumeID with DumpVID using wine. The VolumeID can now be used to generate the bluray key with aacskeys with the VolumeID option

Usage: aacskeys [options] <mountpath> [volume id / binding nonce]


To play blurays in mplayer the basic playback command is:

mplayer br:///</bluray/mount/dir>


mplayer br://<title number> -bluray-device </bluray/mount/dir>


Stuttering Video

It is likely that you will need to enable hardware acceleration and multi core CPU support for the bluray to play smoothly.

For nvidia cards, enable hardware acceleration by installing libvdpau and using the option '-vo vdpau' with mplayer. eg:

mplayer -vo vdpau br:///</bluray/mount/dir>

For multi core CPU support use the options '-lavdopts threads=N', where 'N' is the number of cores. eg:

mplayer -lavdopts threads=2 br:///</bluray/mount/dir>
Incorrect Audio Language

You can scroll through the playback languages using the '#' key.

Out of Sync Audio

From your first mplayer output, you must find the codec used for the bluray. It will be at the end of the line "Selected video codec".

For H.264 discs use the option '-vc ffh264vdpau'. eg:

mplayer -vc ffh264vdpau br:///</bluray/mount/dir>

For VC-1 discs use '-vc ffvc1vdpau'. eg:

mplayer -vc ffvc1vdpau br:///</bluray/mount/dir>

For MPEG discs use '-vc ffmpeg12vdpau'. eg:

mplayer -vc ffmpeg12vdpau br:///</bluray/mount/dir>
Revoked Host key/certificate

Unfortunately, what may happen when inserting a newer BluRay disc is the revocation of host key/certificates (which are keys of licensed software players) by your drive. When this happens, aacskeysAUR will return this message:

 The given Host Certficate / Private Key has been revoked by your drive.

This is part of the AACS protection scheme: editors are able to revoke old software player host keys that have leaked on the Internet and distribute the lists on newer commercial disc releases. This is irreversible and does cannot be fixed even after reflashing the drive. The only two ways to correct this would be:

  • to update the host key/certificate part in the KEYDB.cfg file to ones that have not been revoked (yet)
  • to add in KEYDB.cfg the VUK of each specific disc instead, as explained above. VUK cannot be revoked by the industry.


Since version 2.0.0, vlc has had experimental bluray playback support. Bluray menus are not yet working. For discs not protected by BD+ the above Fast & Simple method should work (unless your drive has revoked the host key/certificate, then only the other method will work).

Start playback with:
vlc bluray://</bluray/mount/dir>

For BD+ discs, no decoder library exists/has been released yet.

Other Useful Software

For DVD, the libdvdcss package supplies the needed decryption libs. Below are some options for BluRay/HD-DVD decryption. Users can employ to backup a commercial BluRay movie under Fair Use guidelines:

  • anydvdhd - Commercial software requiring users to run it on an Microsoft OS in a VM.