刻录到 DVD 后,小的 .iso 文件会变得很大

刻录到 DVD 后,小的 .iso 文件会变得很大

我创建了一个.iso

mkisofs -o isofile.iso 文件

iso 很小,大约 300KB

然后我用以下方法烧毁了它:

cdrskin dev=/dev/sr0 -v padsize=300k isofile.iso

令我惊讶的是,当我取出 DVD 时,大约有五分之一的 DVD 区域被写入了,考虑到文件只有 300KB 左右,而 DVD 的空间大约为 2GB,这似乎有点过分了。

如果您进行计算,并假设 DVD 有 2GB,并且使用了其中五分之一的空间,则您会发现有超过 300MB 的数据被写入 DVD。这大约是文件大小的千倍,因此可能不是由于填充、块大小或类似原因。

那么为什么会发生这种情况呢?

答案1

在 DVD-R 或连续 DVD-RW 上运行不带选项 -multi 的 cdrskin 会导致后轨道活动足够长的时间来写入 1 GB。

MMC-5 规范中关于 CLOSE TRACK SESSION 命令提到,记录区域的最小半径为 30 毫米。这大约是 1 GB 的数据。对于 DVD-R[W],是否填充的决定权留给了驱动器。对于 DVD+R,可以在两个关闭功能之间进行选择。其中之一是:

6.3.3.4.4 关闭功能 101b:以最小半径完成光盘“[...] 为了确保与只读设备的最大交换兼容性,保护区 2 应记录到设备定义的 PSN,该 PSN 近似于光盘半径 30 毫米。建议值:70DE0h (462 304)。”(表 49:保护区 2 位于 DVD+R 导出部分的末尾。)

cdrskin 下面的 libburn 在关闭 DVD+R 时使用此功能。

其他软件可能会使用其他关闭功能,该功能不会起作用:

6.3.3.4.5 关闭功能 110b: 完成光盘

无论如何,如果光盘关闭,填充就不会浪费任何空间。

如果我将选项 -multi 添加到在顺序 DVD-RW 上运行的 cdrskin,则后跟踪活动不会持续太长时间。第一个会话膨胀到大约 128 MiB。下一个可写地址甚至高出另外 56 MiB。第二个会话完成得相当快,并且不会膨胀超过所需的填充。到下一个可写地址的间隙只有 12 MiB。如果我在第三个会话中省略 -multi,则不会看到长时间的后跟踪活动。DVD 最终用尽的容量约为 200 MiB。看起来驱动器(ASUS BW-16D1HT 3.10)不需要用多会话 DVD-RW 填充高达 1 GB 的空间。

答案2

当您沿径向查看写入区域的宽度时,请记住写入宽度与数据量之间的关系不是线性的。直径 8 厘米的迷你 DVD 的容量仅为全尺寸 12 厘米 DVD 的三分之一左右。因此,全尺寸 DVD 外部 2 厘米半径必须包含约 2/3 的数据。

另一个因素是每次刻录都需要有导入和导出区域,其大小与刻录数据的大小无关。我手头没有确切的数字,但我认为在将 300kB ISO 刻录到 DVD 时,写入区域的宽度将由导入和导出的要求决定。

相关内容