将 DVD 翻录成 ISO - 准确

将 DVD 翻录成 ISO - 准确

我一直使用 Brasero 将我的 DVD 收藏翻录为 .iso。但是,我在播放过程中发现部分 DVD 存在一些错误,例如,当播放过程中遇到错误部分(电影播放到一半时),VLC 播放器就会停止播放 iso 文件。

最糟糕的是,在翻录过程中没有出现任何错误或警告 - 我本可以。是否有方法或应用程序可以监控 DVD/文件数据完整性并避免将来出现此类情况?

有没有与 DVD 版 Exact Audio Copier 或 CDparanoia 相当的东西?

答案1

我认为你可以使用 dd 来复制磁盘。使用

dd if=/dev/cdrom of=image_name.iso

我可以确认它可以很好地与 CD 配合使用,并且也可以很好地与 DVD 配合使用。

编辑:我刚刚用它翻录了一张 DVD,所以我可以确认它也适用于 DVD。

答案2

我找不到一个指向我认为正确答案的链接。大多数只是说 DD CD/DVD。但媒体末尾有一个额外的填充,可能会导致错误。

我还应该指出,这对大多数人来说都是有效的,但我遇到了 Sony CSS/CPPM Protection 的问题,我使用了另一个程序来实现预期的结果。

无论如何,我发现以下内容对我来说非常有用..:

  1. 获取您正在复制的 CD/DVD 的信息。我还没有尝试过用音频 CD 来做这件事,因为我只是把它们翻录成 flac,但下面是在 DVD 上进行的测试。

    # isoinfo -d -i /dev/sr1 | grep -i -E 'block size|volume size'
    Logical block size is: 2048
    Volume size is: 2264834
    

    我们使用逻辑块大小作为 BS= 变量,使用卷大小作为 COUNT=

  2. 使用 DD 将 DVD 复制到 iso:

    # dd if=/dev/sr1 of=/mnt/incoming/test.iso bs=2048 count=2264834
    2264834+0 records in
    2264834+0 records out
    4638380032 bytes (4.6 GB, 4.3 GiB) copied, 373.405 s, 12.4 MB/s
    

    监测dd进度一种替代方法是添加status=progress

  3. 根据实际 DVD 测试图像。

    # md5sum /mnt/incoming/test.iso 
    d3a2cdd58b8c9ade05786526a4a8eae2  /mnt/incoming/test.iso
    
    # md5sum /dev/sr1
    d3a2cdd58b8c9ade05786526a4a8eae2  /dev/sr1
    

希望这能帮助那些寻找完整答案的人。

答案3

使用 dvdbackup。

翻录整张 DVD 的方法如下:

dvdbackup -i /dev/dvd -o ~ -M

这会将 DVD 内容放入主目录 (~) 的新子目录中。然后要生成 .iso,请使用以下命令:

mkisofs -dvd-video -udf -o ~/dvd.iso ~/[movie_name]

如果你愿意,你也可以只翻录主要功能(见linux 系统或者源码文档)。如果您想要视频文件(例如 .m4v)而不是 .iso,请使用手刹翻录整个 DVD 后(不要忘记安装 libdvdcss!)。

有一些方法可以减少步骤数,但这似乎比其他方法更为有效。

我特别高兴的是archlinux 文档

PS:我怀疑大多数答案在撰写本文时都非常好,但我发现它们在我撰写本文时没有帮助,所以我想我会写一个对我有用的答案,以防其他人在与我同时发现这个问题。

答案4

如果存在强大或奇怪的防复制保护并且 DVD 是您的,您应该先解密 DVD,然后执行其容错复制。

安装依赖项:

$ sudo apt install libdvd-pkg && sudo dpkg-reconfigure libdvd-pkg
$ sudo apt install mplayer gddrescue

解密您的 DVD(假设设备文件是 /dev/sr0):

$ mplayer -dvd-device /dev/sr0 dvd:// -vo null -ao null -ss 10 -endpos 1

创建图像:

$ ddrescue -n -b 2048 /dev/sr0 title.iso title.log

您可以稍后处理图像“title.iso”。ddrescue 应该跳过乱码内容(如果有)。

相关内容