1. get ffmpeg:
use git
link: http://www.ffmpeg.org/download.html
2. support more
2.1 mp3 (linux lame)
lame:http://lame.sourceforge.net/
install: http://lame.sourceforge.net/download.php
tar zvxf lame-3.99.2.tar.gz
cd ./lame-3.99.2
./configure --enable-shared --prefix=/usr
make
sudo make install
#defaul install path is /usr/local, but for ffmpeg complier, change to /usr.
2.2 Ogg Vorbis
link: http://www.vorbis.com/
libogg / libvorbis / vorbis-tools:
These are the standard software that allows you to play
and encode Ogg Vorbis files. They are included in most OSs.
If not you can compile from the
sources
.
2.3 xvid
link:http://www.xvid.org/
download: http://downloads.xvid.org/downloads/xvidcore-1.3.2.tar.gz
tar zvxf xvidcore-1.3.2.tar.gz
cd ./xvidcore
#you can get install information in doc/INSATLL
cd ./build/generic
./configure --prefix=/usr
make
sudo make install
2.4 x264
link:http://www.videolan.org/developers/x264.html
#you can find download way in this page.
download: ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
tar jxvf last_x264.tar.bz2
cd ./x264-snapshot-20111123-2245
make
sudo make install
#when ./configure you will get this:
#Found no assembler
#Minimum version is yasm-1.0.0
#If you really want to compile without asm, configure with --disable-asm.
#you can install yasm:
sudo apt-get install yasm
#Or you can visit:
#http://yasm.tortall.net/Download.html
#to make sure the Minimun version of yasm is 1.0.0
#if you get the configure err or libx264 not found:
#unsatisfied condition: X264_BUILD >=118
#then you should get the source from git. see @link at the beginning of this section.
cd x264
./configure --prefix=/usr --enable-shared
make
sudo make install
2.5 AC3
as4 OS is AC3 supported, then you just need add --enable-a52 --enable-gpl
when compiling.
2.6 dts
link: http://www.videolan.org/developers/libdca.html
i have not found libdts. just see some information about libdca.
I have given up it.
2.7 mpg4 aac(we just install faad2 and faac)
link: http://sourceforge.net/projects/faac/
download: http://sourceforge.net/projects/faac/files/
faad2:
./configure --prefix=/usr --with-mp4v2 --enable-shared
make
make install
#problem:
#need install autoconf : apt-get install autoconf
#if use autoreconf -vif
will recive some errors. I dont know why.
faac:
chmod +x bootstrap
./bootstrap
./configure --prefix=/usr --with-mp4v2 --enable-shared
make
make install
#problem:
#need install libtool: apt-get install libtool
#some code error:
new declaration ‘char* strcasestr(const char*, const char*)
#you should change the code:
#ifdef __cplusplus
extern "C
" {
#endif
char *
strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif
to:
#ifdef __cplusplus
extern "C++
" {
#endif
const
char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif
see:http://topic.csdn.net/u/20100820/15/bbf7190f-1ab8-44fa-9c9b-fabd7e388e62.html
and all about faac and faad2, you can also see :
http://home.chinavideo.org/space.php?uid=1&do=thread&id=6
2.8 3gp
need add options when compiling:
--enable-amr_nb --enable-amr_wb
and get codes:
http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-510.zip
#put the codes of it into libavcodec/amrwb_float
http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip
#put the codes of it into libavcodec/amr_float
//==========================
http://www.3gpp.org/ftp/Specs/archive/26_series/26.073/26073-510.zip
#if you use options --enable-amr_nb-fixed instad of --enable-amr_nb
put the codes of it into libavcodec/amr
edit libavcodec/amr/makefile:
change:
CFLAGS = -Wall -pedantic-errors -I. $(CFLAGS_$(MODE)) -D$(VAD)
to:
CFLAGS = -Wall -I. $(CFLAGS_$(MODE)) -D$(VAD) -DMMS_IO
//==========================
if any problem occured, see http://bbs.chinavideo.org/viewthread.php?tid=2469&extra=page%3D1
3 complie
/configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame
--enable-amr_nb-fixed --enable-amr_wb --enable-amr_if2 --enable-libogg
--enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-dts
--enable-pp --enable-faad --enable-faadbin --enable-faac --enable-x264
--enable-pthreads --disable-ffserver --disable-ffplay
make
make install
4. other
if you wanna support rmvb or wma9, try goole and make it.
this is a note of compiling ffmpeg.
5. notice
you can see the base aticle:
http://www.chinavideo.org/viewthread.php?tid=697&extra=page%3D1
本网所有文章建立在 创作公用 协议下。版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及以上“创作共用”声明。
over!
thanks.
分享到:
相关推荐
修改过的将大部分github资源转为指向Gitee上的镜像的一个编译脚本,同时外网的下载资源也转化为指向了ftp://localhost/xxxx ,使用前可先自行下载这些...然后替换当中的cross_compile_ffmpeg.sh为本文件,运行,即可。
FFmpeg 是一个强大的开源多媒体处理框架,用于处理音频和视频数据。它包含了各种工具和库,如 libavcodec(解码器),libavformat(容器格式解析),libavfilter(滤镜系统)以及 libavutil(通用实用工具)。在...
compile-ffmpeg.sh资源文件啊
- 示例配置命令可能如下:`./configure --target-os=linux --arch=arm --cpu=cortex-a8 --enable-cross-compile --prefix=/path/to/output --extra-cflags='-marm -mfloat-abi=softfp' --disable-shared --enable-...
--enable-cross-compile \ --target-os=android \ --arch=$TARGET \ --cc=$TOOLCHAIN/bin/clang \ --cxx=$TOOLCHAIN/bin/clang++ \ --cross-prefix=$TOOLCHAIN/bin/$HOST_TAG- \ --sysroot=$NDK_PATH/sysroot...
官方文档(如`ffmpeg--compile guideon ubuntu.doc`文档)提供了详细的API参考和示例代码,可以帮助你更好地理解和使用FFmpeg。记得经常查看官方更新,以便获取最新的功能和修复。 总之,配置FFmpeg开发环境虽然...
在交叉编译OpenSSL时,还应设置好相关的编译选项,例如指定安装路径(--prefix)、交叉编译工具(--cross-compile-prefix)、目标架构(--march)等,并根据芯片架构来修改config和Makefile文件,以避免芯片架构不...
./configure --prefix=/path/to/install --target-os=linux --arch=arm --cpu=cortex-a55 --enable-cross-compile --cc=arm-linux-gnueabihf-gcc --sysroot=/path/to/sysroot ``` 这里,`--sysroot`参数应指向rk...
-enable-cross-compile --enable-shared --disable-doc --enable-gpl --enable-pic --enable-ffmpeg --enable-ffplay --enable-ffprobe --enable-decoder=h264 --enable-encoder=h264 --enable-libx264 ``` 3. **...
--enable-cross-compile \ --sysroot=$NDK/platforms/android-$API/arch-arm/ \ --prefix=/path/to/output/directory \ --extra-cflags="-I$NDK/sources/cxx-stl/gnu-libstdc++/4.9/include -I$NDK/platforms/...
./configure --target-os=linux --arch=arm --enable-cross-compile --prefix=/usr/local/arm ``` 这里假设你的目标操作系统是Linux,且已设置好交叉编译路径。 4. 编译和安装: ``` make sudo make install ``` 5....
--enable-cross-compile \ --sysroot=$ANDROID_NDK/platforms/android-XX/arch-arm/ \ --prefix=/path/to/output \ --extra-cflags="-I$ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/4.9/include -I$ANDROID_NDK/...
--enable-cross-compile \ --sysroot=/path/to/ndk/platforms/android-$API/arch-arm \ --extra-cflags="-I/path/to/freetype/include" \ --extra-ldflags="-L/path/to/freetype/lib" \ --enable-shared \ --disable...
./configure --target-os=linux --arch=arm --enable-cross-compile --prefix=/your/install/path --extra-cflags=-I/usr/arm-linux-gnueabihf/include --extra-ldflags=-L/usr/arm-linux-gnueabihf/lib ...
-disable-doc --disable-symver --disable-lzma --disable-bzlib --disable-iconv --disable-zlib --disable-lzo --disable-x86asm --disable-runtime-cpudetect --enable-cross-compile --target-os=mingw32 --arch...
--enable-cross-compile \ --target-os=linux \ --arch=arm64 \ --cc=$CROSS_PREFIXgcc \ --cross-prefix=$CROSS_PREFIX \ --nm=$CROSS_PREFIXnm \ --sysroot=$SYSROOT \ --extra-cflags="-Os -fpic $CFLAGS...
例如,如果只需要编译基本的视频处理功能,可以使用`--enable-cross-compile`、`--target-os=mingw32`等选项。 5. **编译与安装**: 使用`make`命令开始编译,完成后使用`make install`将编译好的库和可执行文件安装...
- `--enable-cross-compile` 4. **库依赖**:FFmpeg编译时需要链接一些库,例如SDL、OpenSSL、libiconv等。确保这些库已安装并且配置脚本正确地指定了它们的位置。 5. **JNI接口**:为了在Java层与FFmpeg的C/C++...
这通常通过执行`configure`脚本完成,设置参数如`--target-os=android`,`--arch=arm`(或对应的目标架构),`--enable-cross-compile`等,以适应Android环境。 5. **JNI接口**:在Android应用中调用FFmpeg库,需要...
本话题主要探讨的是如何成功地交叉编译FFmpeg和SDL库,以便在S3c2440这样的ARM架构处理器上运行。FFmpeg是一个强大的开源多媒体处理工具集,包括音视频编码、解码、转换等功能,而SDL(Simple DirectMedia Layer)则...