Notes on Building the Solution - lincolnyu/muserver GitHub Wiki

Prerequisites

  • To build the CODEC library you need to have [url:http://sourceforge.net/projects/nasm/|netwide assembler (NASM)] installed and properly set up with the Visual Studio IDE.
  • Most of the other prerequisites of the solution have been put in place except for the flac codec libraries which come in the form of a flac folder and an ogg folder that the flac part requires.
  • The LAME mp3 codec library has not yet been used and is reserved for future development of encoding WAV streams to mp3s to complete the transcoding from ape/flac to mp3.

flac and ogg can respectively be git from

  1. git://git.xiph.org/flac.git
  2. git://git.xiph.org/mirrors/ogg.git

All you need to do is create a folder named 'xiph' under the CodecLibs folder and clone the the above two libraries into two folders named 'ogg' and 'flac' under the 'xiph' folder. If they are git properly the contents should be placed right in these two folders. One way to verify this is ensure the hidden .git folder is at

  1. CodecLibs\xiph\flac.git
  2. CodecLibs\xiph\ogg.git

Then you need to build the FLAC.sln solution. This has to be done separately from the building of the main server solution unlike the MACLib as so far I haven't figured out a way to build the required flac project successfully from within the server solution. I'll appreciate it if anyone can tell me why. Since the MACLib project is already part of the solution it doesn't need to be built separately.

The main solution is supposed to have already been set up such that the server project grabs required .lib files from both MACLib and flac projects library for symbol resolution (instead of copying it references those target lib files directly in these folder either way we need to make sure the above xiph projects need to be in the right places) and it also as its custom build step should copy the dlls from the codec libraries to the folder where the server runs.