DiscImageStudio: Burn images as visible patterns on CD, DVD, and BD-R
A tool for turning images into visible CD/DVD/BD-R surface patterns by generating physical-layer data rather than ordinary disc files.
GitHub JiaFeiMiao-K-Cat/DiscImageStudio Updated 2026-11-05 Branch main Stars 6.6K Forks 236
C# Python PowerShell Optical-disc surface imaging CD/DVD/BD-R WPF .NET 10 Windows/Linux/macOS

🧭 Decision Guide

Try it if you

  • You need to create surface patterns on CD, DVD, or single-layer 25 GB BD-R using Windows 10 2004 or Windows 11.
    The README sections “系统与设备要求”, “CD 支持”, “DVD 支持”, and “蓝光支持” list these systems and media.
  • You need to generate CD tracks, a DVD ISO, or a BD-R ISO from PNG, JPEG, BMP, or GIF input.
    The README’s “命令行” section states that the CLI reads PNG, JPEG, BMP, and GIF and lists cd-generate, solve, and bd-generate.
  • You need to estimate inner and outer radii and track spacing from disc photos and regenerate patterns using cubic track-spacing parameters.
    The README’s “辅助标定” section describes coarse, boundary, and fine calibration with cubic track-spacing parameters.

Skip it if you

  • You must write dual-layer BD-R because the README explicitly states that dual-layer discs are not currently supported.
    The README’s “参考标准” section says the experimental mode uses single-layer 25 GB media and currently does not support dual-layer discs.
  • You need a dependable instant-burning workflow and cannot accept media loss from interruptions or power failures.
    The README’s “刻录与介质安全须知” marks instant burning as experimental and says interruptions or power loss may waste the disc.
  • You need a graphical interface on Linux or macOS because the README describes release packages for those platforms only as experimental CLI packages.
    The README’s “快速开始” section says Linux or macOS users should download the CPU-matched experimental CLI archive.

Requirements

  • The Windows desktop version requires Windows 10 2004 (19041) or later, or Windows 11.
  • Building from source requires the .NET 10 SDK; global.json pins it to 10.0.x.
  • Instant burning requires a Windows-recognized CD/DVD/BD burner and blank media.
  • BD-R instant burning requires a single-layer blank disc supporting sequential writing.
  • For Linux CLI, choose linux-x64 or linux-arm64; for Apple Silicon Mac choose osx-arm64, and for Intel Mac choose osx-x64.

First step (verbatim from README)

./disc-image-studio cd-generate --input picture.png --output sample.wav --sectors 2

Watch out

  • Do not use non-blank media; instant burning rejects non-blank media.
    README sections “刻录” and “刻录与介质安全须知”.
  • For mixed folders, layout is fixed before burning, and source-size changes safely terminate the task.
    README section “刻录与介质安全须知”.
  • Actual results depend on the disc, burner, firmware, and writing strategy; disc presets do not replace device validation.
    README sections “刻录与介质安全须知” and “盘片预设”.

Alternatives

  • cdrecord:Use it when you already have a headered WAV and CUE and want to burn manually with a CD tool named in the README.
    README section “CD 支持”
  • ImgBurn:Use it when you want to hand WAV+CUE or ISO output from Disc Image Studio to the graphical burning software named in the README.
    README sections “CD 支持” and “镜像文件输出”

Not stated in the README

  • The README does not provide a compatibility matrix for specific CD/DVD/BD burner models and firmware.
  • The README does not specify size limits, processing time, or memory requirements for PNG, JPEG, BMP, or GIF.
  • The README does not quantify visible image-quality differences across discs, burners, and writing strategies.
  • The README does not state whether the Linux and macOS CLI covers all design features of the Windows GUI.

💡 Deep Analysis

6
No I need to repeatedly generate single-layer 25 GB BD-R experiment discs on Windows and hope to reuse the same disc after an interrupted burn. Can this project meet that requirement?
For: An optical-storage lab repeatedly producing single-layer 25 GB BD-R samples with Windows IMAPI2 streaming and concerned about interruption recovery

No, because the project supports single-layer BD-R generation and sequential writing, but it has no spare-area remapping, so an interrupted burn usually cannot resume on the same disc.

  • The “Blu-ray Support” section limits support to single-layer 25 GB BD-R and supports pure artwork and UDF 2.01 files; dual-layer 50 GB is outside the documented scope.
  • The “System and Device Requirements” section requires a Windows-recognized burner and blank single-layer BD-R media that supports sequential writing.
  • The “Burning and Media Safety” section explicitly states that BD-R sequential writing has no spare-area remapping and that the same disc usually cannot continue after interruption.
  • Project data identifies C# as the main language and v1.4.0 as the latest release, but neither changes the BD-R media limitation.

It fits experimental sample generation, not a workflow whose requirement is recovery after failed writes.

  • README “Features / Blu-ray Support”: supports single-layer 25 GB BD-R; dual-layer discs are not currently supported
  • README “System and Device Requirements”: BD-R requires blank single-layer media supporting sequential writing
  • README “Burning and Media Safety”: BD-R sequential writing has no spare-area remapping; after interruption the same disc usually cannot continue
  • Project data: main language is C#; latest release is v1.4.0
Not stated in the README:The README does not report success rates for specific BD-R brands, burner firmware, and IMAPI2 combinations;It does not say whether an external resume tool can take over an interrupted BD-R
Yes My existing workflow uses cdrecord and ImgBurn. I need to convert images into WAV+CUE or RAW CD-DA tracks and diagnose header, byte-order, and ghosting compatibility issues. Is this project suitable for integration?
For: A developer maintaining a cdrecord or ImgBurn workflow who needs compatible CD-DA tracks and must diagnose byte order and ghosting issues

Yes, but it should be treated as an audio-track generator and diagnostic component rather than a replacement for every burning tool.

  • The “CD Support” section explicitly supports headered WAV tracks with matching CUE files and names cdrecord and ImgBurn as compatible burning software; RAW tracks are also supported.
  • cd-generate creates WAV+CUE or RAW tracks when no disc files are included, and creates a CD data-disc ISO when --data-dir is specified.
  • The documentation includes “CD Audio Compatibility,” covering track format, byte order, and ghosting diagnosis. The cd-preview-track command renders an existing WAV or RAW CD-DA track using calibrated geometry for readback simulation.

This fits an existing burner-toolchain integration, but the README does not guarantee correct results for every software, drive, and CD-R combination.

  • README “Features / CD Support”: compatible with `cdrecord` and ImgBurn; supports headered WAV+CUE and RAW tracks
  • README “Command Line”: `cd-generate` creates WAV+CUE / RAW tracks or a CD data-disc ISO
  • README “Documentation”: `CD_AUDIO_COMPATIBILITY.md` covers track format, byte order, and ghosting diagnosis
  • README “Command Line”: `cd-preview-track` performs readback simulation for existing WAV or RAW CD-DA tracks
./disc-image-studio cd-generate --input picture.png --output sample.wav --sectors 2
Not stated in the README:The README does not specify minimum versions for cdrecord or ImgBurn;It does not provide a compatibility matrix for particular CD-R media, burners, and write speeds
Yes I work on Linux x64 and study the DVD ECC, EFMPlus, and NRZI pipeline. I do not need a GUI, but I need CLI ISO generation, readback simulation, and self-tests. Is this project suitable?
For: A researcher on Linux x64 studying DVD physical-layer encoding who needs scripted ISO generation and deterministic self-tests

Yes, particularly for offline generation and encoder validation; it is not a complete Linux desktop burning solution.

  • The “Command Line” section supports linux-x64 and lists solve, encode, simulate, and selftest for DVD image generation, ECC-block encoding, readback simulation, and deterministic regression checks.
  • The “Source Structure” section identifies DiscImageStudio.Cli as the Linux/macOS offline CLI entry point and keeps DvdImageSolver isolated as the DVD encoding/solving engine.
  • The README explicitly says the CLI generates images locally, while actual writing is delegated to software that supports the resulting image or audio tracks.

Thus, encoder research and scripted batch output fit well. If you need Linux-side direct burner control, the README does not document that capability.

  • README “Command Line”: Linux targets include `linux-x64`; commands include `solve`, `encode`, `simulate`, and `selftest`
  • README “Source Structure”: `src/DiscImageStudio.Cli/` is the offline CLI entry point for Linux and macOS
  • README “Command Line”: the CLI generates images locally, while writing is delegated to compatible burning software
  • README “Build Regression Checks”: `DvdImageSolver` provides `selftest`
./disc-image-studio --help
Not stated in the README:The README does not specify which third-party burning tools or command-line arguments are supported on Linux;It does not provide a complete compatibility matrix for your distribution, glibc version, and CLI package
It depends I use an Apple Silicon Mac, mainly work with PNG and JPEG inputs, and only need to generate DVD or BD-R images for another burning tool. Does the lack of a Windows GUI make this project unsuitable?
For: A digital-art project member on macOS Apple Silicon who processes PNG/JPEG images and only needs to generate images for an existing burning tool

It depends: the project can meet your image-generation needs if you accept the experimental CLI and an external burner, but it is unsuitable if you require the full desktop designer or direct burning.

  • The “Command Line” section identifies osx-arm64 for Apple Silicon Macs and says the CLI generates images locally.
  • The CLI accepts PNG, JPEG, BMP, and GIF; for animated images it uses the first frame, matching your input formats.
  • The README explicitly describes Linux and macOS support as an experimental CLI workflow and says actual writing must be handed to software that supports the generated image or audio track.
  • The WPF GUI and Windows IMAPI2 immediate-burning path belong to the desktop Windows workflow and should not be treated as macOS features.

Thus, it is viable when an external burning tool is already available, but the platform does not match a requirement for in-project layout, preview, and burning.

  • README “Command Line”: Apple Silicon Macs should use `osx-arm64`
  • README “Command Line”: the CLI reads PNG, JPEG, BMP, and GIF, using the first frame for animated images
  • README “Quick Start”: Linux and macOS use an experimental CLI; the CLI generates images locally and actual burning is delegated to other software
  • README “Source Structure”: `DiscImageStudio.App` is the WPF GUI; `DiscImageStudio.Burning` uses Windows IMAPI2
dotnet run --project src/DiscImageStudio.Cli -c Release -- --help
Not stated in the README:The README does not name specific DVD/BD-R burning applications available on macOS;It does not state whether the macOS CLI provides the same layer-layout and projection-preview capabilities as the Windows GUI
Yes I use Windows 10 2004, a standard DVD burner, and blank DVD-R media. I want to turn an image directly into visible artwork on the disc surface. Is this project suitable for my workflow?
For: A disc artist using Windows 10 2004 or later with a standard CD/DVD burner who wants to create visible artwork on recordable discs

Yes, because the Windows desktop workflow covers image design through DVD ISO generation, although direct burning is explicitly experimental.

  • The “Quick Start” section supports image import, layer layout, dithering, gamma, brightness, grayscale adjustment, preview, and export.
  • “DVD Support” states that the tool exports ISO images. The “Media Grayscale Scheme” section says DVD uses binary black-and-white values and A5 / 92 in the scrambled domain.
  • The requirements specify Windows 10 2004 or Windows 11, plus a Windows-recognized DVD burner and blank media for immediate burning.

If the artwork cannot tolerate a failed burn, immediate burning should not be treated as a production path: the README labels it experimental and requires disposable test media.

  • README “Quick Start”: import images, adjust dithering, gamma, brightness, grayscale levels, and export ISO / RAW / WAV+CUE
  • README “Features / DVD Support”: supports any DVD and exports ISO images
  • README “System and Device Requirements”: desktop edition requires Windows 10 2004 or later; immediate burning requires a Windows-recognized burner and blank media
  • README “Burning and Media Safety”: immediate burning is experimental and should use disposable test media
Not stated in the README:The README does not provide compatibility results for your exact burner, DVD-R brand, and write-speed combination;It does not guarantee identical contrast or geometric accuracy across different media batches
Yes I maintain a C#/.NET 10 codebase and want to support separate CD, DVD, and BD-R encoders while checking DVD self-tests and architecture dependencies without a third-party test framework. Is this project a useful reference base?
For: A maintainer on a C#/.NET 10 team who wants to inspect module boundaries, DVD solver regressions, and architecture dependencies across media encoders

Yes, because the project structure and validation entry points directly match your constraints, although it is a reference implementation rather than proof of coverage for every hardware combination.

  • The “Source Structure” section separates DiscImageStudio.Cd, DiscImageStudio.Dvd, and DiscImageStudio.BluRay, while also separating Core, image processing, ISO/UDF, GUI, and burning layers.
  • The build section requires the .NET 10 SDK, with global.json locking the project to 10.0.x, matching your C#/.NET 10 environment.
  • The project provides DvdImageSolver selftest and ArchitectureTests; the README states that regression checks use no third-party test framework.
  • The architecture description says the CLI, WPF GUI, burning layer, and media engines are isolated, supporting scripted generation and automated validation.

The module boundaries and regression approach are therefore useful references. Hardware-level disc coverage still needs confirmation beyond the README.

  • README “Source Structure”: CD, DVD, and BD-R are separate modules, with Core, Iso, App, and Burning layered separately
  • README “Build and Run”: requires the .NET 10 SDK; `global.json` locks 10.0.x
  • README “Build Regression Checks”: provides `DvdImageSolver selftest` and `ArchitectureTests`
  • Project insight solution_analysis.architectural_strengths: uses architecture regression checks without a third-party test framework and isolates CLI, WPF GUI, burning, and media engines
dotnet run --project tests/DiscImageStudio.ArchitectureTests --configuration Release
Not stated in the README:The README does not list every assertion or provide coverage metrics for the architecture regression checks;It does not state an API stability guarantee when extracting these modules into another C# project

✨ Highlights

  • Supports CD, DVD, and single-layer 25 GB BD-R
  • Exports ISO, RAW, or WAV+CUE tracks
  • Includes coarse, boundary, and fine calibration workflows
  • Instant burning is still an experimental feature
  • Supports Windows 10 2004, Windows 11, and CLI use

🔧 Engineering

  • Import images in the design page and adjust dithering, gamma, brightness, and gray levels in the tone module.
  • CD can generate WAV+CUE or RAW, DVD generates ISO, and BD-R generates ISO with a JSON sidecar.
  • The CLI provides commands including cd-generate, calibrate, simulate, and bd-generate.

⚠️ Risks

  • Instant burning uses Windows IMAPI2 and is explicitly marked experimental in the README.
  • Burn interruptions, power loss, or insufficient generation speed may waste a CD, DVD, or BD-R.
  • BD-R sequential writing has no spare-area remapping, and interrupted discs usually cannot resume.
  • Linux and macOS release packages provide only an experimental CLI, not the WPF GUI.

👥 For who?

  • Users who need to create disc-surface patterns with a burner on Windows 10 2004 or Windows 11.
  • Developers who need offline image generation on Linux x64, Linux arm64, osx-x64, or osx-arm64.
  • Engineers studying DVD NRZI, CD-DA, BD-R 17PP/ECC, or disc-geometry calibration.