release_3.4.0
Fixed: "couldn't find bin file []" — UTF-8 BOM cues now convert
Many cue sheets floating around the web were saved with a UTF-8 BOM (three invisible bytes at the start of the file). chdman's cue parser does not skip the BOM, so it never recognizes the first FILE directive and reports:
ERROR: couldn't find bin file []
…even though every .bin file is sitting right next to the cue. This was the most common conversion failure reported for v3.3.0.
Now: the app detects the BOM, strips it, and hands chdman a clean canonical cue — the conversion succeeds. When the bin files are on the same drive, they are referenced in place via relative paths (no multi-hundred-MB copies to temp). On other drives, the existing safe copy-based path is used.
MP3 audio tracks — cue/bin/mp3 and cue/iso/mp3 sets
chdman cannot read MP3 tracks ("Unhandled track type MP3"), so MP3 audio tracks are now automatically decoded to WAV before conversion:
cue/bin/mp3andcue/iso/mp3sets (common in Neo Geo CD and older PS1 rips) just work — point the app at the cue file.- Decoded WAVs are normalized to
chdman's exact requirements: 44.1 kHz, stereo, 16-bit PCM. Mono or 22.05 kHz MP3 rips (speech-heavy games) are resampled and upmixed automatically — previously those produced WAVschdmanrejects. - Fallback decoder: if Windows Media Foundation is unavailable (e.g. Windows N / Server Core editions), decoding falls back to the built-in ACM MP3 decoder.
- If an MP3 track is corrupt and cannot be decoded, you get a clear, actionable message instead of a confusing
chdmanerror.
Technical note:
chdman's WAVE track support is strict — exactly 44100 Hz, stereo, 16-bit. Any other format is rejected ("unsupported samplerate / only stereo / only 16"). The app guarantees this format for every decoded track.
Smarter archive handling
Cues, GDI and TOC files extracted from .zip/.7z/.rar archives are now validated before conversion. If the referenced data files are missing from the archive (incomplete download, separate bin archive, CRC-skipped entries), the entry is skipped with a clear warning — instead of failing deep inside chdman with a cryptic "couldn't find bin file [path]" error.
Better PBP handling
PBP files that are PSP applications (homebrew EBOOT.PBPs like OpenLara or Newton Voyage — no PlayStation disc image inside) are now detected and skipped with an informative message, instead of a generic "Failed to extract PBP file" error.
🛠️ Also in this release
- 557 automated tests, including end-to-end conversions through the real
chdmanbinary for BOM cues andcue/bin/mp3/cue/iso/mp3sets.
Full Changelog: release_3.3.0...release_3.4.0