下源码: http://sourceforge.NET/projects/opencore-amr/files/fdk-aac/
解压源码;
一:编译Windows版本比较简单,直接configure,然后make就可以了;
二:编译Android版本:
1:ndk-build后出现很多错误;
解决方法,添加Application.mk,添加内容APP_ABI := armeabi-v7a
可以从androi NDK的示例中直接复制一份;
然后编译就可以了;
很多有用的东西都可以从wiki里找到:
https://en.wikipedia.org/wiki/Fraunhofer_FDK_AAC
http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC
PC端编译
http://www.linuxfromscratch.org/blfs/view/svn/multimedia/fdk-aac.html
fdk-aac-0.1.4
Introduction to fdk-aac
fdk-aac package provides the Fraunhofer FDK AAC library, which is purported to be a high quality Advanced Audio Coding implementation.
This package is known to build and work properly using an LFS-7.10 platform.
Package Information
-
Download (HTTP): http://downloads.sourceforge.net/opencore-amr/fdk-aac-0.1.4.tar.gz
-
Download MD5 sum: e274a7d7f6cd92c71ec5c78e4dc9f8b7
-
Download size: 1.9 MB
-
Estimated disk space required: 26 MB
-
Estimated build time: 0.3 SBU
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/fdk-aac
Installation of fdk-aac
Install fdk-aac by running the following commands:
CXX='g++ -Wno-narrowing' \ ./configure --prefix=/usr \ --disable-static && make
This package does not come with a test suite.
Now, as the root
user:
make install
Command Explanations
CXX='g++ -Wno-narrowing' ...: GCC 6 does not support integer narrowing. Setting CXX this way allows to suppress the associated error.
--disable-static
: This switch prevents installation of static versions of the libraries.
Contents
Last updated on 2016-08-29 13:02:18 -0500
.
├── include
│ └── fdk-aac
│ ├── aacdecoder_lib.h
│ ├── aacenc_lib.h
│ ├── FDK_audio.h
│ ├── genericStds.h
│ └── machine_type.h
└── lib
├── libfdk-aac.la
├── libfdk-aac.so -> libfdk-aac.so.1.0.0
├── libfdk-aac.so.1 -> libfdk-aac.so.1.0.0
├── libfdk-aac.so.1.0.0
└── pkgconfig
└── fdk-aac.pc
4 directories, 10 files
sudo make install
[sudo] password for gg:
make[1]: 正在进入目录 `/home/gg/Develope/fdk-aac-0.1.4'
/bin/mkdir -p '/usr/lib'
/bin/bash ./libtool --mode=install /usr/bin/install -c libfdk-aac.la '/usr/lib'
libtool: install: /usr/bin/install -c .libs/libfdk-aac.so.1.0.0 /usr/lib/libfdk-aac.so.1.0.0
libtool: install: (cd /usr/lib && { ln -s -f libfdk-aac.so.1.0.0 libfdk-aac.so.1 || { rm -f libfdk-aac.so.1 && ln -s libfdk-aac.so.1.0.0 libfdk-aac.so.1; }; })
libtool: install: (cd /usr/lib && { ln -s -f libfdk-aac.so.1.0.0 libfdk-aac.so || { rm -f libfdk-aac.so && ln -s libfdk-aac.so.1.0.0 libfdk-aac.so; }; })
libtool: install: /usr/bin/install -c .libs/libfdk-aac.lai /usr/lib/libfdk-aac.la
libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/sbin" ldconfig -n /usr/lib
----------------------------------------------------------------------
Libraries have been installed in:
/usr/lib
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/bin/mkdir -p '/usr/include/fdk-aac'
/usr/bin/install -c -m 644 ./libSYS/include/machine_type.h ./libSYS/include/genericStds.h ./libSYS/include/FDK_audio.h ./libAACenc/include/aacenc_lib.h ./libAACdec/include/aacdecoder_lib.h '/usr/include/fdk-aac'
/bin/mkdir -p '/usr/lib/pkgconfig'
/usr/bin/install -c -m 644 fdk-aac.pc '/usr/lib/pkgconfig'
make[1]:正在离开目录 `/home/gg/Develope/fdk-aac-0.1.4'