by angelizado · Utility · v1.0.0
MUSIC.fm is a Forza Horizon 2 mod for Azimuth. It plays shuffled tracks from YouTube or SoundCloud through the Horizon XS station, offers an in-game song picker, and opens a WebView2 link manager for editing catalogs.
MUSIC.fm is an FH2 Mod Platform plugin; the platform is its loader and core API. Use FH2 Mod Platform 2.8.0 (API 9) or newer. The FH2 Mod Platform source is a separate build dependency and is not included in this repository:
•https://github.com/Trinculo54/fh2-mod-platform/
To build MUSIC.fm, download the FH2 Mod Platform source, extract it, rename the extracted folder to platform, then place that folder in the MUSIC.fm source root beside this README and CMakeLists.txt. Verify that platform/CMakeLists.txt exists before building.
The release package includes the matching platform runtime DLLs. Players still need Azimuth and the FH2 Mod Platform loader/core installed for the plugin to run.
•src/ — plugin, playback, SoundCloud predownload/cache, WebView2 editor bridge, and worker source.
•include/ — project headers.
•assets/ — radio artwork and Horizon XS texture overrides used by the package.
•data/ — empty YouTube and SoundCloud catalog templates.
•tests/ — offline catalog, cache-protocol, logo-state, and WebView smoke tests.
•third_party/ — vendored build dependencies and WebView2 SDK files with notices.
•platform/ — required external FH2 Mod Platform source; not included. Download and rename it as described below.
•NOTICE.md — upstream-code attribution and licensing context.
•scripts/ — Windows build and release-installer scripts.
•CMakeLists.txt — CMake targets and source registration.
Build outputs, cache data, logs, and installed Azimuth files are not part of this source tree.
The platform registers the plugin as MUSIC.fm. The source selector displays YouTube and SoundCloud. Both catalogs remain separate in fh2-radio/songlist.json and fh2-radio/soundcloudlist.json; both ship empty so users add their own links.
YouTube keeps its background predownload cache. SoundCloud tracks predownload in the background to fh2-radio/soundcloud-music; the radio prefers a completed cached track and streams when it is not ready yet. The SoundCloud link editor reports per-track download progress while the game is running.
The editor is a standalone Windows application with a local HTML interface hosted by WebView2. It does not run a browser dashboard or local web server.
Requirements: Windows, CMake 3.20+, Ninja, Git, PowerShell, and an x86-64 llvm-mingw toolchain. The checked-in build script expects the MSYS2 toolchain under C:\msys64\mingw64\bin; adjust scripts/build.ps1 if yours is elsewhere.
Clone the project:
powershell
git clone https://github.com/angelizado/musicfm.git
cd musicfmThis clone URL is the intended public repository. It may not be available until the source is published there; until then, build from the local source package.
Before building, download the FH2 Mod Platform source from the URL above. Extract its ZIP, rename the extracted folder (usually fh2-mod-platform-main) to platform, and move it into the MUSIC.fm source root. The final layout must be musicfm/platform/CMakeLists.txt.
If you place the platform checkout elsewhere, configure CMake with -DFH2_MOD_PLATFORM_DIR=C:/path/to/fh2-mod-platform; the supplied scripts/build.ps1 expects the default platform/ location.
Build and stage the release package:
powershell
powershell -ExecutionPolicy Bypass -File scripts/build.ps1The script configures CMake, builds the plugin, editor, worker, and matching platform runtime, then creates dist/MUSIC.fm.zip. It also builds the offline test targets. Run the tests with:
powershell
& 'C:\msys64\mingw64\bin\ctest.exe' --test-dir build-musicfm --output-on-failureThe FH2 Mod Platform source is a separate dependency and is not tracked here. When creating a GitHub release, publish a tag matching the CMake project version (for example v1.0.0) and attach dist/MUSIC.fm.zip. The plugin advertises angelizado/musicfm to the FH2 Mod Platform update checker; update notices require that public repository and a matching GitHub Release to exist.
1. Close Azimuth.
2. Extract the release archive and run its installer, passing your Azimuth directory and the game's Mount directory:
powershell
.\install.ps1 -AzimuthDir "C:\path\to\azimuth" -GameMount "C:\path\to\Mount"3. Start FH2 through Azimuth.
4. Open Pause → Settings → MODS and enable MUSIC.fm. Select YouTube or SoundCloud under Music source.
5. Open the song picker or the provider's link manager from the in-game menu. SoundCloud background-download status appears in its link manager.
The installer preserves existing configuration, catalogs, and music caches. Keep a backup of the Azimuth installation befor
FH2 support: Supported
Version
1.0.0
FH2 Mod Platform
Supported
Source
github