DiscImageStudio README

The project's README from github.com/JiaFeiMiao-K-Cat/DiscImageStudio. As one markdown file: README.md.

简体中文 | 繁體中文 | English | 日本語

Banner

全能的光盘盘面可见图像生成与刻录工具

Windows 桌面版支持设计与刻录,Linux 和 macOS 的实验性命令行版可离线生成 CD、DVD 和蓝光镜像。

.NET 版本 运行平台 开发语言 GitHub Repo size 贡献欢迎 许可证:GPL-3.0-or-later


效果预览


概述

Disc Image Studio 可将一张图片转换成符合 CD、DVD 与单层 BD-R 光盘物理层约束的数据,刻录后将使光盘盘面呈现肉眼可见的图案。

界面预览

主页:模板与最近工程

设计页:图层画布与影调

导出页:浅色主题与输出镜像


快速开始

Windows 下载 win-x64.exe 后可直接运行。Linux 或 macOS 请下载与 CPU 匹配的实验性 CLI 压缩包,解压后运行 ./disc-image-studio --help。这些发布包均自带 .NET 运行时。 GitHub Releases

1. 新建工程

在主页选择 CD、DVD 或蓝光,指定输出位置后创建工程。

2. 设计盘面

在设计页导入图片,用图层完成排版,并在右栏「影调」模块调整抖动、伽马、亮度与灰阶档位。

3. 预览与导出

在预览页核对盘面投影,在导出页生成 ISO / RAW / WAV+CUE,或使用即时刻录功能直接写入空白盘片。

即时刻录为实验性功能,请只使用可报废的测试介质。

功能

光盘数据生成

辅助标定

Disc Image Studio 提供了一套智能且精准的辅助标定流程,相较人工肉眼识别标定,辅助标定算法将可确定的盘面物理数据精确度从 10-6 提升到了 10-14。校准前采用恒定轨距,十字线的径向线条出现明显弯曲;使用辅助标定得到的三次轨距参数重新生成并刻录后,线条更接近径向直线。

校准前 · 恒定轨距 校准后 · 三次轨距
校准前的 DVD 实拍:径向十字线明显弯曲 校准后的 DVD 实拍:径向十字线更接近直线
P20261004-133519.jpg P20261004-135416.jpg

流程与参数说明见辅助标定说明。

刻录

应用形态

系统与设备要求

构建与运行

dotnet build DiscImageStudio.slnx --configuration Release
dotnet run --project src/DiscImageStudio.App --configuration Release

构建回归检查:

dotnet run --project src/DvdImageSolver --configuration Release -- selftest
dotnet run --project tests/DiscImageStudio.ArchitectureTests --configuration Release

版本规则、CI 生成 EXE、Release 草稿检查、MSIX 打包与签名流程见发布指南。

命令行

Linux(glibc)可选 linux-x64 或 linux-arm64。Apple Silicon Mac 选 osx-arm64,Intel Mac 选 osx-x64。CLI 在本地生成镜像,实际写盘可交给支持相应镜像或音轨的刻录软件。

使用 .NET 10 SDK 从源码运行 CLI

dotnet run --project src/DiscImageStudio.Cli -c Release -- --help

CLI 可读取 PNG、JPEG、BMP 和 GIF,使用动画图片的第一帧。下面的例子用两扇区音轨验证安装,同时生成配套 CUE。

./disc-image-studio cd-generate --input picture.png --output sample.wav --sectors 2
命令 说明
solve 使用固定快速纹理映射(CW 方向)生成 DVD 镜像,黑白纹理可选抖动混合
encode 将单个 DVD ECC 块编码为 NRZI 通道电平
calibrate 标定投影:按生成几何从 DVD 源图片取样,按实测几何投到盘面
simulate 按实测半径对生成的 DVD ISO 做读回模拟
selftest 运行 DVD 引擎的确定性回归自检
cd-generate 无随盘文件时生成 WAV + CUE / RAW 音轨;指定 --data-dir 时生成 CD 数据盘 ISO
cd-preview-warp 标定投影:按实测几何投影 CD 源图片
cd-preview-track 按标定几何渲染已有的 WAV 或 RAW CD-DA 音轨(读回模拟)
bd-generate 生成完整 BD-R ISO,并写出 <iso>.json sidecar
bd-info / bd-probe / bd-encode 导出 BD 参数、原始负载探针或单个 ECC 簇诊断

各命令的完整参数见对应文档。

源码结构

src/DiscImageStudio.Cli/     Linux 和 macOS 离线命令行入口
src/DiscImageStudio.ImageIO/ WIC 和跨平台图像编解码
src/DiscImageStudio.Core/    介质无关的模块契约、工程/预设模型、任务与命令目录
src/DiscImageStudio.Imaging/ CD/DVD/BD 共用的图片预处理与抖动辅助
src/DiscImageStudio.Burning/ Windows IMAPI2 设备枚举、流缓冲与安全刻录层
src/DiscImageStudio.Cd/      CD-DA 生成核心与 CD 模块
src/DiscImageStudio.Dvd/     DVD 引擎适配模块
src/DiscImageStudio.BluRay/  BD-R 几何、17PP/ECC、3T/6T 映射、流式生成与 ISO
src/DiscImageStudio.Iso/     UDF 2.01 / ISO9660 写入器
src/DiscImageStudio.App/     WPF GUI、统一命令行与商店资源
src/DvdImageSolver/          保持隔离的 DVD 编码/求解引擎
tests/                       无第三方测试框架的架构回归测试
packaging/                   MSIX 清单与打包脚本
tools/                       独立辅助工具与资产生成脚本
docs/                        架构、引擎、预设、发布等文档

文档

文档 内容
ARCHITECTURE.md 模块抽象、层间边界与扩展规则
LOCALIZATION.md 界面语言配置、系统语言回退与翻译资源维护
DVD_ENGINE.md DVD NRZI 图像约束求解器的约定、编码链与自检覆盖
CD_AUDIO_COMPATIBILITY.md CD 音轨格式、字节序与重影排查
ADDING_BLURAY.md 蓝光模块的物理模型、生成/刻录链路与扩展点
DISC_PRESETS.md 可编辑盘片预设的分层 JSON 格式与合并规则
CALIBRATION.md 照片矫正(框选盘片实体最外缘与中心孔边缘)、曲线标定与 DVD 三次轨距拟合
PHYSICAL_MODEL_AUDIT.md CD / DVD 生成物理模型复核
VALIDATION.md 各轮构建、回归与实盘测试的本地验证记录
RELEASING.md GitHub Release、MSIX 打包、签名测试与商店提交流程
CHANGELOG.md 版本变更记录

参考标准

Disc Image Studio 的实现与物理模型主要参考以下规范:

介质 标准与版本 本项目采用的范围
CD-R ECMA-394,第 1 版,2010 年 12 月 — Recordable Compact Disc Systems CD-R Multi-Speed(官方 PDF) CD-R 介质、多速录制及 CD-DA 兼容关系;本项目生成 CD-DA 音轨。
DVD 公共格式 / DVD-ROM ECMA-267,第 3 版,2001 年 4 月 — 120 mm DVD – Read-only disk(官方 PDF) DVD 数据帧、ECC、EFMPlus 编码及附录 G 转换表;可记录盘的介质规则另参考 ECMA-359。
DVD-R ECMA-359,第 1 版,2004 年 12 月 — 80 mm (1,46 Gbytes per side) and 120 mm (4,70 Gbytes per side) DVD Recordable Disk (DVD-R)(官方 PDF) 单层 DVD-R 的几何、扇区、纠错和编码;标准包含单面及双面介质,双面不等于双层。
BD-R ISO/IEC 30190:2021,第 3 版,2021 年 1 月 — 120 mm 单层(25.0 GB)及双层(50.0 GB)可记录 BD 的信息交换与存储规范 实验模式采用单层 25 GB 的轨道、扇区布局、纠错和编码;目前不支持双层盘。

CD 公共编码部分还参考了 ECMA-130,第 2 版(CD-ROM,1996)。

刻录与介质安全须知

隐私与安全

贡献

欢迎报告问题与提交代码。开发环境搭建、模块边界规则、测试要求与 Pull Request 流程见贡献指南。

许可证

项目采用 GNU GPL v3.0 or later(GPL-3.0-or-later)。CD 交织实现包含从 CDImage 移植并修改的代码,整体分发沿用兼容的 GPL 授权;分发二进制或修改版时须遵守对应源代码等要求。第三方字体与组件遵循各自许可证,详见 授权说明 和 第三方声明;应用"关于"页也可离线查看完整文本。

致谢

感谢 arduinocelentano 的 CDImage 项目,它展示了通过生成 CD 音轨在盘面形成可见图像的方法。本项目的 CD 交织实现由其相关代码移植并继续修改,CD 盘面绘图思路也受其启发。CDImage 原作者及贡献者的工作为本项目提供了重要基础。


Star History

Star History Chart

DiscImageStudio (JiaFeiMiao-K-Cat/DiscImageStudio)

Searching Database…

What is this?Disc Image Studio generates a picture-bearing data layout for CD, DVD and single-layer BD-R discs, so after burning, the visible disc surface shows the image. It ships as a Windows desktop app plus an experimental command-line build for Linux and macOS.
Is it a desktop app or a command-line tool?Both. On Windows it is a full GUI for design, preview and burning. Running the program with no arguments opens the GUI, and passing arguments runs the command-line interface.
How do I make my first disc image?Choose CD, DVD or Blu-ray on the home page and set an output folder. Then import an image on the design page, arrange it with layers and adjust tone in the right panel. Check the result on the preview page and export ISO, RAW or WAV+CUE from the export page.
What do I need on my machine?For the desktop app, Windows 10 2004 (build 19041) or newer, or Windows 11. The release EXE bundles the .NET runtime. Instant burning needs a burner that Windows recognizes and blank media, and building from source requires the .NET 10 SDK.
Will the picture always show up clearly on the disc?Not guaranteed. The visible result depends on the disc, the burner, its firmware and its write strategy, so results can vary between hardware.
Does the Linux or macOS build do everything the Windows one does?No. Linux and macOS only get an experimental CLI that generates images locally, and the actual writing is done with separate burning software. Apple Silicon Macs use the osx-arm64 build and Intel Macs use osx-x64.
What makes this different from ordinary disc burning tools?It maps your image onto the disc's spiral track layout using CD, DVD or BD physical constraints, so the picture appears on the surface itself. Optional dithering reduces the image to black and white first.
Which image formats can the CLI read?The CLI reads PNG, JPEG, BMP and GIF files. For animated GIFs it uses only the first frame.
Can I put files on the same disc as the picture?Yes. CD, DVD and Blu-ray discs can carry a folder of files placed in the inner or outer ring, and the preview marks the file-system area in yellow.
Size
28.8 MB
Stars
3.1K
Age
2mo
Commits · 90 Days