Open Burning Suite β€” Project Status

Updated: Jun 2026 Active branch: main

βœ… Completed

🎨 UX β€” Emoji to PNG Icons (100%)

  • Branch: feat/emoji-to-icon-replacement
  • 76 icons in Assets/Icons/16/ and Assets/Icons/50/ (icons8 + fluentui)
  • 16 views with emoji replaced by <Image> (~315 occurrences):
View Emoji Status
MainWindow 31 βœ…
AdvancedView 9 βœ…
DiscInfoView 8 βœ…
BlankWizardView 2 βœ…
CopyWizardView 4 βœ…
DiscoverView 6 βœ…
VerifyView 7 βœ…
ReadView 7 βœ…
BuildView 10 βœ…
WriteView 14 βœ…
AudioWizardView 27 βœ…
VideoWizardView 80 βœ…
DataWizardView 28 βœ…
GameWizardView 19 βœ…
SettingsView 28 βœ…
HelpView 52 βœ…
  • Infrastructure: IconHelper.cs, IconSourceExtension, IconTextBlock, IconButton, IconConverter, .csproj with AvaloniaResource
  • Logger: Logger.cs + try-catch in Program.cs/App.axaml.cs β†’ logs at bin/Debug/net8.0/logs/obs_*.log
  • Build: 0 errors, 0 warnings

πŸ”¬ Media Info β€” Disc Info Panel (100%)

  • Branch: feat/disc-info-panel (merged via PR #1)
  • Populate TxtMediaId with real disc data
  • MID, manufacturer, layers, write speeds

πŸ”§ CHD β€” Bug routing (B1 fixed)

  • BurnService.cs:59 β€” .CHD added to routing check

πŸ”„ In Progress

(none at the moment)

πŸ“‹ Pending

πŸ”₯ CHD β€” Complete support

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 1 | ConvertChdToBinCueAsync β€” add IProgress<int> | medium | | 2 | CHD as output format (chdman createcd) | low | | 3 | CHD in VerifyService | low | | 4 | CHD DVD/HD/Blu-ray support (extracthd/extractld) | low | | 5 | Display CHD metadata (chdman info) | low | | 6 | Validate extracted BIN/CUE | low |

πŸ”¬ Media Info β€” Expansion

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 8 | Add MID, Manufacturer, Write Speeds to panel | low | | 9 | Real speeds per media type | low | | 10 | Drive buffer, firmware, serial | low |

πŸ›‘οΈ Protection Profiles (CloneCD-style)

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 13-16 | SafeDisc, SecuROM, StarForce etc. | low |

πŸ“ Inline ISO Editor

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 17-19 | IsoEditorService, TreeView, drag & drop | low |

πŸ“¦ Burn Queue

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 20-22 | BurnQueueService, UI, multi-drive | low |

πŸ’Ύ Save/Load Project (.obsproject)

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 23-24 | Serialize/restore config | low |

πŸš€ Bootable USB

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 25-27 | Detect USB, raw write, wizard | low |

πŸ“‹ Quality of Life

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | 28 | Recent files list | low | | 29 | Drag & drop .iso/.chd onto MainWindow | low | | 30 | Graphical layer break picker (dual-layer DVD) | low | | 31 | Split FormatHelper.GetImageType() | low |

πŸ”’ Security / Admin

| # | Task | Priority | |β€”|β€”β€”|β€”β€”β€”-| | R1-R3 | Alternatives to requireAdministrator | low |

Note: icon isolation by context

Currently, different buttons/sessions using the same icon stem (e.g. sidebar β€œAdvanced” and expander β€œAdvanced Options” both use icons8-settings-2d) share the same PNG. To isolate: create new stem, copy PNG, update AXAML reference. Decision postponed to validation phase.

πŸ› Known Bugs

  • B1: βœ… fixed (CHD routing)

Architecture

  • .NET 8 + Avalonia UI 11.3.12
  • BIN/CUE universal intermediate format
  • Static format parsers
  • External tools: ffmpeg, chdman

ReferΓͺncias