Tuesday, 20 August 2013

Compiling and Building a Slim version of avconv/ffmpeg for STM32F4-Discovery - an armv7 thumb 1/2 architecture

Compiling and Building a Slim version of avconv/ffmpeg for
STM32F4-Discovery - an armv7 thumb 1/2 architecture

This is my first attempt at posting for help on Stack Overflow.
My Project: Using an STM32F4-Discovery with the STM32F407VGT6 chip with
the FPv4-SP and a camera/LCD peripheral setup, I need to record video at
QVGA and output into a compressed MPEG-4 format with at least a 25:1
ratio.
I have identified the desired codec library (avconv, unless ffmpeg proves
more useable) and am now in the process of trying to build the compiler
options to give me a light-weight version that will be able to execute on
the chip in ANSI-C and Thumb architecture.
This board has very limited space (192KB SRAM and 1MB of Flash - there is
the possibility of expansion, but it would be preferred to use just what I
have) and currently the "main" executable of either library is over 1MB.
Judging by the output with the different solutions I have tried - it does
not appear many of the compiler options are successfully applying to the
build. So my questions are:
1) Is it even possible to compile either library into the space desired
using only rawvideo decoders, mpeg4 encoders, and the most basic utilities
possible? If not, is there a guesstimate out there of how much would be
required?
2) I've spent many hours scouring the internet, and it doesn't appear that
anyone has attempted this - is there anyone out there who can tell me
otherwise?
I have my configure/build script on hand for anyone who wants to take a
look and see if I have missed something basic. Just ask and I will email
it, I don't want to clutter the thread more than my seemingly verbose
inquisition already has.
I would assume that neither library is likely broken. I have been
attempting this on Ubuntu 12.04 32-bit.
I am a software intern and would be extremely appreciative of any help
available.
One final question, should my solution prove unworkable, is there another
open-source mpeg4 compression library that can easily compile for embedded
ARMv7E-M/Thumb set architecture?

No comments:

Post a Comment