VLC media playerは、オープンソースで開発されているマルチプラットフォーム対応のメディアプレイヤーです。
無料で使える人気のメディア再生ソフトで、ブルーレイディスクも対応しているのですが、市販・レンタルのブルーレイはコピーガードによってデフォルトのままでは再生できません。
僕はレンタルブルーレイをよく利用するので、どうやったら再生できるのかいろいろ調べて解決しました。
VLC media playerでコピーガードのブルーレイを再生する方法を紹介します。
AACSのコピーガードで再生できない
VLC media playerでレンタルしたブルーレイディスクを再生しようとすると、エラーメッセージが出て再生できません。
ブルーレイエラー:
このブルーレイディスクはAACSの複合ライブラリが必要ですが、あなたのシステムにはインストールされていません。
AACSとは、HD DVD・Blu-ray Discで採用されているコピーガードです。
その他、BD+という著作権保護技術も使用されている場合があるみたいですね。
事前準備と前提条件
手順を進める前に、VLC media playerをインストールしておきます。
そして、ブルーレイディスクを再生できるブルーレイドライブが必要です。
僕は、外付けポータブルブルーレイドライブのI-O DATA EX-BD03Kという製品を使用しています。
VLC media playerで市販・レンタルブルーレイを再生する方法
本題のVLC media playerでコピーガードの市販・レンタルブルーレイディスクを再生する方法を解説します。
手順
手順は、Doom9’s Forumに記載の内容を参考にしました。
何をしているのかを調べると、コピープロテクト規格のAACS・BD+を解読するlibaacs・libbdplusをVLCで使えるようにして、それに必要なキーファイルなどをそれぞれ格納しているようです。
2つの格納先の違いは、「%APPDATA%」ならユーザー単位で設定、「C:\ProgramData」なら全ユーザー共通のシステム全体で設定されます。
特にこだわりがなければ、「C:\ProgramData」の方に格納すればOKです。
今回は全て「C:\ProgramData」の方に格納しています。
次で、詳細の手順を解説しますね。
libaacs/libbdplusの4つのDLLファイルをVLCインストールフォルダへ格納
libaacs/libbdplusへアクセスしてファイルをダウンロードします。
解凍するとフォルダ内にwin32・win64のフォルダがあるので、環境に合わせてどちらかのフォルダ内の4つのDLLファイルをコピーします。
(今回は64bitの方で行います。)
コピーした4つのDLLファイルをVLCインストールフォルダに貼り付けて格納します。
vmファイルを格納
vmファイルへアクセスしてファイルをダウンロードします。
「C:\ProgramData\bdplus」フォルダを作成し、解凍したフォルダをそのまま格納します。
キャッシュBD+テーブルを格納
キャッシュBD+テーブルへアクセスしてファイルをダウンロードします。
「C:\ProgramData\bdplus\convtab」フォルダを作成し、解凍したファイルを全て格納します。
キャッシュBD+テーブル更新分を格納
2020-07-05更新分と2021-01-06更新分へアクセスしてファイルをダウンロードします。
前項で配置した「C:\ProgramData\bdplus\convtab」フォルダに、解凍したファイルを全てコピペして上書きします。
KEYDB.cfg(日本語)を格納
KEYDB.cfgへアクセスして日本語のファイルをダウンロードします。
「C:\ProgramData\aacs」フォルダを作成し、解凍したファイルを格納します。
KEDYB.cfgファイルの先頭にホスト証明書とキーを追加
前項で配置したKEDYB.cfgファイルをテキストエディタで開き、先頭に以下の内容を追加して上書き保存します。
; KEYDB.cfg
; Contents:
; - Device Keys: 15
; - Processing Keys: 29
; - Host Certificates: 10
; Device Keys
| DK | DEVICE_KEY 0xAA856A1BA814AB99FFDEBA6AEFBE1C04 | DEVICE_NODE 0x0018 | KEY_UV 0x00000001 | KEY_U_MASK_SHIFT 0x17 ; MKBv01
| DK | DEVICE_KEY 0x810827A76E5B2CC1685E3217A23E2186 | DEVICE_NODE 0x0100 | KEY_UV 0x00000100 | KEY_U_MASK_SHIFT 0x17 ; MKBv01-MKBv12
| DK | DEVICE_KEY 0x44145A846F19D096F2C84A2E50C5C4F5 | DEVICE_NODE 0x0200 | KEY_UV 0x00000280 | KEY_U_MASK_SHIFT 0x09 ; MKBv14-MKBv16
| DK | DEVICE_KEY 0xEB55A475080FBCF18534EFA0839A7373 | DEVICE_NODE 0x0340 | KEY_UV 0x00000340 | KEY_U_MASK_SHIFT 0x08 ; MKBv17-MKBv19
| DK | DEVICE_KEY 0xFB4AC39009E82113D45ECF4B7EAEA467 | DEVICE_NODE 0x0388 | KEY_UV 0x00000384 | KEY_U_MASK_SHIFT 0x07 ; MKBv20-MKBv21
| DK | DEVICE_KEY 0x8BF4FBD91A7FB7DB8576D1E5A15A8544 | DEVICE_NODE 0x0388 | KEY_UV 0x00000384 | KEY_U_MASK_SHIFT 0x05 ; MKBv22-MKBv30
| DK | DEVICE_KEY 0xA088BC72424478EACAF237A9E258351E | DEVICE_NODE 0x0400 | KEY_UV 0x00000200 | KEY_U_MASK_SHIFT 0x17 ; MKBv01-MKBv23
| DK | DEVICE_KEY 0x5FB86EF127C19C171E799F61C27BDC2A | DEVICE_NODE 0x0800 | KEY_UV 0x00000400 | KEY_U_MASK_SHIFT 0x17 ; MKBv01-MKBv48
| DK | DEVICE_KEY 0x6C02A9C4DF6DE9314F6F4BB44677BD67 | DEVICE_NODE 0x0600 | KEY_UV 0x00000500 | KEY_U_MASK_SHIFT 0x0A ; MKBv24-MKBv35
| DK | DEVICE_KEY 0x4D84E4D6D434A08D6EF0B523B6D891B2 | DEVICE_NODE 0x0700 | KEY_UV 0x00000680 | KEY_U_MASK_SHIFT 0x09 ; MKBv36-MKBv43
| DK | DEVICE_KEY 0xF2F56575C0C5448042298FA9B316AB9A | DEVICE_NODE 0x0710 | KEY_UV 0x00000714 | KEY_U_MASK_SHIFT 0x04 ; MKBv44-MKBv51
| DK | DEVICE_KEY 0x31A194B61D3119D2B09DC0D8B9A73A00 | DEVICE_NODE 0x0880 | KEY_UV 0x00000840 | KEY_U_MASK_SHIFT 0x0B ; MKBv49-MKBv52
| DK | DEVICE_KEY 0x25F9782764D026413C3D4868F891E81E | DEVICE_NODE 0x0884 | KEY_UV 0x000008A0 | KEY_U_MASK_SHIFT 0x07 ; MKBv53-MKBv54
| DK | DEVICE_KEY 0xFDAD855E9A89E5335288AF2805DC0497 | DEVICE_NODE 0x08F0 | KEY_UV 0x000008FC | KEY_U_MASK_SHIFT 0x04 ; MKBv55-MKBv57
| DK | DEVICE_KEY 0x7FD1F7966AD2B0E4F4901205E32A69BA | DEVICE_NODE 0x0A00 | KEY_UV 0x00000900 | KEY_U_MASK_SHIFT 0x0B ; MKBv49-MKBv62
; Processing Keys
| PK | 0x09F911029D74E35BD84156C5635688C0 ; MKBv01
| PK | 0x455FE10422CA29C4933F95052B792AB2 ; MKBv03
| PK | 0x973940BB180E83266231EE596CEF65B2 ; MKBv03-MKBv12
| PK | 0xF190A1E8178D80643494394F8031D9C8 ; MKBv04
| PK | 0x7A5F8A09F833F7221BD41FA64C9C7933 ; MKBv06-MKBv08
| PK | 0xC87294CE84F9CCEB5984B547EEC18D66 ; MKBv09
| PK | 0x452F6E403CDF10714E41DFAA257D313F ; MKBv10
| PK | 0x58EBDADF88DCC93304CBBEDB9EE095F6 ; MKBv14-MKBv16
| PK | 0xCC72242D4CC8156B960502805987DED0 ; MKBv14-MKBv23
| PK | 0x465FA8BE828509014D05D2FCCEFF35D2 ; MKBv17
| PK | 0xAD5E546C46D72DC083AEB5686924E1B3 ; MKBv18-MKBv19
| PK | 0x53FCE78ECD352DA50D526B5EE3D3D96B ; MKBv20-MKBv21
| PK | 0xC32238976FF44A51E2D33553CFE85772 ; MKBv22-MKBv30
| PK | 0x3ADE0AB7C9E4270055506C449E8EE6CF ; MKBv24-MKBv48
| PK | 0xD11E3DBA323D37DE3DE0D6A0DC5EC807 ; MKBv24-MKBv25
| PK | 0xAAAF8A16F829DA16A124D837F64EE2D8 ; MKBv26-MKBv28
| PK | 0xC0F535929D59CD071BEE9CB53F0C21C2 ; MKBv30-MKBv35
| PK | 0x99AB6AE0A7E13504CE284B7CA401B26A ; MKBv31-MKBv36
| PK | 0x19DF7DA3A1FB75AC4DC34CCB6AF6A5C7 ; MKBv36-MKBv38
| PK | 0x3FB9D3314AAC7F76581190A624A5C578 ; MKBv39-MKBv43
| PK | 0x186D1BBA19487F6450C1FD5ADA9407E6 ; MKBv44-MKBv51
| PK | 0xF2C416A45D806D964F567B5D7FED209D ; MKBv49-MKBv52
| PK | 0x7A8BAB1B0C66C39D1A2EEE6883E4DD3C ; MKBv53-MKBv54
| PK | 0x1F70D403A6D39B20A3F7131750ACAA22 ; MKBv53-MKBv54
| PK | 0x8FBDD8452146552EF76136B0A348590B ; MKBv55-MKBv57
| PK | 0x0EB5F81CF17405CAFDB97832F5EA11B4 ; MKBv55-MKBv62
| PK | 0x76DDD7093216D28C15049A6B9C5C18B9 ; MKBv63
| PK | 0x3B323C7A9AFC0921831D247239823DE6 ; MKBv64-MKBv65
| PK | 0x7A4F40D8696B7B159BE8176CC9EDB85C ; MKBv66-MKBv68
; Host Certificates
| HC | HOST_PRIV_KEY 0x909250D0C7FC2EE0F0383409D896993B723FA965 | HOST_CERT 0x0203005CFFFF800001C100003A5907E685E4CBA2A8CD5616665DFAA74421A14F6020D4CFC9847C23107697C39F9D109C8B2D5B93280499661AAE588AD3BF887C48DE144D48226ABC2C7ADAD0030893D1F3F1832B61B8D82D1FAFFF81 ; Revoked in MKBv72
| HC | HOST_PRIV_KEY 0x5924778E74CC2B18B95BAE7D93A09505B1BF08CE | HOST_CERT 0x0201005CFFFF800001B100005F1407EDBF9D1CD38F33A625209B5ED10D48F71E2AB2A1C53CCF9E25D6AEB4BEE968FBBD10DC44064841C358106731589A2C12DD5B4D86FE840D2C6525594E72A19C2EDBC3DD6A28F75E9A9C00D684BB ; Revoked in MKBv70
| HC | HOST_PRIV_KEY 0x5F291AE7CF68D67F58689A4CBFE2953064539FAA | HOST_CERT 0x0203005CFFFF8000018900003E7C4B0931C0045DFB017F24B1557F5BD0AF5B961FBC1B43519F9023A1E84A3E8C06967B76469CC86527AA3807258C58E00F73971F9BC8353165476454911E3A9D07D742980598BFF9B3DF5EA18E0C7F ; Revoked in MKBv63
| HC | HOST_PRIV_KEY 0x27263F402E2D6DB56B1FB7BB4524C6CD5C9F2EF4 | HOST_CERT 0x0201005CFFFF800001460000952D611B06911B0EAEE577D3715D1FA0E405914068752559DFBD845CB80F4FEE04A40B8FED842ACB78F9F898AEC395409E929C55A20A7EE853509BB84D8FB0DC99E5CAC5F239F0CD79B38C0678702B1C ; Revoked in MKBv58
| HC | HOST_PRIV_KEY 0x0F7B481182425FC4C32CDDE612DD05B1BD7863D6 | HOST_CERT 0x0203005CFFFF800000AD00005F27B91F047E60C251F4262DE74EC061F9261DCE3254EB737EDED53AD84E12805BBEEDB12C285A61627A529129BD98F8590634CF35A9820CD213D5AF786BDE489EC37A75D4D444B8AB40923E317169E9 ; Revoked in MKBv51
| HC | HOST_PRIV_KEY 0x88B245EA25315F46E6E99D9D521EB1194454A82D | HOST_CERT 0x0201005CFFFF800000C400005BF6843ED1AA9C9DEEFEAD8174479C72AB5457691EEB75669105BB195D4B9133069A18FD5357797116CEC22D7FE8F366C2A092E1D00DB770E9E01DB687456B6FBFA28C962D88F05DD43F584ECC821AF7 ; Revoked in MKBv46
| HC | HOST_PRIV_KEY 0x668C9A75EEFC8DA4261938E271285061BB09F0DD | HOST_CERT 0x0201005CFFFF80000039000065EAC9878B85EFF4D77A62B1D600024ACE68DD3366880E4F844F34B77A050135A20E73B626DAEA5157B32EB84BC6E87B0DEE4D833CEADA86120151002C3C66D5256F71CFA68B7E55BA1B351F3403434E ; Revoked in MKBv32
| HC | HOST_PRIV_KEY 0x567A6A8EFFFD8967651CF1BB8D15EDB6D2463555 | HOST_CERT 0x0200005CFFFF0000006400006440BE797538E4FC369FC50BBE9F95CC694338210CDFACE0D2C878BAB96BB72BA5A29D0F7D2E9B836B4CE06781D933544E6258F1F38668B4733F24638CCB6F5B71220A2220217367F833635E97784D9E ; Revoked in MKBv22
| HC | HOST_PRIV_KEY 0x8C8647FE2A70EF0388EA9E43F432CC441C6B108C | HOST_CERT 0x0200005CFFFF000000AE00004142A5411F1E63F185581C876B939FB40B523BF69C004CA69E047606EE5183C0ABEF1E7D04CB6E65260677E7B0573D08E60957935503ED78F7E27B190B4A7CAFCBAFF4A2836453ECF72E49668DAF1DB9 ; Revoked in MKBv17
| HC | HOST_PRIV_KEY 0x4737676058D7029452514F0AB186DC4CCA8C578F | HOST_CERT 0x0200005CFFFF0000000C00006E3DEB679B9A16ADFAA8E30878767BA6EB2A9B415385AD1181B4446C31E9A5DD2AB808B364FF15885BAC490964318C9BF8029FCF76F688A54FBDA03F6D9332EF04E5A61312DA85880A4D9CBB79D8602E ; Revoked in MKBv03
; Insert Disc Keys Here
各ファイル配置後
各ファイルを配置すると、このようになりました。
レンタルブルーレイディスクを再生
設定の終わったVLC media playerで、レンタルしたブルーレイディスクの映画 TENET テネット を再生してみました。
特に問題なく再生できましたね。
全てのブルーレイディスクがこの設定で再生できるかは分かりませんが、2021年1月8日にレンタル開始したこの新しい作品でも再生できたので、しばらくはこの設定で再生できるんじゃないかな。
時が経てば、また別途キーの更新などの対応が必要になるかと思います。
ディスクメニューの表示はJavaのインストールが必要
ちなみに、メディアを開くメニューにはディスクメニューのチェックボックスがありますが、ディスクメニューを表示させるためにはJavaをインストールする必要があります。
ディスクメニューなしで再生しても、オーディオや字幕の変更はメニューから可能です。
最後に
今回は、VLC media playerでコピーガードの市販・レンタルブルーレイディスクを再生する方法を紹介しました。
ブルーレイディスクが再生できない状態で困っている方に参考になれば幸いです。
この作業を行うのが難しいなら、確実に再生できる有料ソフトを購入するのもアリ。
その他の無料・有料のブルーレイ再生ソフトは、こちらの記事で紹介しています。
コメント
お忙しいところ申し訳ありませんが教えてください。
keydb.cfgには各国別に分かれていましたので日本を選択してダウンロードしました。
ホスト証明書とキーで表示されるものすべてをkeydb.cfgの先頭にコピーしたら
良いのでしょうか。
キャッシュDBテーブルはダウンに時間がかかっているのでまだ処理していません。
コメントありがとうございます。
「ホスト証明書とキー」のリンク先の投稿に書かれている1つだけで大丈夫だと思います。
ダウンロードしたKEYDB.cfg(日本語)の先頭に追加する内容は、記事本文に解説を追加しました。
patchesには一つ入ってたんですがwin32と64には何も入ってません…
あと、もう少し画像でやり方を説明して欲しいです…いろいろすみません。
コメントありがとうございます。
画像を追加して記事を更新しました。
win32・win64のフォルダが空になっているなら解凍に失敗しているのかもしれませんね。
KEYDBの所が少しよく分かりません。
どこにこのコード(?)みたいなのを書けばいいのでしょうか?
コメントありがとうございます。
ちょっと表現が悪かったので修正しました。
ダウンロードして配置したKEDYB.cfgファイルをテキストエディタで開いて先頭に記述を追加する、という手順です。
すみません、convtabの直下の上書き格納?がいまいちわからないので、説明していただけますでしょうか?
コメントありがとうございます。
画像を追加して記事を更新しました。
キャッシュBD+テーブル更新分はコピペしてファイルを上書きします。
こんにちは。
こちらの記事に記載の手順を行い、今月発売されたブルーレイをwin10のPCで再生することができました。大変助かりました。ありがとうございました。
コメントありがとうございます。
お役に立ってよかったです!
こんにちは
VLCでブルーレイが再生出来ず、困っていたところにこの記事を見て
無事に再生出来ました。ありがとうございます。
コメントありがとうございます。
お役に立ってよかったです!
こんにちは
キャッシュvmファイルをダウンロードしようとするとPCがフリーズして動かなくなります
対処お願い致します。
コメントありがとうございます。
キャッシュBD+テーブルのファイルでしょうか?
容量がかなり大きいので、低速ではない通信環境で、動作の重くないPCでお試しすることをおすすめします。
こんにちは。
上記の手順を行ったのですが、「VLCはMRL ‘dvd:///E:\’を開けません。詳細はログを確認してください。」というエラーが出てしまいました。また、ログには
「main: one instance mode ENABLED
main: vlcはデフォルトのインターフェースで実行しています。インターフェースのない vlc を使用するには’cvlc’を使用してください。
dvdnav error: DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
dvdnav error: vm: vm: failed to read VIDEO_TS.IFO
dvdread error: DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
dvdread error: DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed」
と出ていました。
エクスプローラーで確認するとしっかりブルーレイだと認識しています。
何か解決方法はありませんでしょうか?
丸投げ且つ長文の質問、大変失礼いたしました。
コメントありがとうございます。
メッセージで検索してみましたが、イマイチ分かりませんでした。。
始めの2行についてVLCの設定で関連するとすれば、メニューのツール→設定→インターフェースの「プレイリストとインスタンス」のところだと思うので、ここらへんを設定変更してみて再度実行してみると結果が変わるかもしれません。
こんばんは、
上記の手順を行いまして、とあるアニメの1、3巻は視聴できるようになったのですが、2、4巻はエラーが出て視聴ができませんでした。以下がそのエラーです。
ブルーレイエラー:
AACS設定ファイルに有効なProcessing Keyがありません。
入力を開くことができません:
VLCはMRL ‘bluray:///E:/’を開けません。詳細はログを確認してください。
また、エクスプローラではブルーレイと認識しており、Leawo Blu-ray Playerでは再生することは可能なのですが…
何か解決方法があればと思いコメントさせていただいた次第です。ご教授の程よろしくお願い致します。
コメントありがとうございます。
メッセージから推測するに、KEYDB.cfgのキー値が足りていないのかなと思います。
どういった内容を追加すればいいのかは今のところ調べても分からないので、何か情報が出てきたら追記しておきます。
こんにちは。手順通りに進めたのですが、また複合キーがない表示が出てしまいました。
KEYDBの更新があったようでentriesの数が違っているんですがここが原因でしょうか…
もし何かわかれば教えてください。
コメントありがとうございます。
記事執筆時とentriesの数が違っていますね。
おそらく何かキーが足りないんだろうなと思って掲示板を見ていますが、イマイチどれが必要なのかよく分かりません。。
https://forum.doom9.org/showthread.php?t=176924
お役に立てず申し訳ないです。
フランス版のブルーレイ(リージョンB)をよく考えずに購入してしまって観られず困っていましたが、このサイトに辿り着き、無事に観られるようになりました。本当に助かりました。ありがとうございます!
コメントありがとうございます。
お役に立って良かったです!