Thanks Carl, that was a very helpful response. I ended up using the
following compiler flags:
FLAGS="$FLAGS --enable-shared --disable-symver"
FLAGS="$FLAGS --enable-small --optimization-flags=-O2"
FLAGS="$FLAGS --disable-doc"
FLAGS="$FLAGS --disable-ffmpeg"
FLAGS="$FLAGS --disable-ffplay"
FLAGS="$FLAGS --disable-ffprobe"
FLAGS="$FLAGS --disable-ffserver"
FLAGS="$FLAGS --disable-avdevice"
FLAGS="$FLAGS --disable-swresample"
FLAGS="$FLAGS --disable-swscale"
FLAGS="$FLAGS --disable-postproc"
FLAGS="$FLAGS --disable-avfilter"
FLAGS="$FLAGS --disable-everything"
FLAGS="$FLAGS --disable-gpl"
FLAGS="$FLAGS
--enable-demuxer=acc,flac,h263,h264,m4v,matroska,mp3,mpegvideo,ogg,pcm_alaw,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,pcm_mulaw,pcm_s16be,pcm_s16le,pcm_s24be"
FLAGS="$FLAGS
--enable-demuxer=pcm_s24le,pcm_s32be,pcm_s32le,pcm_s8,pcm_u16be,pcm_u16le,pcm_u24be,pcm_u24le,pcm_u32be,pcm_u32le,pcm_u8,rtp,rtsp,sdp,wav"
FLAGS="$FLAGS
--enable-parser=aac,aac_latm,flac,h263,h264,mpeg4video,mpegaudio,mpegvideo,vorbis,vp8"
FLAGS="$FLAGS --enable-decoder=mp3"
FLAGS="$FLAGS --enable-protocol=http,https,mmsh,mmst"
FLAGS="$FLAGS --disable-debug"
Interestingly enough, if I leave off "--enable-decoder=mp3" then I'm
unable to extract metadata from mp3 files. It would appear the decoder
is also required even though I enabled the demuxer and parser. Any
thoughts? I'm still trying to understand how these components work together.
On 10/11/2012 09:42 AM, Carl Eugen Hoyos wrote:
William Seemann <wseemann@...> writes:
FLAGS="$FLAGS --enable-shared --disable-symver"
(You could add --disable-debug although it is not
default for shared anyway iirc.)
FLAGS="$FLAGS --enable-small --optimization-flags=-O2"
There are two possibilities:
Either "-O2" is good (be it for all use cases, or only for
--enable-small), then it should be made default (either in
all cases, or if --enable-small was selected) = please
report that it should be made default (and why), so other
users profit from your experience!
Or it is bad, then don't use it ;-)
FLAGS="$FLAGS --disable-doc"
FLAGS="$FLAGS --disable-ffmpeg"
FLAGS="$FLAGS --disable-ffplay"
FLAGS="$FLAGS --disable-ffprobe"
FLAGS="$FLAGS --disable-ffserver"
FLAGS="$FLAGS --disable-avdevice"
FLAGS="$FLAGS --disable-swresample"
FLAGS="$FLAGS --disable-swscale"
FLAGS="$FLAGS --disable-postproc"
FLAGS="$FLAGS --disable-avfilter"
FLAGS="$FLAGS --disable-everything"
Doesn't --disable-everything make the others
unneeded (at least some of them)?
FLAGS="$FLAGS --disable-gpl"
This is unneded (disable-gpl is the default).
FLAGS="$FLAGS --enable-parsers"
I suspect this enables a very large part of the
software you disabled above. Try to enable
only the parsers you need.
FLAGS="$FLAGS --enable-protocol=http"
FLAGS="$FLAGS --enable-demuxers"
For instance, if I only need to extract metadata
for mp3, ogg, and flac what specifically needs to
be enabled?
Did you try --enable-demuxer=mp3,ogg,flac instead of
--enable-demuxers?
Carl Eugen
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user