@hai046
2016-10-13T09:29:46.000000Z
字数 4147
阅读 1397
ffmpeg
android
静态库类型 | 大小 | 说明 |
---|---|---|
armeabi-v7a-neon | 4.6M | - |
armeabi-v7a | 4.7M | - |
x86 | 5.3M | - |
测试文件 android录制
320x240;
duration:9-10s;
rotate:90;
filesize:500k-600k
bitrate:512kb[动态]
执行命令
ffmpeg -i qq.mp4 -vf "movie=icon.png [watermark]; [in][watermark] overlay=(W-w)/2:(H-h)/2 [out]" -c:v libx264 qq.mp4
手机 | cpu型号 | 静态库类型 | 时间 | 说明 |
---|---|---|---|---|
xiaomi note pro | armeabi-v8a-neon | armeabi-v7a | 12-14s | 第一次18s左右 |
xiaomi note pro | armeabi-v8a-neon | armeabi-v7a-neon | 7-9s | 第一次10s左右 |
Vivo X5L note pro | armeabi-v7a-neon | armeabi-v7a-neon | 7-9s | 第一次9s左右 |
Vivo X5L note pro | armeabi-v7a-neon | armeabi-v7a | 14s | 第一次15s左右 |
我的mac官方模拟器nexus5x | x64 | x64 | 9-10s | 9-10s |
应该需要区分neon的cpu型号
./configure \
…………
--disable-everything \#关闭所有模块,然后一个个的开 否则默认下静态库18M
--enable-runtime-cpudetect \
--enable-pic \
--enable-libx264 \ #使用x264视频编码器 libx264是h264编码器的开源实现
--disable-libfribidi \
--disable-libmp3lame \
--enable-pthreads \
--disable-ffserver \
--disable-version3 \
--enable-hardcoded-tables \
--disable-ffplay \
--disable-ffprobe \
--enable-gpl \
--enable-yasm \
--disable-doc \
--disable-shared \
--enable-static \
--disable-ffserver \
--disable-avdevice \
--disable-filters \
--enable-filter=movie \#水印需要用
--enable-filter=overlay \#水印需要用
--enable-filter=scale \#overlay依赖
--enable-filter=transpose \#这个是个坑,andorid录制的视频是旋转90度的,需要开通旋转配置 竟然不是 rotate 😳
--enable-avfilter \
--disable-devices \
--enable-network \
--enable-encoder=aac \
--enable-encoder=libx264 \
--enable-encoder=png \
--enable-decoder=h264 \
--enable-decoder=aac \
--enable-decoder=png \
--enable-protocol=file \
--enable-parser=h264 \
--enable-parser=aac \
--enable-parser=aac_latm \
--enable-parser=png \
--enable-muxer=mp4 \
--enable-muxer=h264 \
--enable-muxer=image2 \
--enable-muxer=a64 \
--enable-muxer=ac3 \
--enable-muxer=apng \
--enable-muxer=bit \
--enable-muxer=data \
--enable-muxer=ffm \
--enable-muxer=ffmetadata \
--enable-muxer=framecrc \
--enable-muxer=framemd5 \
--enable-muxer=latm \
--enable-muxer=flac \
--enable-muxer=m4v \
--enable-muxer=matroska \
--enable-muxer=matroska_audio \
--enable-muxer=mmf \
--enable-muxer=segment \
--enable-muxer=uncodedframecrc \
--enable-muxer=wav \
--enable-muxer=yuv4mpegpipe \
--enable-muxer=image2pipe \
--enable-muxer=ipod \
--enable-muxer=psp \
--enable-demuxer=bit \
--enable-demuxer=segafilm \
--enable-demuxer=image2pipe \
--enable-demuxer=image_png_pipe \
--enable-demuxer=image_qdraw_pipe \
--enable-demuxer=mpegvideo \
--enable-demuxer=rawvideo \
--enable-demuxer=sdp \
--enable-demuxer=image2 \
--enable-demuxer=h264 \
--enable-demuxer=aac \
--enable-demuxer=yuv4mpegpipe \
--enable-demuxer=mpegvideo \
--enable-demuxer=data \
--enable-demuxer=ffm \
--enable-demuxer=flic \
--enable-demuxer=fourxm \
--enable-demuxer=frm \
--enable-demuxer=flac \
--enable-bsf=hevc_mp4toannexb \
--enable-bsf=h264_mp4toannexb \
--enable-indev=fbdev \
--disable-debug \
--pkg-config="${2}/ffmpeg-pkg-config" \
--prefix="${2}/build/${1}" \
--extra-cflags="-I${TOOLCHAIN_PREFIX}/include $CFLAGS" \
--extra-ldflags="-L${TOOLCHAIN_PREFIX}/lib $LDFLAGS" \
--extra-libs="-lpng -lexpat -lm" \
--extra-cxxflags="$CXX_FLAGS"
install prefix /root/ffmpeg-android/build/armeabi-v7a-neon
source path .
C compiler /root/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi-gcc
C library bionic
host C compiler gcc
host C library glibc
ARCH arm (cortex-a8)
big-endian no
runtime cpu detection yes
ARMv5TE enabled yes
ARMv6 enabled yes
ARMv6T2 enabled yes
VFP enabled yes
NEON enabled yes
THUMB enabled no
debug symbols no
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support yes
new filter support yes
network support yes
threading support pthreads
safe bitstream reader yes
SDL support no
opencl enabled no
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled no
makeinfo supports HTML no
Enabled programs:
ffmpeg
External libraries:
libx264 zlib
Enabled decoders:
aac h264 png
Enabled encoders:
aac libx264 png
Enabled hwaccels:
Enabled parsers:
aac aac_latm flac h264 png
Enabled demuxers:
aac ffm frm image_png_pipe mpegvideo sdp
asf flac h264 image_qdraw_pipe rawvideo segafilm
bit flic image2 mov rm yuv4mpegpipe
data fourxm image2pipe mpegts
Enabled muxers:
a64 ffm h264 latm mmf segment
ac3 ffmetadata image2 m4v mov uncodedframecrc
apng flac image2pipe matroska mp4 wav
bit framecrc ipod matroska_audio psp yuv4mpegpipe
data framemd5
Enabled protocols:
file rtp udp
Enabled filters:
aformat atrim movie overlay setpts trim
anull format null scale transpose
Enabled bsfs:
h264_mp4toannexb hevc_mp4toannexb
Enabled indevs:
Enabled outdevs:
+