JiaFeiMiao-K-Cat/DiscImageStudioPublic

AI summary: An open-source DiscImageStudio project written primarily in C#.

Stars
7K
+489 today
Forks
249
Watchers
16
Open issues
50
Open PRs
9
Contributors
~4
Commits
64
Branches
8
Views (30d)
2

C#GPL-3.0Created Aug 23, 2026Last push todayLatest release v1.3.6+489 stars this week+489 this month

Quick answers

What is DiscImageStudio?
An open-source DiscImageStudio project written primarily in C#.
What does DiscImageStudio do?
DiscImageStudio is an open-source utility designed for managing disc images. It allows users to handle various disc-related operations within a C# environment. The software supports creating, editing, and manipulating disc image files. It aims to provide a reliable set of tools for optical media management. This makes it suitable for developers and users needing disc image capabilities.
Who is DiscImageStudio for?
Software developers and system administrators working with disc images in .NET environments. It is ideal for users needing open-source tools for optical media management. Familiarity with C# and disc formats is recommended.
How do I get started with DiscImageStudio?
git clone https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio
How popular is DiscImageStudio on GitHub?
JiaFeiMiao-K-Cat/DiscImageStudio has 7,024 stars and 249 forks on GitHub, and gained 489 stars in the last 7 days.
What license does DiscImageStudio use?
JiaFeiMiao-K-Cat/DiscImageStudio is released under the GPL-3.0 license.

Star history

since Nov 4, 2026
02K4K6KNov 2026Nov 2026Nov 2026Nov 2026
7K stars as of Nov 5, 2026. Measured daily since Nov 4, 2026; GitHub no longer exposes earlier star timestamps.

Contribution activity

commits per day, last 52 weeks
NovDecJanFebMarAprMayJunJulAugSepOctNovMonWedFri2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 0 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits2026-08-09: 0 commits2026-08-10: 0 commits2026-08-11: 0 commits2026-08-12: 0 commits2026-08-13: 0 commits2026-08-14: 0 commits2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 0 commits2026-08-18: 0 commits2026-08-19: 0 commits2026-08-20: 0 commits2026-08-21: 0 commits2026-08-22: 0 commits2026-08-23: 1 commit2026-08-24: 0 commits2026-08-25: 4 commits2026-08-26: 0 commits2026-08-27: 0 commits2026-08-28: 0 commits2026-08-29: 0 commits2026-08-30: 0 commits2026-08-31: 0 commits2026-09-01: 0 commits2026-09-02: 2 commits2026-09-03: 4 commits2026-09-04: 0 commits2026-09-05: 0 commits2026-09-06: 0 commits2026-09-07: 1 commit2026-09-08: 0 commits2026-09-09: 0 commits2026-09-10: 1 commit2026-09-11: 0 commits2026-09-12: 3 commits2026-09-13: 1 commit2026-09-14: 3 commits2026-09-15: 1 commit2026-09-16: 0 commits2026-09-17: 0 commits2026-09-18: 0 commits2026-09-19: 0 commits2026-09-20: 0 commits2026-09-21: 0 commits2026-09-22: 0 commits2026-09-23: 0 commits2026-09-24: 0 commits2026-09-25: 0 commits2026-09-26: 0 commits2026-09-27: 0 commits2026-09-28: 0 commits2026-09-29: 0 commits2026-09-30: 0 commits2026-10-01: 0 commits2026-10-02: 0 commits2026-10-03: 0 commits2026-10-04: 1 commit2026-10-05: 0 commits2026-10-06: 0 commits2026-10-07: 0 commits2026-10-08: 0 commits2026-10-09: 0 commits2026-10-10: 0 commits2026-10-11: 0 commits2026-10-12: 0 commits2026-10-13: 0 commits2026-10-14: 0 commits2026-10-15: 0 commits2026-10-16: 0 commits2026-10-17: 0 commits2026-10-18: 0 commits2026-10-19: 0 commits2026-10-20: 0 commits2026-10-21: 0 commits2026-10-22: 0 commits2026-10-23: 0 commits2026-10-24: 0 commits2026-10-25: 11 commits2026-10-26: 3 commits2026-10-27: 2 commits2026-10-28: 1 commit2026-10-29: 0 commits2026-10-30: 0 commits2026-10-31: 1 commit2026-11-01: 1 commit2026-11-02: 6 commits2026-11-03: 4 commits2026-11-04: 1 commit2026-11-05: 0 commits2026-11-06: 0 commits2026-11-07: 0 commits
52 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Breakout launch

    7,024 stars in 74 days

  • Rising fast

    +489 stars this week

  • Actively maintained

    Pushed within 48 hours

  • Continuous integration

    Automated checks passing

What DiscImageStudio does

DiscImageStudio is an open-source utility designed for managing disc images. It allows users to handle various disc-related operations within a C# environment. The software supports creating, editing, and manipulating disc image files. It aims to provide a reliable set of tools for optical media management. This makes it suitable for developers and users needing disc image capabilities.

Software developers and system administrators working with disc images in .NET environments. It is ideal for users needing open-source tools for optical media management. Familiarity with C# and disc formats is recommended.

  • Format support: handles reading and processing various standard disc image formats.
  • Image management: provides tools to create and edit optical disc images.
  • C# integration: built primarily in C# for seamless integration in .NET environments.
  • Content manipulation: allows modifying the contents of existing disc images.
  • Open-source utility: offers a community-driven approach to disc image processing.

Where teams use it

Manage disc images

Create and edit standard optical disc images for backup and storage.

Integrate .NET workflows

Use C# libraries to incorporate disc image handling into custom applications.

Modify image contents

Edit the internal structure of disc images without needing specialized paid software.

Archive optical media

Convert physical discs into digital image formats for long-term archiving.

Getting started: git clone https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio

README

main branch

简体中文 | 繁體中文 | English | 日本語 | Türkçe | Español | Čeština

Banner

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

Disc Image Studio 是一个多平台的光盘盘面图像生成与刻录工具,帮助您使用任何刻录光驱在任何 DVD / CD / 单层蓝光 光盘上刻蚀出肉眼可见的图像。

.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.jpg P20261004-135416.jpg

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

刻录

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

系统与设备要求

  • 桌面版需要 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.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)。

刻录与介质安全须知

  • 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
View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

9 total
  1. Disc Image Studio v1.3.6v1.3.6Nov 2, 20267.4K downloads

    ### 中文 - **实验性功能:Linux 和 macOS 离线命令行版。** 可从图片生成 CD 音轨(WAV+CUE 或 RAW)、CD 数据盘、DVD 和蓝光 ISO。两个系统均提供 x64 和 ARM64 自包含下载包。解压后运行 `./disc-image-studio --help` 查看命令。 - Windows 桌面版继续使用 WIC 读图。跨平台 CLI 采用 StbImageSharp 读图和 StbImageWriteSharp 写 PNG,复用相同的盘面编码算法。 - 新增日文界面:在「设置 → 通用 → 语言」可选择「日本語」;系统语言为日文(`ja`、`ja-JP`)时跟随系统也使用日文。所有翻译资源新增 `ja` 文本,`ui-snapshot --language` 支持 `ja`。 - 新增日文 README(`README.ja.md`),所有 README 顶部的语言切换链接加入日本語。 ### English - **Experimental feature: offline CLI for Linux and macOS.** Generate CD audio tracks (WAV+CUE or RAW), CD data images, and DVD or Blu-ray ISOs from an image. Self-contained x64 and ARM64 archives are available for both systems. Extract the archive and run `./disc-image-studio --help` to list commands. - The Windows desktop app continues to decode images with WIC. The cross-platform CLI uses StbImageSharp to read images and StbImageWriteSharp to write PNGs, with the same disc encoding algorithms. - Added a Japanese interface. Choose 日本語 under Settings → General → Language; Japanese system locales (`ja`, `ja-JP`) now use Japanese when following the system. Every translation entry gains `ja` text, and `ui-snapshot --language` accepts `ja`. - Add

  2. Disc Image Studio v1.3.4v1.3.4Nov 2, 2026569 downloads

    ### 中文 - 新增简体中文、繁體中文与英文界面,在「设置 → 通用 → 语言」选择跟随系统或指定语言;保存后重启生效,取消不修改偏好。系统语言为台湾、香港、澳门或 `zh-Hant` 时使用繁体,其他中文系统使用简体,其余使用英文。导航、工作区、弹窗和应用状态提示共用嵌入式翻译资源,工程数据与数值格式保持不变;底层模块与操作系统返回的诊断信息保留原文。 - 语言与主题默认跟随系统;缺失或无效的偏好回落到跟随系统,已保存的有效选择继续保留。设置保存在 `%LOCALAPPDATA%\DiscImageStudio\settings.json`,损坏或更高版本的设置文件回落到默认值,不写入 `.discproj`。 - 标题栏右侧新增常驻「齿轮 + 设置」按钮,主页和所有工作区均可直接打开设置,并保留 Ctrl+, 快捷键。长工程名自动省略;「…」菜单提供「关于…」,移除重复的设置菜单项和原侧栏「关于」入口。 - 新增「通用」「存储」两类设置。深色、浅色与跟随系统主题保存后立即应用到所有窗口,侧边栏、分段控件、盘面画布与任务坞同步刷新。 - 新增默认工程位置与缓存位置设置,留空分别使用系统文档目录和临时目录。可查看缓存占用、清空本应用缓存或打开应用数据目录;清空操作仅删除白名单内的缓存图片与 sidecar,不影响工程和导出文件,任务运行期间禁用。 - CD、DVD 与蓝光预览的分辨率上限统一为 8192×8192,覆盖设计投影、成品读回及导出预览图;各盘型的默认预览尺寸保持不变。 - 新增完整英文与繁体中文 README,三份 README 顶部均提供语言切换链接,并补充语言配置与翻译资源维护说明。 - 开发截图命令 `ui-snapshot` 新增 `--language zh-CN|zh-TW|en|system`、`--theme dark|light|system`、`--settings-dialog` 和 `--settings-view general|storage`,可验证不同语言、主题和设置分类的布局。设置窗口截图默认 760×600,使用一次性设置文件,不修改真实配置。 ### English - Added Simplified Chinese, Traditional Chinese, and English interfaces. Choose a language or follow the system under Settings → General → Language; save and restart to apply it, or cancel to leave preferences unchanged. System locales for Taiwan, Hong Kong,

  3. Disc Image Studio v1.3.3v1.3.3Oct 28, 20261.1K downloads

    - 新增 Verbatim BD-R (64099) 内置预设,采用用户保存的实测半径、扇区数与映射极性,GUI 和命令行均可使用。 - 修复蓝光标定流式刻录的来源摘要误显示为 CD,并按标定记录显示蓝光位长、3T/6T 极性和绘图范围。 - 流式刻录底部固定显示设备已写入量/总量、实时速率和对应倍速;准备、传输、封盘及诊断信息记录到日志。传输量不再覆盖实际写入进度,封盘或长时间没有新写入数据时清除旧速率。 - BD 标定范围映射接入普通图片生成器的有界并行批处理,并复用四点几何采样;保留原始标定回调、绘图范围、极性和顺序输出。自定义映射仍须明确允许并行。 - CD 标定复用图片生成的四点几何采样,DVD 标定与码字回调复用已有变轨距 SIMD 路径;保留逐点标量三角函数、回调顺序及音轨交织,DVD 恒定轨距仍使用既有标量回退。 - CD 文件模式补齐四点采样,按各字节经过交换与 CIRC 映射后的独立物理位置计算,保留文件区、调色索引、扰码及盘尾边界处理。 ### 下载与运行 下载下方 win-x64.exe 后直接运行,支持 Windows 10 2004+ / Windows 11 x64,已内置 .NET 运行时。 此便携 EXE 未进行代码签名。即时流式刻录仍为实验性功能;硬件实测范围以仓库验证记录为准。 ### SHA-256 ```text c2505dba0c81236fc6f8067928e551f993590f15c4dbd22b5e3d9a7f084f3725 DiscImageStudio-v1.3.3-win-x64.exe ``` Source commit: db07b377adf602d446b21eff692ad571ba66ff21 ### 对应源码与构建 - [v1.3.3 完整源码 ZIP](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/archive/refs/tags/v1.3.3.zip) - [构建与运行说明](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.3/README.md#构建与运行) · [单文件打包说明](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.3/docs/RELEASING.md#本地-exe-演练) - [项目许可证](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.3/LICENSE) · [第三方声明](https://github.com/JiaFeiMiao-K-Cat

  4. Disc Image Studio v1.3.2v1.3.2Oct 27, 202613 downloads

    - 工程设置对话框可直接换用当前盘型的其他预设;切换前先确认覆盖,取消后保留原有参数且不改变选中项。 - 主题蓝统一为深色 `#3385FF`、浅色强调 `#74C0FF`;滑钮选择器的选中项改用主题色填充,高度与输入框对齐,选择框右侧的展开箭头缩为紧凑尺寸。 - 新建工程和工程设置中可右键“自定”预设删除,删除会同步清理最近模板记录。 - 设计页画布缩放栏常驻右下角,新增“−”“+”按钮并把可缩放范围扩到 25%–1200%(此前只能放大);“适应窗口”改用刷新图标。缩放仍可用 Ctrl/Alt+滚轮,中键拖动平移。 - 主页模板卡片的灰色说明显示盘型(“CD”“DVD”“蓝光”)。 - 修复预设切换确认框误响应普通按键、蓝光切换后另存预设沿用旧极性,以及删除最近预设后盘型与下一选中项不一致的问题。 ### 下载与运行 下载下方 win-x64.exe 后直接运行,支持 Windows 10 2004+ / Windows 11 x64,已内置 .NET 运行时。 此便携 EXE 未进行代码签名。即时流式刻录仍为实验性功能;硬件实测范围以仓库验证记录为准。 ### SHA-256 ```text 54c318df635a66b7638b51e67d55392d8552e3fafccd65e6c41d798136352e44 DiscImageStudio-v1.3.2-win-x64.exe ``` Source commit: e55553dc9385317e81224a08b3a7c37a29273d59 ### 对应源码与构建 - [v1.3.2 完整源码 ZIP](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/archive/refs/tags/v1.3.2.zip) - [构建与运行说明](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.2/README.md#构建与运行) · [单文件打包说明](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.2/docs/RELEASING.md#本地-exe-演练) - [项目许可证](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.2/LICENSE) · [第三方声明](https://github.com/JiaFeiMiao-K-Cat/DiscImageStudio/blob/v1.3.2/THIRD-PARTY-NOTICES.txt)

  5. Disc Image Studio v1.3.1v1.3.1Oct 26, 20268 downloads

    - CD 新增随盘文件模式:未选择文件夹时保留 WAV 音轨,选择文件夹后生成 ISO9660/Joliet Mode 1 数据盘;文件支持内圈或外圈放置,工程保存、ISO 导出与流式刻录共用布局。 - CD 设计投影和带布局信息的成品读回以黄色显示文件区,保留完整盘面坐标;支持中文目录与文件,随盘内容保持原始字节。 - CD 数据盘流式刻录改为与音轨共用 DAO 会话和容量边界处理,修复铼德医疗水蓝盘预设误报“剩余容量不足”的问题;保留 ATIP 标定的 359,845 扇区及既有末端限制。 - 新增 Mode 1 校验码、DAO 数据轨标识、前向流和内外圈 ISO 完整还原回归。CD 数据盘 DAO 已通过软件及原生内存镜像验证,尚未完成实盘刻录验证;即时刻录仍为实验性功能。 ### 下载与运行 下载下方 win-x64.exe 后直接运行,支持 Windows 10 2004+ / Windows 11 x64,已内置 .NET 运行时。 此便携 EXE 未进行代码签名。即时流式刻录仍为实验性功能;硬件实测范围以仓库验证记录为准。 ### SHA-256 ```text de7f4a35c75e162d081286be76757d79d05973c7f8dd6f9cf1d2cbcf89434b00 DiscImageStudio-v1.3.1-win-x64.exe ``` Source commit: 4b7c8efe986a714afe47bbfc9e9701c5f07b0712

Code frequency

additions and deletions
+53.9K-53.9KWeek of 2026-08-23: +16,466 linesWeek of 2026-08-23: -93 linesWeek of 2026-08-30: +2,464 linesWeek of 2026-08-30: -374 linesWeek of 2026-09-06: +8,520 linesWeek of 2026-09-06: -2,928 linesWeek of 2026-09-13: +2,916 linesWeek of 2026-09-13: -1,145 linesWeek of 2026-09-20: +0 linesWeek of 2026-09-20: -0 linesWeek of 2026-09-27: +0 linesWeek of 2026-09-27: -0 linesWeek of 2026-10-04: +8,492 linesWeek of 2026-10-04: -231 linesWeek of 2026-10-11: +0 linesWeek of 2026-10-11: -0 linesWeek of 2026-10-18: +0 linesWeek of 2026-10-18: -0 linesWeek of 2026-10-25: +53,874 linesWeek of 2026-10-25: -7,532 linesWeek of 2026-11-01: +15,147 linesWeek of 2026-11-01: -4,230 linesAug 23, 2026Nov 1, 2026
+107.9K lines added, -16.5K removed over the last year.

Commits per week

last 52 weeks
180Week of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 0 commitsWeek of 2026-04-26: 0 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 0 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 0 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 0 commitsWeek of 2026-07-12: 0 commitsWeek of 2026-07-19: 0 commitsWeek of 2026-07-26: 0 commitsWeek of 2026-08-02: 0 commitsWeek of 2026-08-09: 0 commitsWeek of 2026-08-16: 0 commitsWeek of 2026-08-23: 5 commitsWeek of 2026-08-30: 6 commitsWeek of 2026-09-06: 5 commitsWeek of 2026-09-13: 5 commitsWeek of 2026-09-20: 0 commitsWeek of 2026-09-27: 0 commitsWeek of 2026-10-04: 1 commitsWeek of 2026-10-11: 0 commitsWeek of 2026-10-18: 0 commitsWeek of 2026-10-25: 18 commitsWeek of 2026-11-01: 12 commitsNov 9, 2025Nov 1, 2026
52 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 0 commitsSun 1:00 — 0 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 1 commitsSun 10:00 — 0 commitsSun 11:00 — 1 commitsSun 12:00 — 0 commitsSun 13:00 — 0 commitsSun 14:00 — 1 commitsSun 15:00 — 2 commitsSun 16:00 — 0 commitsSun 17:00 — 0 commitsSun 18:00 — 4 commitsSun 19:00 — 5 commitsSun 20:00 — 0 commitsSun 21:00 — 1 commitsSun 22:00 — 0 commitsSun 23:00 — 0 commitsMon 0:00 — 0 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 1 commitsMon 11:00 — 0 commitsMon 12:00 — 1 commitsMon 13:00 — 0 commitsMon 14:00 — 0 commitsMon 15:00 — 2 commitsMon 16:00 — 2 commitsMon 17:00 — 1 commitsMon 18:00 — 0 commitsMon 19:00 — 1 commitsMon 20:00 — 0 commitsMon 21:00 — 3 commitsMon 22:00 — 1 commitsMon 23:00 — 1 commitsTue 0:00 — 1 commitsTue 1:00 — 2 commitsTue 2:00 — 1 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 0 commitsTue 6:00 — 0 commitsTue 7:00 — 1 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 0 commitsTue 11:00 — 0 commitsTue 12:00 — 1 commitsTue 13:00 — 1 commitsTue 14:00 — 0 commitsTue 15:00 — 1 commitsTue 16:00 — 0 commitsTue 17:00 — 1 commitsTue 18:00 — 0 commitsTue 19:00 — 0 commitsTue 20:00 — 1 commitsTue 21:00 — 0 commitsTue 22:00 — 1 commitsTue 23:00 — 0 commitsWed 0:00 — 0 commitsWed 1:00 — 0 commitsWed 2:00 — 0 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 1 commitsWed 11:00 — 1 commitsWed 12:00 — 0 commitsWed 13:00 — 1 commitsWed 14:00 — 0 commitsWed 15:00 — 1 commitsWed 16:00 — 0 commitsWed 17:00 — 0 commitsWed 18:00 — 0 commitsWed 19:00 — 0 commitsWed 20:00 — 0 commitsWed 21:00 — 0 commitsWed 22:00 — 0 commitsWed 23:00 — 0 commitsThu 0:00 — 0 commitsThu 1:00 — 4 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 0 commitsThu 10:00 — 0 commitsThu 11:00 — 0 commitsThu 12:00 — 0 commitsThu 13:00 — 0 commitsThu 14:00 — 1 commitsThu 15:00 — 0 commitsThu 16:00 — 0 commitsThu 17:00 — 0 commitsThu 18:00 — 0 commitsThu 19:00 — 0 commitsThu 20:00 — 0 commitsThu 21:00 — 0 commitsThu 22:00 — 0 commitsThu 23:00 — 0 commitsFri 0:00 — 0 commitsFri 1:00 — 0 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 0 commitsFri 10:00 — 0 commitsFri 11:00 — 0 commitsFri 12:00 — 0 commitsFri 13:00 — 0 commitsFri 14:00 — 0 commitsFri 15:00 — 0 commitsFri 16:00 — 0 commitsFri 17:00 — 0 commitsFri 18:00 — 0 commitsFri 19:00 — 0 commitsFri 20:00 — 0 commitsFri 21:00 — 0 commitsFri 22:00 — 0 commitsFri 23:00 — 0 commitsSat 0:00 — 0 commitsSat 1:00 — 0 commitsSat 2:00 — 0 commitsSat 3:00 — 0 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 0 commitsSat 11:00 — 0 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 0 commitsSat 15:00 — 0 commitsSat 16:00 — 0 commitsSat 17:00 — 1 commitsSat 18:00 — 0 commitsSat 19:00 — 0 commitsSat 20:00 — 2 commitsSat 21:00 — 1 commitsSat 22:00 — 0 commitsSat 23:00 — 0 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits32 (51%)
Community commits31 (49%)

63 commits in total over the last year.

DateListRankStars gained
Nov 5, 2026daily#12+977
Nov 4, 2026daily#8+1,792
  • dotnet/aspnetcore

    ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.

    38.5K stars · C#

  • k1tbyte/Wand-Enhancer

    Advanced UX and interoperability extension for Wand (WeMod) app

    33.2K stars · C#

  • iOfficeAI/OfficeCLI

    OfficeCLI is the first and best Office suite purpose-built for AI agents to read, edit, and automate Word, Excel, and PowerPoint files. Free, open-source, single binary, no Office installation required.

    33K stars · C#

  • Sonarr/Sonarr

    Smart PVR for newsgroup and bittorrent users.

    17.5K stars · C#

  • MiniMax-AI/skills

    13.8K stars · C#

  • sharpemu/sharpemu

    An experimental PlayStation 5 emulator for Windows and Linux

    6.5K stars · C#