1. Open yourmodname\data\soundplaylistfe.lua and delete music_main_title, leave the quote marks. This will prevent it from playing over the new music we're going to add.
2. Open your army commander (or whoever will go on the main menu) in the object editor and create a new motion called fe_music
3. Create a new event called sound_fe_music and add the music file you want to it.
4. Add the new event to the new motion and add the new motion to the frontend_ui action.
5. Add the modified commander to frontendmodels.lua in yourmods data folder.
Now when the commander is on the main menu his faction theme will play.
Problem is it won’t stop until the player starts a skirmish battle. If the player starts a new campaign it'll play over the cinematic.
There are two ways to prevent this, you can create a .rat file with the same name as the music file and add loopCount = 0 to it, or you can add the sound motion cutoff parameter to the sound_fe_music event in the object editor.
Both methods will stop the music when the player leaves the main menu, which isn't ideal either. Normally race music will continue in the army painter and skirmish setup screen.
I'm still experimenting with the .rat file trying to find a way to mimic the original music behavior, let me know if you figure out the right settings.