XPCog XPCog
Audio Player for Windows, macOS and Linux

Cog, ported off the Mac.

XPCog is a port of Cog to wxWidgets and C++20 — the same decoders, the same gapless engine, the same settings keys, on Windows, macOS and Linux. It is early, and every build below is what CI published on the day it says.

Version 1.8.1 · Published Sep 7, 2026, 11:18 AM · Release on GitHub

On Arch Linux, build it from the AUR instead: xpcogyay -S xpcog. It builds a tagged release from source, so it can trail the newest one above. Read the PKGBUILD before you build it. The AUR is user-submitted, and has repeatedly been used to ship malware through hijacked orphan packages — nothing on it is vetted for you, this package included.

Changes

  • Count the reloaded scrobble queue before it can be sent (c10745c)
  • Hand out whole frames only, so a starved ring cannot swap the channels (8e16538)

Downloads

  • XPCog-1.8.1-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.8.1-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.8.1-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 8e16538ef8bf by run 219.

Archive

Older versions

Changes

  • Let a request from this machine skip the token, when asked to (0689a7a)

Downloads

  • XPCog-1.8.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.8.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.8.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 0689a7a2c3d6 by run 217.

Changes

  • Draw the info panel as an HTML page (0107771)
  • Wrap a path at its separators, and drop the empty fields (897432c)

Downloads

  • XPCog-1.7.2-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.7.2-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.7.2-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 897432c56e8d by run 216.

Changes

  • Declare the macOS bundle’s document types from the codec registry (ce217a7)

Downloads

  • XPCog-1.7.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.7.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.7.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from ce217a7006c0 by run 215.

Changes

  • Open the rate probe’s devices through one context (4c814de)
  • Carry Cog’s play dates in, and count a looping track once (fe671f0)

Downloads

  • XPCog-1.6.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.6.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.6.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from fe671f068331 by run 214.

Changes

  • Ask the device what rate it runs, not what it would accept (dae03e6)

Downloads

  • XPCog-1.5.4-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.5.4-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.5.4-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from dae03e6aab5d by run 212.

Changes

  • Reduce the toolbar to the transport (0854801)
  • Draw the seek bar in the accent colour, and outline it (6576808)

Downloads

  • XPCog-1.5.3-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.5.3-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.5.3-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 6576808a3bcf by run 211.

Changes

  • Drain until the scan actually published (b7f83fb)
  • Stop a second process binding the remote control’s port on Windows (f8c0b2e)

Downloads

  • XPCog-1.5.1-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.5.1-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.5.1-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from f8c0b2e42baa by run 210.

Changes

  • Extract the playlist commands and the settings fan-out from MainFrame (960e8d7)
  • Add the build wiring for a REST remote-control server (9a9b884)
  • Require a bearer token on every remote-control request (bc50b35)
  • Add the seam the remote control reaches the player through (e053894)
  • Route the transport over the remote control (ff4a8af)
  • Route the playlist, artwork and scan jobs (8f4a13c)
  • Route the settings and the equaliser (295da32)
  • Generate the OpenAPI document from the route table (703829f)
  • Open the socket, and fix two things only a socket could show (6334012)
  • Wire the remote control to the player (fa1bc2f)
  • Add the Remote pane and the settings behind it (905db55)
  • Serve a Swagger UI page at /docs (159d887)
  • Add a serve command to xpcog-cli (78ed39e)
  • Put a real changelog on the release (e9c3f02)
  • Document the remote control, and retire the port framing (9d74ac7)
  • Take the docs page’s script out of the page (020f6da)
  • Switch the equaliser on when a preset is applied (a13ad98)
  • Answer what is playing in one request (b52963f)
  • Say where the playing track is in the playlist (a4e34a2)
  • Stop the README calling XPCog a port (124fa99)
  • Lead the README with what XPCog does, not with what has landed (467bc07)
  • Include the header macOS declares getentropy in (d3f634d)

Downloads

  • XPCog-1.5.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.5.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.5.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from d3f634d9633a by run 209.

Downloads

  • XPCog-1.4.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.4.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.4.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from cb3721d0de1e by run 207.

Full Changelog: https://github.com/losnoco/XPCog/compare/v1.3.0…v1.4.0

Downloads

  • XPCog-1.3.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.3.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.3.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 63e24b01e820 by run 206.

Full Changelog: https://github.com/losnoco/XPCog/compare/v1.2.0…v1.3.0

Downloads

  • XPCog-1.2.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.2.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.2.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from 589fada71b08 by run 205.

Full Changelog: https://github.com/losnoco/XPCog/compare/v1.1.0…v1.2.0

Downloads

  • XPCog-1.1.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.1.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.1.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from dcc8ff063aa4 by run 204.

Full Changelog: https://github.com/losnoco/XPCog/compare/v1.0.0…v1.1.0

Downloads

  • XPCog-1.0.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-1.0.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.
  • XPCog-1.0.0-x86_64.tar.gz — Linux x86_64. Unpack it at the prefix you mean to run it from; the desktop file’s Exec is an absolute path, and everything else in the archive is relocatable. Needs glibc 2.39 or newer — Ubuntu 24.04, Debian 13, current Fedora, Arch and openSUSE. Ubuntu 22.04, Debian 12 and RHEL 9 are below that line. wxWidgets and GTK come from your distribution; the codecs are linked in.

Built from e7eae2d67436 by run 203.

Full Changelog: https://github.com/losnoco/XPCog/compare/v0.8.0…v1.0.0

v0.8.0 Aug 30, 2026, 8:00 PM Windows 28.55 MB macOS 35.87 MB

Downloads

  • XPCog-0.8.0-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-0.8.0-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.

Built from aca6d8ee37b0 by run 202.

Full Changelog: https://github.com/losnoco/XPCog/compare/v0.7.4…v0.8.0

v0.7.4 Aug 30, 2026, 5:45 AM Windows 28.54 MB macOS 35.87 MB

Downloads

  • XPCog-0.7.4-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-0.7.4-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.

Built from cc6b6646b6c3 by run 201.

Full Changelog: https://github.com/losnoco/XPCog/compare/v0.7.2…v0.7.4

v0.7.2 Aug 29, 2026, 8:17 PM Windows 28.55 MB macOS 35.86 MB

Downloads

  • XPCog-0.7.2-x64-setup.exe — Windows x64. Unsigned, as a locally built one is; SmartScreen will say so.
  • XPCog-0.7.2-arm64.dmg — macOS on Apple silicon. Signed with a Developer ID and notarised. Not a universal binary: arm64 only, so an Intel Mac cannot run it.

Built from 81ea65aaee8e by run 199.