diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 5006ae0ce7..227eddbb84 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -603,13 +603,13 @@ file( GLOB HEADER_FILES
 	menu/*.h
 	sound/*.h
 	sound/backend/*.h*
-	sound/music/*.h*
 	posix/*.h
 	posix/cocoa/*.h
 	posix/sdl/*.h
 	win32/*.h
 	r_data/*.h
 	r_data/models/*.h
+	common/audio/music/*.h*
 	common/console/*.h
 	common/utility/*.h
 	common/engine/*.h
@@ -757,7 +757,6 @@ set( FASTMATH_SOURCES
 	rendering/swrenderer/r_all.cpp
 	rendering/swrenderer/r_swscene.cpp
 	rendering/polyrenderer/poly_all.cpp
-	sound/music/music_midi_base.cpp
 	sound/backend/oalsound.cpp
 	gamedata/textures/hires/hqnx/init.cpp
 	gamedata/textures/hires/hqnx/hq2x.cpp
@@ -1096,15 +1095,16 @@ set (PCH_SOURCES
 	scripting/zscript/ast.cpp
 	scripting/zscript/zcc_compile.cpp
 	scripting/zscript/zcc_parser.cpp
-	sound/music/music.cpp
-	sound/music/i_music.cpp
-	sound/music/i_soundfont.cpp
 	sound/backend/i_sound.cpp
-	sound/music/music_config.cpp
 	rendering/swrenderer/textures/r_swtexture.cpp
 	rendering/swrenderer/textures/warptexture.cpp
 	rendering/swrenderer/textures/swcanvastexture.cpp
 	events.cpp
+	common/audio/music/music_midi_base.cpp
+	common/audio/music/music.cpp
+	common/audio/music/i_music.cpp
+	common/audio/music/i_soundfont.cpp
+	common/audio/music/music_config.cpp
 	common/thirdparty/sfmt/SFMT.cpp
 	common/textures/m_png.cpp
 	common/console/c_commandline.cpp
@@ -1227,6 +1227,7 @@ endif()
 target_link_libraries( zdoom ${ZDOOM_LIBS} gdtoa lzma ${ZMUSIC_LIBRARIES} )
 
 include_directories( .
+	common/audio/music
 	common/thirdparty
 	common/filesystem
 	common/utility
@@ -1244,7 +1245,6 @@ include_directories( .
 	rendering/2d
 	r_data
 	sound
-	sound/music
 	sound/backend
 	xlat
 	utility
@@ -1356,7 +1356,6 @@ install(TARGETS zdoom
 
 source_group("Audio Files" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/sound/.+")
 source_group("Audio Files\\Backend" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/sound/backend/.+")
-source_group("Audio Files\\Music formats" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/sound/musicformats/.+")
 source_group("Audio Files\\Third-party" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/sound/thirdparty/.+")
 source_group("Game Data" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/gamedata/.+")
 source_group("Game Data\\Fonts" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/gamedata/fonts/.+")
@@ -1431,6 +1430,8 @@ source_group("Scripting\\Compiler backend" REGULAR_EXPRESSION "^${CMAKE_CURRENT_
 source_group("Scripting\\VM" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/scripting/vm/.+")
 source_group("Scripting" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/scripting/.+")
 source_group("Common" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/.+")
+source_group("Common\\Audio" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/audio/.+")
+source_group("Common\\Audio\\Music" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/audio/music.+")
 source_group("Common\\Console" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/console/.+")
 source_group("Common\\Utility" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/utility/.+")
 source_group("Common\\Engine" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/common/engine/.+")
diff --git a/src/sound/music/i_music.cpp b/src/common/audio/music/i_music.cpp
similarity index 100%
rename from src/sound/music/i_music.cpp
rename to src/common/audio/music/i_music.cpp
diff --git a/src/sound/music/i_music.h b/src/common/audio/music/i_music.h
similarity index 100%
rename from src/sound/music/i_music.h
rename to src/common/audio/music/i_music.h
diff --git a/src/sound/music/i_soundfont.cpp b/src/common/audio/music/i_soundfont.cpp
similarity index 100%
rename from src/sound/music/i_soundfont.cpp
rename to src/common/audio/music/i_soundfont.cpp
diff --git a/src/sound/music/i_soundfont.h b/src/common/audio/music/i_soundfont.h
similarity index 100%
rename from src/sound/music/i_soundfont.h
rename to src/common/audio/music/i_soundfont.h
diff --git a/src/sound/music/music.cpp b/src/common/audio/music/music.cpp
similarity index 100%
rename from src/sound/music/music.cpp
rename to src/common/audio/music/music.cpp
diff --git a/src/sound/music/music_config.cpp b/src/common/audio/music/music_config.cpp
similarity index 100%
rename from src/sound/music/music_config.cpp
rename to src/common/audio/music/music_config.cpp
diff --git a/src/sound/music/music_midi_base.cpp b/src/common/audio/music/music_midi_base.cpp
similarity index 100%
rename from src/sound/music/music_midi_base.cpp
rename to src/common/audio/music/music_midi_base.cpp
diff --git a/src/sound/music/s_music.h b/src/common/audio/music/s_music.h
similarity index 100%
rename from src/sound/music/s_music.h
rename to src/common/audio/music/s_music.h