Commit 5666fd73 authored by Gwenole Beauchesne's avatar Gwenole Beauchesne

Add hwaccel configury. This generates CONFIG_<CODEC>_<HWACCEL>_HWACCEL

from registered HW accelerated codecs with REGISTER_HWACCEL().

Originally committed as revision 18311 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 82a6ef20
...@@ -109,6 +109,9 @@ show_help(){ ...@@ -109,6 +109,9 @@ show_help(){
echo " --disable-decoder=NAME disable decoder NAME" echo " --disable-decoder=NAME disable decoder NAME"
echo " --enable-decoder=NAME enable decoder NAME" echo " --enable-decoder=NAME enable decoder NAME"
echo " --disable-decoders disable all decoders" echo " --disable-decoders disable all decoders"
echo " --disable-hwaccel=NAME disable hwaccel NAME"
echo " --enable-hwaccel=NAME enable hwaccel NAME"
echo " --disable-hwaccels disable all hwaccels"
echo " --disable-muxer=NAME disable muxer NAME" echo " --disable-muxer=NAME disable muxer NAME"
echo " --enable-muxer=NAME enable muxer NAME" echo " --enable-muxer=NAME enable muxer NAME"
echo " --disable-muxers disable all muxers" echo " --disable-muxers disable all muxers"
...@@ -132,6 +135,7 @@ show_help(){ ...@@ -132,6 +135,7 @@ show_help(){
echo " --disable-filters disable all filters" echo " --disable-filters disable all filters"
echo " --list-decoders show all available decoders" echo " --list-decoders show all available decoders"
echo " --list-encoders show all available encoders" echo " --list-encoders show all available encoders"
echo " --list-hwaccels show all available hardware accelerators"
echo " --list-muxers show all available muxers" echo " --list-muxers show all available muxers"
echo " --list-demuxers show all available demuxers" echo " --list-demuxers show all available demuxers"
echo " --list-parsers show all available parsers" echo " --list-parsers show all available parsers"
...@@ -749,6 +753,7 @@ COMPONENT_LIST=" ...@@ -749,6 +753,7 @@ COMPONENT_LIST="
demuxers demuxers
encoders encoders
filters filters
hwaccels
indevs indevs
muxers muxers
outdevs outdevs
...@@ -989,7 +994,7 @@ sse_deps="mmx" ...@@ -989,7 +994,7 @@ sse_deps="mmx"
ssse3_deps="sse" ssse3_deps="sse"
vis_deps="sparc" vis_deps="sparc"
# decoders / encoders # decoders / encoders / hardware accelerators
aac_decoder_select="fft mdct" aac_decoder_select="fft mdct"
ac3_decoder_deps="gpl" ac3_decoder_deps="gpl"
ac3_decoder_select="fft mdct" ac3_decoder_select="fft mdct"
...@@ -1237,6 +1242,7 @@ find_things(){ ...@@ -1237,6 +1242,7 @@ find_things(){
ENCODER_LIST=$(find_things encoder ENC libavcodec/allcodecs.c) ENCODER_LIST=$(find_things encoder ENC libavcodec/allcodecs.c)
DECODER_LIST=$(find_things decoder DEC libavcodec/allcodecs.c) DECODER_LIST=$(find_things decoder DEC libavcodec/allcodecs.c)
HWACCEL_LIST=$(find_things hwaccel HWACCEL libavcodec/allcodecs.c)
PARSER_LIST=$(find_things parser PARSER libavcodec/allcodecs.c) PARSER_LIST=$(find_things parser PARSER libavcodec/allcodecs.c)
BSF_LIST=$(find_things bsf BSF libavcodec/allcodecs.c) BSF_LIST=$(find_things bsf BSF libavcodec/allcodecs.c)
MUXER_LIST=$(find_things muxer _MUX libavformat/allformats.c) MUXER_LIST=$(find_things muxer _MUX libavformat/allformats.c)
...@@ -1249,6 +1255,7 @@ FILTER_LIST=$(find_things filter FILTER libavfilter/allfilters.c) ...@@ -1249,6 +1255,7 @@ FILTER_LIST=$(find_things filter FILTER libavfilter/allfilters.c)
enable $ARCH_EXT_LIST \ enable $ARCH_EXT_LIST \
$DECODER_LIST \ $DECODER_LIST \
$ENCODER_LIST \ $ENCODER_LIST \
$HWACCEL_LIST \
$PARSER_LIST \ $PARSER_LIST \
$BSF_LIST \ $BSF_LIST \
$DEMUXER_LIST \ $DEMUXER_LIST \
...@@ -1287,7 +1294,7 @@ for opt do ...@@ -1287,7 +1294,7 @@ for opt do
--enable-*=*|--disable-*=*) --enable-*=*|--disable-*=*)
eval $(echo "$opt" | sed 's/=/-/;s/--/action=/;s/-/ thing=/;s/-/ name=/') eval $(echo "$opt" | sed 's/=/-/;s/--/action=/;s/-/ thing=/;s/-/ name=/')
case "$thing" in case "$thing" in
encoder|decoder|muxer|demuxer|parser|bsf|protocol|filter) $action ${optval}_${thing} ;; encoder|decoder|hwaccel|muxer|demuxer|parser|bsf|protocol|filter) $action ${optval}_${thing} ;;
*) die_unknown "$opt" ;; *) die_unknown "$opt" ;;
esac esac
;; ;;
...@@ -2226,6 +2233,7 @@ check_asm asmalign_pot '".align 3"' ...@@ -2226,6 +2233,7 @@ check_asm asmalign_pot '".align 3"'
enabled_any $DECODER_LIST && enable decoders enabled_any $DECODER_LIST && enable decoders
enabled_any $ENCODER_LIST && enable encoders enabled_any $ENCODER_LIST && enable encoders
enabled_any $HWACCEL_LIST && enable hwaccels
enabled_any $BSF_LIST && enable bsfs enabled_any $BSF_LIST && enable bsfs
enabled_any $DEMUXER_LIST && enable demuxers enabled_any $DEMUXER_LIST && enable demuxers
enabled_any $MUXER_LIST && enable muxers enabled_any $MUXER_LIST && enable muxers
...@@ -2241,6 +2249,7 @@ check_deps $CONFIG_LIST \ ...@@ -2241,6 +2249,7 @@ check_deps $CONFIG_LIST \
$HAVE_LIST \ $HAVE_LIST \
$DECODER_LIST \ $DECODER_LIST \
$ENCODER_LIST \ $ENCODER_LIST \
$HWACCEL_LIST \
$PARSER_LIST \ $PARSER_LIST \
$BSF_LIST \ $BSF_LIST \
$DEMUXER_LIST \ $DEMUXER_LIST \
...@@ -2337,7 +2346,7 @@ echo "zlib enabled ${zlib-no}" ...@@ -2337,7 +2346,7 @@ echo "zlib enabled ${zlib-no}"
echo "bzlib enabled ${bzlib-no}" echo "bzlib enabled ${bzlib-no}"
echo echo
for type in decoder encoder parser demuxer muxer protocol filter bsf indev outdev; do for type in decoder encoder hwaccel parser demuxer muxer protocol filter bsf indev outdev; do
echo "Enabled ${type}s:" echo "Enabled ${type}s:"
eval list=\$$(toupper $type)_LIST eval list=\$$(toupper $type)_LIST
for part in $list; do for part in $list; do
...@@ -2464,6 +2473,7 @@ print_config CONFIG_ $TMPH config.mak $CONFIG_LIST \ ...@@ -2464,6 +2473,7 @@ print_config CONFIG_ $TMPH config.mak $CONFIG_LIST \
$CONFIG_EXTRA \ $CONFIG_EXTRA \
$DECODER_LIST \ $DECODER_LIST \
$ENCODER_LIST \ $ENCODER_LIST \
$HWACCEL_LIST \
$PARSER_LIST \ $PARSER_LIST \
$BSF_LIST \ $BSF_LIST \
$DEMUXER_LIST \ $DEMUXER_LIST \
......
...@@ -31,7 +31,7 @@ OBJS-$(CONFIG_GOLOMB) += golomb.o ...@@ -31,7 +31,7 @@ OBJS-$(CONFIG_GOLOMB) += golomb.o
OBJS-$(CONFIG_MDCT) += mdct.o OBJS-$(CONFIG_MDCT) += mdct.o
OBJS-$(CONFIG_RDFT) += rdft.o OBJS-$(CONFIG_RDFT) += rdft.o
# decoders/encoders # decoders/encoders/hardware accelerators
OBJS-$(CONFIG_AAC_DECODER) += aac.o aactab.o mpeg4audio.o aac_parser.o aac_ac3_parser.o OBJS-$(CONFIG_AAC_DECODER) += aac.o aactab.o mpeg4audio.o aac_parser.o aac_ac3_parser.o
OBJS-$(CONFIG_AASC_DECODER) += aasc.o msrledec.o OBJS-$(CONFIG_AASC_DECODER) += aasc.o msrledec.o
OBJS-$(CONFIG_AC3_DECODER) += eac3dec.o ac3dec.o ac3tab.o ac3dec_data.o ac3.o OBJS-$(CONFIG_AC3_DECODER) += eac3dec.o ac3dec.o ac3tab.o ac3dec_data.o ac3.o
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment