2011-10-03 47 views
7

以某种方式可以在Windows7 +平台上以编程方式获取蓝光光盘ID和标题吗?如何从蓝光光盘中读取标题和ID?

+0

似乎并不支持内置于Windows中的蓝光光盘;你将不得不使用第三方库。 – Luke

+0

@Luke:很高兴知道,谢谢。你会特别推荐一个第三方图书馆吗? –

+0

我不知道任何。快速Google搜索导致[this](http://www.videolan.org/developers/libbluray.html),但它无法播放商业光盘,因此可能无法获取信息。如果光盘在某些媒体播放器软件中播放,则可能会暴露API以获取此信息;我很确定Windows Media Player会这样做。 – Luke

回答

3

如果您可以通过编程打开下面的文件,你可能会得到你所需要的:

/AACS/mcmf.xml - 该文件是受管理的复制清单文件,并且将包含一个“内容识别”属性(在mcmfManifest标签),可用于识别光盘。通常它是一个32位十六进制数字字符串。

有时,还有一个/CERTIFICATE/id.bdmv文件,其中包含一个4字节光盘组织ID(在字节偏移40处),后面跟着一个16字节光盘ID。

有时,XML文件bdmt_eng.xml中的/ BDMV/META/DL目录中存在元数据信息(将eng替换为其他语言的其他3字母语言代码)。例如在黑暗骑士的补充盘上,我看到这个文件包含:

<di:title><di:name>The Dark Knight Bonus Disc</di:name></di:title>

+0

有趣!不过,我还有更多的问题:contentID是唯一的,因此它能让我唯一标识光盘标题?顺便说一句,据我可以注意到id.bdmv和bdmt_LLL.xml大多数时间只在解密光盘上可用,我错了吗? –

+2

据我所知,contentID必须是唯一的,因为它是允许内容作者提供托管副本“优惠”的关键。由于托管副本是强制性的(但尚未提供),截止日期(2009年12月?)后生成的任何商业光盘必须具有唯一的contentID。但是,我不知道可用的公共映射从contentID中查找标题。至于其他文件,只需安装蓝光光盘供阅读,它们就可以在我的Linux机器上阅读。他们不需要任何形式的AACS解密,因为他们不是AV文件。 – jmhindle

+2

经过少许挖掘,contentID是ISAN号码 - 请参阅http://www.isan.org/docs/ISAN_in_Blu-ray_june_2010_S – jmhindle

0

对于.NET,BDInfo库将解析相关的光盘结构。