DiscImageStudio: burn visible artwork onto CDs, DVDs and Blu-ray discs

Hacker News Top 工具

摘要

DiscImageStudio 是一款开源工具,可将图片转换为符合 CD、DVD 与蓝光物理层约束的数据,刻录后使光盘盘面呈现肉眼可见的图案,支持 Windows GUI 与 Linux/macOS 实验性 CLI。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/11/03 03:39

JiaFeiMiao-K-Cat/DiscImageStudio

Source: https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio

简体中文 | 繁體中文 | 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,或使用即时刻录功能直接写入空白盘片。

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

功能

光盘数据生成

  • CD 支持:支持任何 CD 。您可导出带格式头的 WAV 音轨及配套 CUE,兼容 cdrecord, ImgBurn等刻录软件;也允许导出 RAW 音轨。详见 CD 刻录兼容说明。
  • DVD 支持:支持任何 DVD。您可导出 ISO 镜像。
  • 蓝光支持:支持任何单层 BD-R 25 GB,支持纯绘图与 UDF 2.01 文件。详见 ADDING_BLURAY.md。
  • 随盘文件:CD/DVD/蓝光可在设计页直接选择要保存的文件夹及内圈/外圈位置,也可在导出页调整;设置随工程保存。
  • 文件区域预览:混合盘的设计投影和成品读回用黄色标出文件区(含文件系统)。
  • 介质灰度方案:CD 与 DVD 均使用黑白二阶,CD 使用 0D / AA,DVD 扰码域使用 A5 / 92。详见 PHYSICAL_MODEL_AUDIT.md。
  • 灰度抖动工具:独立程序也可将原图处理为 0/255 黑白二阶 PNG;支持打开或拖入原图、并排预览及无损 PNG 导出。详见使用与构建说明。
  • 盘片预设:内置数个品牌的光盘参数,覆盖 CD/DVD/BD。您也可将自己标定好的数据贡献给我们,详见预设维护说明。

辅助标定

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

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

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

刻录

  • 镜像文件输出:您可以导出完整 ISO / RAW 文件并使用合适的刻录软件手动刻录。
  • 即时流式刻录(实验性):CD、DVD 与 BD-R 边生成边刻录,不保存完整镜像;BD-R 走 MMC 顺序写入。
  • 不要使用非空白介质!

应用形态

  • 多语言界面:点击右上角「设置」按钮,在「通用 → 语言」选择简体中文、繁體中文、English、日本語或跟随系统,保存并重启应用后生效。语言和主题默认均跟随系统,已保存的明确选择继续保留;跟随系统时区分简体和繁体中文,日文系统使用日文,其他系统语言使用英文。
  • 双入口:不带参数将打开 GUI;带参数则进入统一命令行。
  • 模块化:CD、DVD 与蓝光通过 IOpticalDiscModule 接入,统一命令目录与任务契约,详见架构说明。

系统与设备要求

  • 桌面版需要 Windows 10 2004(2004/20H1,19041)及以上,或 Windows 11。
  • 构建:.NET 10 SDK(global.json 锁定 10.0.x);自行构建的非自包含 GUI 需要 .NET 10 Windows 桌面运行时。Release EXE 已包含运行时,无需另行安装 .NET。
  • “即时刻录”功能需要一台 Windows 可识别的 CD / DVD / BD 刻录机与空白盘片;BD-R 需要支持顺序写入的单层空白盘。

构建与运行

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.mdDVD NRZI 图像约束求解器的约定、编码链与自检覆盖
CD_AUDIO_COMPATIBILITY.mdCD 音轨格式、字节序与重影排查
ADDING_BLURAY.md蓝光模块的物理模型、生成/刻录链路与扩展点
DISC_PRESETS.md可编辑盘片预设的分层 JSON 格式与合并规则
CALIBRATION.md照片矫正(框选盘片实体最外缘与中心孔边缘)、曲线标定与 DVD 三次轨距拟合
PHYSICAL_MODEL_AUDIT.mdCD / DVD 生成物理模型复核
VALIDATION.md各轮构建、回归与实盘测试的本地验证记录
RELEASING.mdGitHub Release、MSIX 打包、签名测试与商店提交流程
CHANGELOG.md版本变更记录

参考标准

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

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

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

刻录与介质安全须知

  • Disc Image Studio 不安装驱动或服务;“即时刻录”功能使用了 Windows 自带的 IMAPI2,拒绝非空白介质。
  • “即时刻录”功能已有部分实盘反馈,对不同设备、介质与刻录入口的验证覆盖仍有限,属于实验性功能,请只使用可报废的测试介质。刻录中断、断电或生成速度不足仍可能使盘片报废!
  • 实际可见效果取决于盘片、刻录机、固件与写入策略。
  • 混合文件夹会在开始刻录前扫描目录并固定布局;期间源文件大小改变会安全终止任务,已开始写入的盘片仍可能报废。
  • BD-R 顺序写入不提供备用区重映射;中断后同一盘片通常不能继续写入。

隐私与安全

  • Disc Image Studio 不联网、不上传文件、不收集遥测,详见隐私政策。
  • 发现安全问题请不要在公开 Issue 中披露,按安全政策使用 GitHub 私密报告。

贡献

欢迎报告问题与提交代码。开发环境搭建、模块边界规则、测试要求与 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

相似文章

UseIt Studio

Product Hunt

UseIt Studio 是一款 AI 设计工作室,能通过一句话描述生成真实可编辑的设计文件(含尺寸、出血和刀线),支持制作徽章、贴纸、礼盒、弹出卡片等实体项目,可在浏览器或 Windows 桌面端使用。

@maqibin: AI生成的图文终于能改了 之前用 AI 生成图片,最大的问题就是:好看是好看,但文字和排版很难继续修改。 所以我做了一个小工具「纸笺工坊」,输入一段内容,就可以生成一套小红书图文、朋友圈长图、文档简历等卡片,而且文字、图片、贴纸、纸张质感…

X AI KOLs Timeline

这篇文章介绍了「纸笺工坊」,一个可以编辑AI生成的图文的小工具,适合制作小红书图文、知识卡片等,通过视频演示了完整流程。

Diagramly

Product Hunt

Diagramly是一款免费、无需注册的在线工具,可通过输入文本或AI描述快速生成手绘风格的系统图表和速查表,支持六种视觉风格以及幻灯片演示、嵌入文档和PNG/SVG/PDF导出。

@I_am_oil_oil: 我开发的 GitHub Readme 美化 Skill 上了新功能,现在不仅能基于 SVG 代码去生成卡片,还可以通过 AI 生图的方式生成更炫酷的配图,Skill 里面搭配的抠图的脚本,再结合原本 SVG 的方案,可以做出更加顶级的仓库…

X AI KOLs Timeline

开发者 @I_am_oil_oil 为其 GitHub Readme 美化工具增加了新功能,现在支持基于 SVG 代码生成卡片以及通过 AI 生图制作更炫酷的配图,结合抠图脚本可打造顶级仓库介绍页。