在实践中理解 wodim 的“-dao”、“-sao”、“-tao”和“-raw”书写模式

Mar*_*tin 10 burning audio-cd data-cd

wodim 中,可以选择多种不同的写入模式,例如 Disk At Once("-dao")、Session At Once("-sao")、Track At Once("-tao") 或 Raw 写入模式("-raw") . 据我了解,Track At Once 一次写入一个轨道,而在 SAO 和 DAO 模式下,激光不会在轨道之间停止。这仅在音频 CD 的情况下很重要,而在数据 CD 的情况下没有区别(例如刻录 Linux 发行版映像)吗?此外,即使在音频 CD 和 TAO 模式的情况下,wodim 如何知道一首曲目的开始或结束位置?SAO 模式允许多次写入 CD-R 媒体,我是否正确?最后但并非最不重要的一点是,在哪种情况下原始写入模式有用?

Tho*_*man 10

CD-DACD-ROMCD-RCD-RW格式中2352个字节的扇区的所有存储信息,分为98不同的24字节帧。在 CD-DA 光盘上,每个 24 字节帧包含两个 16 字节音频样本,每个立体声通道一个。CD-ROM 规范定义了两种扇区模式,模式 1 和模式 2,它们描述了两种不同的扇区布局。两种模式都为头信息保留前 16 个字节。模式 1 使用额外的 288 字节进行错误检测(32 位 CRC)和纠正(276 字节 RSPC)。

 ------------------------------------------------------------------------------------------------------------------------
| Format        |                                           2,352-byte sector                                            |
|------------------------------------------------------------------------------------------------------------------------|
| CD-DA         | 24-byte data frame (1) | 24-byte data frame (2) |            . . .           | 24-byte data frame (98) |
| -----------------------------------------------------------------------------------------------------------------------|
| CD-ROM Mode 1 | 12-byte sync pattern | 3-byte address | 2,048-byte data | 4-byte CRC | 8-byte reserved | 276-byte RSPC |
| -----------------------------------------------------------------------------------------------------------------------|
| CD-ROM Mode 2 | 12-byte sync pattern | 3-byte address |                        2,336-byte data                         |
 ------------------------------------------------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

会话

会话的概念与 CD-R 和 CD-RW 格式的规范同时添加到CD 格式规范中

每个会话包含三个模仿 CD-DA 和 CD-ROM 原始结构的区域:导入区域包含会话目录(TOC);该程序区保持在各个轨道; 在引出区标志着会话结束。尽管在编写原始 CD-DA 和 CD-ROM 规范时不存在会话的概念,但这些较旧的格式基本上由每个光盘单个会话组成。

某些光盘格式(例如 CD-R 和 CD-RW)支持每张光盘多个会话。每个会话包含一个或多个轨道。在多区段光盘中,后续区段导入区中的 TOC 包括较早区段的地址。最新区段导入区中的 TOC 用于访问光盘上的轨道。

ISO 9660光盘文件系统(CDFS)标准记录文件的索引存在于一系列的盘上卷描述符被存储在从盘的开始的固定偏移。相比之下,多会话盘在最新会话中以固定偏移量存储卷描述符。将文件添加到多会话数据光盘时,整个目录树的更新副本将作为新会话的一部分存储。可以通过从最新会话中删除对文件的引用来“删除”文件。然而,由于实际文件数据永远不会改变,“删除”的文件可以通过前一个会话的目录树访问。

写作模式

有几种记录模式,包括问题中明确提到的那些:

  • 跟踪一次

    CD 内容被细分为称为轨道的连续扇区集。在 Track-At-Once (TAO) 模式下,激光在每个轨道之间停止并重新启动。这种延迟会导致过渡区域,称为轨道之间的预间隙。这些无法避免,但支持可变间隙 Track-At-Once 的记录器可以将预间隙的大小调整为至少 2 个扇区(2/75 秒)。

    对于大多数驱动器,多会话记录需要 TAO 模式。

  • 光盘一次

    在 Disc-At-Once (DAO) 模式下,在不停止激光的情况下单次记录光盘内容。这允许将数据写入预间隙区域以完全避免它们。

  • 一次会话

    在一次会话 (SAO) 模式下,可以在一张光盘上录制和终结多个会话。生成的光盘可以由计算机驱动器读取,但 CD 音频设备通常无法读取第一个之后的会话。

    在 Wodim 中,DAO 和 SAO 模式是同义词。虽然大多数驱动器需要在 TAO 模式下创作多会话光盘,Wodim 也支持在 SAO 模式下创建多会话光盘,假设底层磁盘驱动器支持这一点。

  • 原始模式

    CD-ROM 的光盘映像可以以原始模式创建(独立于扇区模式,每个扇区提取 2,352 字节)或仅获取扇区中的实际数据(2,048/2,336/2,352/2,324 字节,取决于扇区模式) .原始模式光盘映像的文件大小始终是 2,352 字节的倍数。当此类光盘映像以原始模式写入光学介质时,已包含同步模式以及可能的错误检测和校正数据的 2,352 字节扇区将按原样写入光盘。

  • 数据包写入

    增量打包写入(IPW) 允许以类似于可写块设备的方式使用光盘,即它允许按需创建、修改或删除文件。这是通过以数据包模式在磁盘上写入一系列短 (32k-256k) 磁道来实现的。CD-R/RW 光盘可以格式化为这样的数据包,内核pktcdvd模块(数据包写入驱动程序)缓冲写入磁盘并透明地处理一次擦除和重写整个数据包。

    Wodim 具有对数据包写入的实验性支持。