我(jgirot)不是本軟件的原始作者或以下有關它的信息。
以下從http://bblank.thinkmo.de/blog/archive/2010/08/29/new-software-python-dvdvideo於2016年9月13日進行了複製。另外,如果原始源被刪除或其他不可用,則在此處複製為後代。
開始原始博客文章:
Python-DVDVIDEO是讀取DVD-Video圖像的庫。它包括一個用於轉儲加密DVD-VIDEO圖像的工具。它在Python 3中實現。
經過很長時間,我決定再次寫信。我決定從我為自己的用法編寫的軟件開始,這對他人很有用。我將從Python-DVDVIDEO(python 3中寫的DVD-Video讀取器)和參考工具DVD-VIDEO-BACKUP-image(通用DVD-VIDEO DUMPER)開始。讓我們看看,如果此博客將來會看到更多帖子。
意圖
我開始寫這個軟件,因為libdvdread通常無法破譯我新購買的視頻DVD。 LibDVDRead期望文件系統和磁盤上其他元數據的有效結構相當有效。它將在幾個錯誤條件下強行紓困。因此,我經常結束脩補libdvdread,以使DVDbackup能夠讀取新磁盤。
通常,有兩種方法可以創建此類DVD的備份,例如文件或完整的圖像。如果文件系統中存在某些缺陷,則將它們傾倒為文件,就像幾個標題集中的某些空間一樣。我有一個磁盤在這種轉儲過程中產生25GIB的輸出。因此,這樣做的問題較小的方法是傾倒完整的圖像。這就是我在我基於此的工具中使用的方式。
部分
該軟件分為幾個部分。首先是一個小型UDF閱讀器。最重要的是DVD視頻閱讀器。它利用了libdvdcss包裝器。所有這些都用於實現一個小工具來傾倒整個圖像。我將在這裡描述這些部分。
UDF閱讀器
UDF閱讀器實現了一組最小功能。我僅實施了根據需要發現的東西,並在可用的DVD中使用了。該讀者允許閱讀LowLevel UDF,用作所有視頻DVD的基礎。
DVD視頻閱讀器
DVD視頻閱讀器使用UDF讀取器從磁盤中獲取必要的信息。同樣,這個讀者很安靜。它僅信任UDF的標題集開始,並期望在信息文件中列出其他任何內容。這允許讀取甚至具有損壞的文件系統的光盤,這確實很常見。
libdvdcss包裝器
LIBDVDCSS包裝器是使用CTYPE實現的。 CTYPES庫允許輕鬆訪問共享對像中定義功能。該庫允許調用函數和地圖參數,並將值返回到Python數據類型。該包裝器允許我閱讀加密的DVD。
圖像傻瓜
該工具允許將加密的視頻DVD轉移到文件中。它試圖檢測磁盤的加密(視頻/VOB文件)和未加密的(信息文件,否則使用的空間)部分。這樣,只要它可以讀取文件系統和信息文件,就可以轉儲任何內容。但是,某些光盤包含重疊的區域,這很容易脫髮。
該工具包括一個小型沖突解析器,該解析器處理重疊的零件。它使用一組規則來允許某些類型共存並修改一些類型。關於規則,將包含在信息文件中的內容進行了重新標記,但也沒有始終將標題VOB放置。有了這個解析器,大多數問題都可以解決,我們將獲得可播放的結果。
許可和分發
該軟件包是獲得許可的GPL 3或更高版本。它適用於通過alioth分發的新(git://git.debian.org/users/waldi/python-dvdvideo.git)
結論
該工具使我可以將所有視頻DVD丟棄我上次接觸的所有視頻DVD。它使我可以在筆記本上觀看沒有光盤讀取器的視頻。也許有人也可能需要這樣的工具。