This patch allows broad control over FFmpeg's libav* build configuration and
fixes a typo in ffprobe's install section.
The patch resolves #7837 as the choice of building a full libav* is available.
This should also resolve #8465 as input devices such as cameras can be enabled.
The files created by a full libav* build will be large (several megabytes) and
not recommended for end users. Its use could help debugging other issues to
learn whether the problem is the openwrt build configuration or another cause.
Signed-off-by: Ian Leonard antonla...@gmail.com
---
Index: packages/multimedia/ffmpeg/Config.in
===
--- packages/multimedia/ffmpeg/Config.in(revision 28090)
+++ packages/multimedia/ffmpeg/Config.in(working copy)
@@ -1,18 +1,60 @@
menu Configuration
depends PACKAGE_libffmpeg
-config FFMPEG_ENCODE
- bool Big Toggle for FFmpeg's encoder/muxer support
+comment Libav* build options ---
+
+config FFMPEG_LIBAV_FULL
+ bool Toggle for full libav* support
+ select FFMPEG_BSFS
+ select FFMPEG_DECODE
+ select FFMPEG_ENCODE
+ select FFMPEG_FILTERS
+ select FFMPEG_INDEVS
+ select FFMPEG_OUTDEVS
+ select FFMPEG_HWACCELS
+ select FFMPEG_PARSERS
+ select FFMPEG_PROTOCOLS
depends FFMPEG_PATENTED
+ help
+ This options selects each of the FFmpeg's toggles to create a full
build
+ of the libav* libraries. Note: This is a large binary and not suitable
+ for most users.
+config FFMPEG_BSFS
+ bool Toggle for FFmpeg's bitstream filter support
+
config FFMPEG_DECODE
- bool Big Toggle for FFmpeg's decoder/demuxer support
+ bool Toggle for FFmpeg's decoder/demuxer support
depends FFMPEG_PATENTED
+config FFMPEG_ENCODE
+ bool Toggle for FFmpeg's encoder/muxer support
+ depends FFMPEG_PATENTED
+
+config FFMPEG_FILTERS
+ bool Toggle for FFmpeg's video processing filter support
+
+config FFMPEG_INDEVS
+ bool Toggle for FFmpeg's input device (camera, etc) support
+
+config FFMPEG_OUTDEVS
+ bool Toggle for FFmpeg's output device support
+
+config FFMPEG_HWACCELS
+ bool Toggle for FFmpeg's video hardware acceleration support
+
+config FFMPEG_PARSERS
+ bool Toggle for FFmpeg's stream parsing support
+
+config FFMPEG_PROTOCOLS
+ bool Toggle for FFmpeg's protocol support
+
config FFMPEG_PATENTED
bool Include patented codecs and technologies
default BUILD_PATENTED
+comment Package Profiles ---
+
config FFMPEG_FFSERVER_SUPPORT
bool Include support for ffserver (FFmpeg streaming server)
select FFMPEG_MUXER_ffm
Index: packages/multimedia/ffmpeg/Makefile
===
--- packages/multimedia/ffmpeg/Makefile (revision 28090)
+++ packages/multimedia/ffmpeg/Makefile (working copy)
@@ -9,7 +9,7 @@
PKG_NAME:=ffmpeg
PKG_VERSION:=0.8.2
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://ffmpeg.org/releases/
@@ -239,12 +239,13 @@
--enable-postproc \
--enable-swscale \
\
- --disable-bsfs \
- --disable-devices \
- --disable-filters \
- --disable-hwaccels \
- --disable-parsers \
- --disable-protocols \
+ $(if $(CONFIG_FFMPEG_BSFS),,--disable-bsfs) \
+ $(if $(CONFIG_FFMPEG_OUTDEVS),,--disable-outdevs) \
+ $(if $(CONFIG_FFMPEG_INDEVS),,--disable-indevs) \
+ $(if $(CONFIG_FFMPEG_FILTERS),,--disable-filters) \
+ $(if $(CONFIG_FFMPEG_HWACCELS),,--disable-hwaccels) \
+ $(if $(CONFIG_FFMPEG_PARSERS),,--disable-parsers) \
+ $(if $(CONFIG_FFMPEG_PROTOCOLS),,--disable-protocols) \
$(if $(CONFIG_FFMPEG_ENCODE),,--disable-encoders
--disable-muxers) \
$(if $(CONFIG_FFMPEG_DECODE),,--disable-decoders
--disable-demuxers) \
$(FFMPEG_CONFIGURE_ENCODERS) \
@@ -288,7 +289,7 @@
endef
define Package/ffprobe/install
- $(INSTALL_DIR_ $(1)/usr/bin
+ $(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/ffprobe $(1)/usr/bin/
endef
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel