GithubHelp home page GithubHelp logo

classicvalues / audiocodecs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wohlsoft/audiocodecs

2.0 1.0 0.0 30.78 MB

A collection of audio codecs as set of dependencies for SDL Mixer X audio library

C 69.47% C++ 26.59% Shell 0.01% Objective-C 1.27% Assembly 1.49% Makefile 0.03% Roff 0.04% Perl 0.08% Python 0.05% Ada 0.17% Pascal 0.14% C# 0.10% DIGITAL Command Language 0.05% Module Management System 0.01% CSS 0.01% CMake 0.01% Metal 0.01% FreeBasic 0.12% Java 0.36%

audiocodecs's Introduction

AudioCodecs collection

A collection of various audio codecs and their dependencies.

This is a set of dependencies required for SDL Mixer X audio library, except of SDL2 which is updating offten.

This set of libraries is designed to be buildable through QMake and CMake building systems.

Note: to build libtimidity, you need have latest libSDL2 be installed! (this library was modified to support files through SDL_RWops() API)

CI Badges

Operating system Badge
Linux: Build Status
Windows: Build status
macOS Build Status

How to build

Linux

You will need:

  • CMake >= 2.8
  • GCC and G++ >= 4.8
  • libSDL2 library package installed, OR you can use -DDOWNLOAD_SDL2_DEPENDENCY=ON CMake flag to automatically download from official mercurial repository and build this

System install (will be installed with /usr/local/ prefix)

# Step 1: Download repository
git clone https://github.com/WohlSoft/AudioCodecs.git
cd AudioCodecs

# Step 2: PRepare build directory
mkdir build
cd build

# Step 3: Configure project ()
cmake ..

# Step 4: Build
make
# Hint: to speed-up build use -j <num jobs> flag. Count of jobs should be equal number of CPU cores

# Step 5: Install
sudo make install

Custom install (You can install result into any folder and you don't need to have root to install)

# Step 1: Download repository
git clone https://github.com/WohlSoft/AudioCodecs.git
cd AudioCodecs

# Step 2: PRepare build directory
mkdir build
cd build

# Step 3: Configure project ()
cmake -DDOWNLOAD_SDL2_DEPENDENCY=ON -DCMAKE_INSTALL_PREFIX=~/AudioCodecs/ ..

# Step 4: Build and install
cmake -build . -config release -target install -- -j 2
#   Tip: instead of "release" you can have "debug" to build debug versions. Instead of "2" put your actual count of CPU cores

macOS

The build for macOS is very similar to Linux way, you just can follow Linux way to build libraries

Windows

You will need:

  • CMake >= 2.8
  • MinGW >= 4.8, MinGW-w64 >= 5, or MSVC >=2015 (on your taste)

Build with MinGW

rem Step 1: Download repository
git clone https://github.com/WohlSoft/AudioCodecs.git
cd AudioCodecs

rem Step 2: PRepare build directory
mkdir build
cd build

rem Step 3: Configure project
cmake -G "MinGW Makefiles" -DDOWNLOAD_SDL2_DEPENDENCY=ON -DCMAKE_INSTALL_PREFIX=%UserProfile%\MyLibs\ ..

rem Step 4: Build and install
cmake -build . -config release -target install -- -j 2
rem Tip: instead of "release" you can have "debug" to build debug versions. Instead of "2" put your actual count of CPU cores

Build with MinGW-w64 (A way to get 64-bit Windows assemblies)

rem Step 1: Download repository
git clone https://github.com/WohlSoft/AudioCodecs.git
cd AudioCodecs

rem Step 2: PRepare build directory
mkdir build
cd build
rem Important: You must to set the MinGW-w64 path first, also you must to remove a git from PATH if it is set
rem Full path may be different in dependence of version. Please fix this to match with your
set PATH=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH:C:\Program Files\Git\usr\bin;=%

rem Step 3: Configure project
cmake -G "MinGW Makefiles" -DDOWNLOAD_SDL2_DEPENDENCY=ON -DCMAKE_INSTALL_PREFIX=%UserProfile%\MyLibs\ ..

rem Step 4: Build and install
cmake -build . -config release -target install -- -j 2
rem Tip: instead of "release" you can have "debug" to build debug versions. Instead of "2" put your actual count of CPU cores

Build with MSVC

rem Step 1: Download repository
git clone https://github.com/WohlSoft/AudioCodecs.git
cd AudioCodecs

rem Step 2: PRepare build directory
mkdir build
cd build

rem Step 3: Configure project
cmake -G "Visual Studio 14 2015" -DDOWNLOAD_SDL2_DEPENDENCY=ON -DCMAKE_INSTALL_PREFIX=%UserProfile%\MyLibs\ ..
rem HINT: If you want to have 64-bit build, use "Visual Studio 14 2015 Win64" generator
rem HINT: You can take full list of available generators by requesting of "cmake --help"

rem Step 4: Build and install
cmake -build . -config release -target install -- -j 2
rem Tip: instead of "release" you can have "debug" to build debug versions. Instead of "2" put your actual count of CPU cores

Licenses

  • libADLMIDI: GNU LGPLv3+ or GNU GPLv3+
  • libFLAC: Multiple: BSD 3-clause "New" or "Revised" License (libFLAC, libFLAC++), GNU GPL (extra plugins and tools)
  • libFluidLite: GNU LGPLv2.1+
  • libGME: GNU LGPLv2.1+
  • libMAD: GNU GPLv2+ (a.k.a. v2 or any later version)
  • libMikMod: GNU LGPLv2+
  • libModPlug: Public Domain
  • libOGG: BSD 3-clause "New" or "Revised" License
  • libOpenMPT: BSD
  • libOPNMIDI: GNU LGPLv3+ or GNU GPLv3+
  • libOpus: BSD 3-clause "New" or "Revised" License
  • libSDL2: ZLib
  • libTimidity-SDL: The "Artistic License"
  • libVorbis: BSD 3-clause "New" or "Revised" License
  • libXMP: GNU LGPLv2+, partially MIT
  • libZlib: ZLib license

Libraries are can be freely used in non-free projects:

Static linking

(BSD, ZLib, and "Artistic" licenses are allows usage in closed-source projects)

  • libFLAC
  • libModPlug
  • libOGG
  • libOpenMPT
  • libOpus
  • libSDL2
  • libTimidity-SDL
  • libVorbis
  • libZlib

Dynamic linking

(LGPL allows usage in closed-source projects when LGPL-licensed components are linked dynamically)

  • libFLAC
  • libFluidLite
  • libGME
  • libMikMod
  • libModPlug
  • libOGG
  • libOpenMPT
  • libOpus
  • libSDL2
  • libTimidity
  • libVorbis
  • libXMP
  • libZlib

audiocodecs's People

Contributors

wohlstand avatar sezero avatar jpcima avatar

Stargazers

 avatar Classic Values avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.