How the two compare

They are developed separately as independent applications. Their features overlap but are not identical, and settings and data are not shared. The table below lists the actual difference in each row.

Describes the currently released version of each app. Past changes are in the version history.

FeatureWindowsAndroid
Library managementSearches title, artist, album, composer, lyricistSearches title, artist, album, folder
Large librariesSmooth with a million tracks (measured)Smooth with a million tracks (measured)
Equalizer18 bands, 11 presets, save your own by name10 bands, 11 presets including a custom slot
Audio effectsBass, reverb, echo, chorus, vocal removalBass boost, virtualizer, spatial audio (where the device supports it)
Speed and pitch0.5×–2.0× speed, −12 to +12 semitones, independent of each other0.5×–2.0× speed, −12 to +12 semitones, independent of each other
Audio outputWASAPI shared / exclusive (bit-perfect)System output
DSD playbackDSF decoded in software (DSD64/128/256, 44.1 kHz family) to 44.1 kHz PCM; works with any sound cardNot supported
LyricsFull-screen lyrics, karaoke highlighting, translation line, swap the two languagesFull-screen lyrics, karaoke highlighting, translation line, swap the two languages
Lyrics editingBuilt-in editor, shift the whole timelineBuilt-in editor, shift the whole timeline
Edit metadataDatabase mode / disk modeWritten back to the audio file
Format conversionTo FLAC, ALAC, WAV, AAC, MP3 or Opus; batches supported; the original file is left aloneNot supported
PlaylistsSmart playlists, recently played, top ratedCustom icons, independent playback mode
ShuffleWeighted by star ratingWeighted by listening habits; every track exactly once within the range, resumes after restart
ThemesFour (dark / light / midnight blue / amber)6 accent colours + dark mode
Interface languages15 (including Italian and Dutch)15 (including Indonesian and Vietnamese)
Sleep timer15 / 30 / 60 / 90 minutes15 / 30 / 60 minutes, custom, or end of current track
Background playbackKeeps playing when minimisedBackground playback, lock-screen controls, Bluetooth and car media keys

Both have 15 languages, but not the same 15. The full lists are in the technical details below.

Technical details

CX'Music (desktop)

C# · .NET 8 · WinUI 3 · NAudio · SQLite + FTS5

  • The audio pipeline is a chain of custom ISampleProviders (a hand-built DSP chain on top of NAudio): decode → 18-band equalizer → effects → time/pitch shifting → volume → WASAPI output
  • Playback position uses the number of samples WASAPI has actually consumed as its single source of truth, avoiding unreliable hardware seek positions
  • DSF parsing and DSD → PCM conversion are implemented in pure C#
  • Paged virtualisation with keyset pagination. Scrolling and search were measured on a synthetic library of a million tracks and no stutter showed up; that library has no cover art and no large files, so what was measured is the list and the query themselves.

CX's Music (mobile)

Kotlin · Jetpack Compose · Media3 (ExoPlayer) · Room · Hilt

  • Shuffle uses Efraimidis–Spirakis weighted sampling without replacement, so every track in range plays exactly once
  • The permutation is persisted to the database, so it resumes after the process is killed by the system
  • A virtual queue window keeps only 50 tracks in the player while backing a library of a million
  • Embedded lyrics are read from ID3 SYLT/USLT, Vorbis Comment and MP4 atoms

Full interface language lists

CX'Music (desktop)
繁體中文 · 简体中文 · English · 日本語 · 한국어 · Español · Français · Deutsch · Português · Русский · Italiano · Nederlands · Ελληνικά · العربية · हिन्दी
CX's Music (mobile)
繁體中文 · 简体中文 · English · 日本語 · 한국어 · Español · Français · Deutsch · Português · Русский · Bahasa Indonesia · Tiếng Việt · Ελληνικά · العربية · हिन्दी

They differ in exactly two slots: the desktop version has Italian and Dutch, the mobile version has Indonesian and Vietnamese. The website itself offers 17 languages — the union of both lists.