[FFmpeg-user] FFmpeg for Android
Срђан Обућина
obucinac at gmail.com
Wed Nov 21 18:47:21 CET 2012
FFmpeg for Android is updated
http://sourceforge.net/projects/ffmpeg4android/
Features:
- On-the-fly library configuration. FFmpeg will be configured on-the-fly,
during Android building process, in accordance to the selected product,
cpu architecture, cpu architecture variant, and fine tuning cpu
parameters.
- Configuration driven building. No need to manually add filenames to the
makefiles, or hack through the library in order to get the build you
want.
- Per product configuration. Every TARGET_PRODUCT will have its own
configuration.
- Builds all libraries and tools, except ffplay.
- Builds both shared and static libraries.
- Builds latest releases form 0.7, 0.8, 0.9, 0.10, 0.11, 1.0 and HEAD
branches.
- Supports parallel building from the same source for the different
products.
Tested on:
- FFmpeg releases: 0.7.13, 0.8.12, 0.9.2, 0.10.6, 0.11.2, 1.0, HEAD-4bf3bc6
- Build host OS: Ubuntu 10.04, Ubuntu 11.04
- Android target OS: Honeycomb, ICS, Android Master branch
- Architecture: arm, mips, x86
- SDK + NDK release: platform-11 + NDK-r6, platform-14 + NDK-r8
- Product: full-eng, full_mips-eng, full_x86-eng, and some proprietary
bleeding edge products
Known issues:
- Branches 0.10, 0.9, 0.8, 0.7 cant be built for ARM architecture because
of the changes in building Android for ARM. The following flag was added
-D_FORTIFY_SOURCE=1, which enables additional constraints in bionic.
These constraints are triggered by probably a bug in
libavfilter/vf_pixdesctest.c, where memcpy is using same source and
destination address.
memcpy(outpicref->data[1], outpicref->data[1], 256*4);
In later versions, this was changed to
memcpy(outpicref->data[1], picref->data[1], 256*4);
so 0.11 and higher branches are building fine.
As this is ffmpeg bug, it is out of my scope to fix it.
To build branches 0.10, 0.9, 0.8, 0.7 for ARM, fix this bug, or downgrade
your Android version.
More information about the ffmpeg-user
mailing list