欢迎使用CSDN-markdown编辑器
来源:互联网 发布:dnf深度优化启动加速 编辑:程序博客网 时间:2024/05/21 11:20
Android 网络摄像头开发笔记(1)
ffmpeg 编译篇
编译环境
System:ubuntu14.04
NDK: android-ndk-r8b-linux-x86.tar.bz2
SDK: android-sdk_r23.0.2-linux.tgz
FFMPEG: ffmpeg-2.4.3
ffmpeg 配置文件(config_make.sh)
#!/bin/bashNDK=/home/username/work/tools/android-ndk-r8bPLATFORM=$NDK/platforms/android-8/arch-arm/PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86LOCAL_ARM_NEON=trueCPU=armv7-aPREFIX=./android/$CPU./configure --target-os=linux \ --prefix=$PREFIX \ --enable-cross-compile \ --arch=arm \ --enable-nonfree \ --enable-asm \ --cpu=cortex-a8 \ --enable-neon \ --cc=$PREBUILT/bin/arm-linux-androideabi-gcc \ --cross-prefix=$PREBUILT/bin/arm-linux-androideabi- \ --nm=$PREBUILT/bin/arm-linux-androideabi-nm \ --sysroot=$PLATFORM \ --disable-ffmpeg \ --disable-ffplay \ --disable-ffprobe \ --disable-ffserver \ --disable-shared \ --enable-static \ --enable-swscale \ --enable-avutil \ --enable-swresample \ --enable-avformat \ --enable-avcodec \ --enable-avfilter \ --enable-avdevice \ --enable-pthreads \ --disable-yasm \ --enable-zlib \ --enable-pic \ --enable-small \ --enable-gpl \ --enable-decoder=mjpeg --enable-demuxer=mjpeg --enable-parser=mjpeg \ --enable-demuxer=image2 --enable-muxer=mp4make cleanmake -j4 install$PREBUILT/bin/arm-linux-androideabi-ld -rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -soname libffmpeg.so -shared -nostdlib -z noexecstack -Bsymbolic --whole-archive --no-undefined -o $PREFIX/libffmpeg.so libavformat/libavformat.a libavcodec/libavcodec.a libswscale/libswscale.a libpostproc/libpostproc.a libavutil/libavutil.a libavfilter/libavfilter.a libavdevice/libavdevice.a libswresample/libswresample.a -lc -lm -lz -ldl -llog --warn-once --dynamic-linker=/system/bin/linker $PREBUILT/lib/gcc/arm-linux-androideabi/4.4.3/libgcc.a
把这个文件放到ffmpeg根目录下,直接运行后可生成android的文件夹,里面有.so 的动态文件,因为我没有–disable-everything,所以很多选项都是默认开启的,.so的库文件有40多M,链接到Android的工程里面后就只有6m左右了。如果觉得过大,还要裁剪,就需要–disable-everything ,然后把需要的enable ,为了调试方便,暂且不去关吧。
编译问题
- NDK版本问题 :在ubuntu10.04 _x64上我用NDK_08b版本编译成了并运行也是好的,但是在14.04_x64上,我用ndk_10d_x86_64的版本编译ffmpeg 2.5.3成功后,播放视频的时候报atof 未定义,这个问题纠结了我很久,因为项目紧张,最后也没有解决,最后切回ffmpeg2.4.3,用ndk_08b 编译运行OK。各位有遇到这个问题的说下解决办法吧。
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- NLP 迷思之四:词义消歧(WSD)是NLP应用的瓶颈
- 第一次接触Weblogic遇到的问题
- C++函数之递归调用
- 无模式数据库NoSQL讲解
- iframe中的各种跳转方法
- 欢迎使用CSDN-markdown编辑器
- busybox编译问题
- qtp遇到的问题及解决
- canvas 组合 类型 简单 描述
- google hack
- Ubuntu12.04 root用户登录设置
- 解决Vim使用Winmanager插件时自动启动与自动退出方法
- 马虎的算式
- rdesktop连接远程桌面是显示壁纸