If the XMCD contains storable audio, FFmpeg (with the proper libavcodec) can often demux it.
The original xmcd package for Linux includes command-line utilities to dump the audio content from an XMCD file. xmcd mcd converter
out = [] for line in lines: if line.startswith('#') or line.strip() == '': continue parts = line.split() if len(parts) >= 3: energy = float(parts[0]) i_plus = float(parts[1]) i_minus = float(parts[2]) mcd = i_minus - i_plus # change sign if needed out.append(f"energy:.3f mcd:.6f\n") If the XMCD contains storable audio, FFmpeg (with