Coder Social home page Coder Social logo

alac's Introduction

ALAC

Apple Lossless Audio Codec with autotools. This repo uses the source code from http://alac.macosforge.org/ and wrap it around using autotools and Debian build toolchain.

This thing is unmaintained. Use this on your own risk.

Prerequisites, if you want to build it yourself

  • git: to clone this repo. Optional if you are using a tarball.
  • gcc: to compile stuff.
  • g++: to compile stuff.
  • autotools: to generate the build files.

How to build

Classic GNU

autoreconf -i -f
./configure
# Or if you want to
# ./configure --enable-example
make
sudo make install

Debian packaging

This method works if:

  • You are using a system using dpkg (like Debian, Ubuntu, etc.)
  • And you want .deb's.

I strongly suggest you to know how the Debian packaging works before using this method.

  1. You need to have a packaging environment.
  • If you are a maintainer or you know how to package a deb or you have a PPA, skip to step 3.
  • If you don't know anything about Debian packaging, go to step 2.
  1. Set up packaging environment.
  • Look here for Debian users and here for Ubuntu users.
  1. Edit debian/changelog.
  • Change my name to your name, and my email to your email.
  • Change raring to whatever your distro codename is.
  1. Do:
    dpkg-buildpackage
    
  2. The .deb's will be in the parent folder of the source code directory.

Visual Studio

** The resulting binary might not work. I don't know why. Do this on your own risk.**

  1. Go to compat.
  2. Go to corresponding folder match your VS version.
  3. Open up the solution and build it.

What's included

  • libalac, a library for ALAC en-/decoding.
  • alacconvert, an example program using libalac to convert wav (in wav or caf container) to alac (in caf container) or vice versa. It will only build if you pass --enable-example to configure.

Documentation

alacconvert

Look at the man page.

The library

Either look at the .txt's in the repo or go to Apple's website.

Bugs Report

If you found some difficulty building it, open a new issue. Otherwise, don't bother me. Note that I am not a programmer. So if you have any patch regarding the sources I'm sorry I can't apply it. But if it is about the building system, feel free to open a new pull request or an issue.

Versioning scheme

(upstream_major).(upstream_minor)r(upstream_revision)+tg(my_release_number)

The upstream major and minor are both 0 because Apple never made a release. The upstream revision is 4 because the SVN revision I pulled out from is 4. My release number is of course my release number. "tg" is my initials.

Authors

  • debian/*, Makefile.am, */Makefile.am, alac.pc.in, alacconvert.1, configure.ac, README.md: Tiancheng "Timothy" Gu

  • The rest: Apple Inc.

To-do

  • PPA
  • EXTRA_DIST variable in Makefile.am's

alac's People

Contributors

mike2718 avatar timothygu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

alac's Issues

在Ubuntu里autoreconf出错

刚才尝试了下,发现按照README里的编译步骤编译不能。。。

日志:

mike@mike-pc:~/dev/alac$ autoreconf -i -f
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `.'.
libtoolize: copying file `./config.guess'
libtoolize: copying file `./config.sub'
libtoolize: copying file `./install-sh'
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
configure.ac:41: error: possibly undefined macro: AC_CHECK_HEADER_STDBOOL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1

偶的系统是中文版的Ubuntu:

Linux mike-pc 3.8.0-38-generic #56~precise1-Ubuntu SMP Thu Mar 13 16:23:47 UTC 2014 i686 i686 i386 GNU/Linux

各种版本:

autoreconf (GNU Autoconf) 2.68
autoconf (GNU Autoconf) 2.68

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.