Moved music files to an external HTTP server (colobot/colobot#362)

coolant-mod
krzys-h 2015-07-09 12:57:16 +02:00
parent 7696ffe209
commit aef8b84c77
5 changed files with 133 additions and 4 deletions

3
.gitmodules vendored
View File

@ -1,3 +0,0 @@
[submodule "music"]
path = music
url = https://github.com/colobot/colobot-music.git

1
music

@ -1 +0,0 @@
Subproject commit c789a6f2783711b5f9d6437169d71b00a557fc3d

9
music/.gitignore vendored Normal file
View File

@ -0,0 +1,9 @@
# CMake files
/CMakeFiles/
/cmake_install.cmake
/Makefile
# Generated ogg files
*.ogg
# except:
!Intro1.ogg
!Intro2.ogg

88
music/CMakeLists.txt Normal file
View File

@ -0,0 +1,88 @@
cmake_minimum_required(VERSION 2.8)
# List of music files to be installed
set(MUSIC_FILES
Intro1
Intro2
music002
music003
music004
music005
music006
music007
music008
music009
music010
music011
music012
music013
Constructive
Humanitarian
Hv2
Quite
Infinite
Proton
Prototype
)
option(MUSIC "Enable music download" ON)
if(MUSIC)
option(MUSIC_FLAC "Download music in FLAC fomat and convert it to *.ogg locally, this lets you change music quality" OFF)
if(MUSIC_FLAC)
set(MUSIC_QUALITY 3 CACHE STRING "Music quality [-1(very low) - 10(very high), fractional values allowed]")
find_program(OGGENC oggenc)
if(NOT OGGENC)
message(FATAL_ERROR "oggenc not found! Music files cannot be generated!")
endif()
endif()
if(NOT DEFINED COLOBOT_INSTALL_DATA_DIR)
if(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
set(COLOBOT_INSTALL_MUSIC_DIR ${CMAKE_INSTALL_PREFIX}/data/music CACHE PATH "Colobot shared music directory")
else()
set(COLOBOT_INSTALL_MUSIC_DIR ${CMAKE_INSTALL_PREFIX}/share/games/colobot/music CACHE PATH "Colobot shared music directory")
endif()
else()
set(COLOBOT_INSTALL_MUSIC_DIR ${COLOBOT_INSTALL_DATA_DIR}/music CACHE PATH "Colobot shared music directory")
endif()
find_program(WGET wget)
if(NOT WGET)
message(FATAL_ERROR "wget not found, music files can't be downloaded!")
endif()
foreach(FILE ${MUSIC_FILES})
get_filename_component(FILENAME ${FILE} NAME_WE)
if(MUSIC_FLAC AND NOT FILE MATCHES "Intro") # TODO: We still don't have FLAC version of Intro files, they are packaged as .ogg directly
set(DOWNLOAD_FILE ${FILENAME}.flac)
else()
set(DOWNLOAD_FILE ${FILENAME}.ogg)
endif()
add_custom_target(
download-${FILENAME}
ALL
${WGET} -N "http://colobot.info/files/music/${DOWNLOAD_FILE}"
COMMENT "Downloading ${DOWNLOAD_FILE}"
)
if(MUSIC_FLAC)
if(DOWNLOAD_FILE MATCHES ".ogg")
message(STATUS "Installing ${FILE} (FLAC not available)...")
else()
message(STATUS "Converting ${FILE} to OGG...")
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FILENAME}.ogg"
COMMAND ${OGGENC} -q ${MUSIC_QUALITY} -o "${FILENAME}.ogg" "${FILENAME}.flac"
DEPENDS download-${FILENAME} "${CMAKE_CURRENT_BINARY_DIR}/${FILENAME}.flac"
)
endif()
else()
message(STATUS "Installing ${FILE}...")
endif()
add_custom_target(generate-${FILENAME} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${FILENAME}.ogg")
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${FILENAME}.ogg DESTINATION ${COLOBOT_INSTALL_MUSIC_DIR})
endforeach()
endif()

36
music/README.md Normal file
View File

@ -0,0 +1,36 @@
# Colobot: Gold Edition - music files
This reporitory contains music tracks for Colobot: Gold Edition project (https://github.com/colobot/colobot) and is an optional addition to game's data files (https://github.com/colobot/colobot-data).
It currently includes:
* Original music from Colobot game, composed by **Daniel Roux** and prepared by **CoLoRaptor** to be also as stand-alone soundtrack album in the Vorbis meta-tags (by adding titles to every track and changing queue, that would be more suited to album release). This music was taken from original game CD.
* Track 01: "CoLoBoT Main Theme" - music011.flac
* Track 02: "Leaving Earth - NASA Exercises" - music002.flac
* Track 03: "The First Unknown World - Nature of Natives" - music003.flac
* Track 04: "Crystalium - System Failure" - music004.flac
* Track 05: "Saari's Heat" - music005.flac
* Track 06: "Eruption" - music006.flac
* Track 07: "Centaury - The Lost Hope" - music007.flac
* Track 08: "Infinite Storm" - music008.flac
* Track 09: "Terranova - Our New Home" - music009.flac
* Track 10: "You Win!" - music012.flac
* Track 11: "You Lose..." - music010.flac
* Track 12: "Jazz Buzzing EasterEgg" - music013.flac
* New audio tracks, composed by **Emxx52** ([forum](http://colobot.info/forum/memberlist.php?mode=viewprofile&u=68), [GitHub](https://github.com/Emxx52))
* "Constructive Destruction" - Constructive.flac
* "Humanitarian" - Humanitaian.flac
* "Humanitarian v2 - The Box" - Hv2.flac
* "Prototype" - Prototype.flac
* "Quite Busy" - Quite.flac
* "Infinite Storm v2 - Being Approximately Overcharged" - Infinite.flac
* "Proton Ame" - Proton.flac
* New main menu intro music, composed by **PiXeL** ([forum](http://colobot.info/forum/memberlist.php?mode=viewprofile&u=243))
* Intro1.ogg
* Intro2.ogg
# File formats and installation
This repository contains files in FLAC format. However, the game can only play OGG files, so they need to be converted first - it's done like this so we can keep high quality music available, but reduce the file size for use in Colobot data files. This is done by CMake scripts included with this repository, but they require "oggenc" to be installed in your system.
# Licensing
All music files on this reporitory are licensed under GPLv3 license.
* The rights to redistribute original music files were given to TerranovaTeam along with the source code.
* Emxx52 puts his music on our forum and allows us to distribute it with the game - [forum topic (Polish)](http://colobot.info/forum/viewtopic.php?p=3242#p3242)
* The same applies to PiXeL's intro music - [forum post (Polish)](http://colobot.info/forum/viewtopic.php?f=17&t=354&p=3505#p3505)