florian aa63ffdfbe [package] ffmpeg: Allow for more configurable FFmpeg build options (#7837, #8465)
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 <antonlacon@gmail.com>

git-svn-id: svn://svn.openwrt.org/openwrt/packages@28323 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-09-30 12:48:57 +00:00

362 lines
7.1 KiB
Plaintext

menu "Configuration"
depends PACKAGE_libffmpeg
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 "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
select FFMPEG_DEMUXER_ffm
select FFMPEG_DEMUXER_rtsp
select FFMPEG_PROTOCOL_rtp
config FFMPEG_LIBDLNA_SUPPORT
bool "Include support for libdlna/ushare"
depends FFMPEG_PATENTED
select FFMPEG_DECODER_ac3
select FFMPEG_DECODER_atrac3
select FFMPEG_DECODER_h264
select FFMPEG_DECODER_jpegls
select FFMPEG_DECODER_mp3
select FFMPEG_DECODER_mpeg1video
select FFMPEG_DECODER_mpeg2video
select FFMPEG_DECODER_mpeg4
select FFMPEG_DECODER_mpegvideo
select FFMPEG_DECODER_wmav1
select FFMPEG_DECODER_wmav2
select FFMPEG_DECODER_png
select FFMPEG_DEMUXER_ac3
select FFMPEG_DEMUXER_h264
select FFMPEG_DEMUXER_mp3
select FFMPEG_DEMUXER_mpegvideo
config FFMPEG_MINIDLNA_SUPPORT
bool "Include support for minidlna"
depends FFMPEG_PATENTED
select FFMPEG_DECODER_aac
select FFMPEG_DECODER_ac3
select FFMPEG_DECODER_flac
select FFMPEG_DECODER_h264
select FFMPEG_DECODER_jpegls
select FFMPEG_DECODER_mp3
select FFMPEG_DECODER_mpeg1video
select FFMPEG_DECODER_mpeg2video
select FFMPEG_DECODER_mpeg4
select FFMPEG_DECODER_mpegvideo
select FFMPEG_DECODER_wmav1
select FFMPEG_DECODER_wmav2
select FFMPEG_DECODER_png
select FFMPEG_DEMUXER_aac
select FFMPEG_DEMUXER_ac3
select FFMPEG_DEMUXER_avi
select FFMPEG_DEMUXER_flac
select FFMPEG_DEMUXER_h264
select FFMPEG_DEMUXER_matroska
select FFMPEG_DEMUXER_mov
select FFMPEG_DEMUXER_mp3
select FFMPEG_DEMUXER_mpegvideo
select FFMPEG_PROTOCOL_file
comment "Encoders ---"
config FFMPEG_ENCODER_ac3
bool "AC3"
depends FFMPEG_PATENTED
select FFMPEG_PARSER_ac3
config FFMPEG_ENCODER_jpegls
bool "JPEG-LS"
config FFMPEG_ENCODER_mpeg1video
bool "MPEG-1 Video"
config FFMPEG_ENCODER_mpeg2video
bool "MPEG-2 Video"
depends FFMPEG_PATENTED
config FFMPEG_ENCODER_mpeg4
bool "MPEG-4"
depends FFMPEG_PATENTED
config FFMPEG_ENCODER_pcm_s16be
bool "PCM signed 16-bit big-endian"
config FFMPEG_ENCODER_pcm_s16le
bool "PCM signed 16-bit little-endian"
config FFMPEG_ENCODER_png
bool "PNG"
select FFMPEG_ENCODER_zlib
config FFMPEG_ENCODER_vorbis
bool "Vorbis"
config FFMPEG_ENCODER_zlib
bool "Zlib"
comment "Decoders ---"
config FFMPEG_DECODER_aac
bool "AAC (Advanced Audio Coding)"
depends FFMPEG_PATENTED
select FFMPEG_PARSER_aac
config FFMPEG_DECODER_ac3
bool "AC3"
depends FFMPEG_PATENTED
select FFMPEG_PARSER_ac3
config FFMPEG_DECODER_atrac3
bool "ATRAC3"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_flac
bool "FLAC"
config FFMPEG_DECODER_gif
bool "GIF"
config FFMPEG_DECODER_h264
bool "H.264"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_jpegls
bool "JPEG-LS"
config FFMPEG_DECODER_mp2
bool "MP2 (MPEG Audio Layer 2)"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_mp3
bool "MP3 (MPEG Audio Layer 2)"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_mpegvideo
bool "MPEG Video"
config FFMPEG_DECODER_mpeg1video
bool "MPEG-1 Video"
config FFMPEG_DECODER_mpeg2video
bool "MPEG-2 Video"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_mpeg4
bool "MPEG-4"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_pcm_s16be
bool "PCM signed 16-bit big-endian"
config FFMPEG_DECODER_pcm_s16le
bool "PCM signed 16-bit little-endian"
config FFMPEG_DECODER_png
bool "PNG"
select FFMPEG_DECODER_zlib
config FFMPEG_DECODER_vorbis
bool "Vorbis"
config FFMPEG_DECODER_wmav1
bool "WMAv1"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_wmav2
bool "WMAv2"
depends FFMPEG_PATENTED
config FFMPEG_DECODER_zlib
bool "Zlib"
comment "Muxers ---"
config FFMPEG_MUXER_ac3
bool "AC3"
depends FFMPEG_PATENTED
config FFMPEG_MUXER_ffm
bool "FFM (ffserver live feed)"
config FFMPEG_MUXER_h264
bool "H.264"
depends FFMPEG_PATENTED
config FFMPEG_MUXER_mp3
bool "MP3 (MPEG Audio Layer 3)"
config FFMPEG_MUXER_mp4
bool "MP4"
config FFMPEG_MUXER_mpeg1video
bool "MPEG-1 Video"
config FFMPEG_MUXER_mpeg2video
bool "MPEG-2 Video"
config FFMPEG_MUXER_mpegts
bool "MPEG-2 (TS)"
config FFMPEG_MUXER_ogg
bool "Ogg"
config FFMPEG_MUXER_rtp
bool "RTP"
comment "Demuxers ---"
config FFMPEG_DEMUXER_aac
bool "AAC"
config FFMPEG_DEMUXER_avi
bool "AVI (Audio Video Interleave)"
config FFMPEG_DEMUXER_ac3
bool "AC3"
config FFMPEG_DEMUXER_flac
bool "FLAC"
config FFMPEG_DEMUXER_ffm
bool "FFM (ffserver live feed)"
config FFMPEG_DEMUXER_h264
bool "H.264"
depends FFMPEG_PATENTED
config FFMPEG_DEMUXER_matroska
bool "Matroska (MKA,MKV)"
select FFMPEG_DECODER_zlib
config FFMPEG_DEMUXER_mov
bool "MOV/MP4/M4A/3GP/3G2/MJ2"
select FFMPEG_DECODER_zlib
config FFMPEG_DEMUXER_mp3
bool "MP3 (MPEG Audio Layer 3)"
select FFMPEG_PARSER_mpegaudio
config FFMPEG_DEMUXER_mpegvideo
bool "MPEG Video"
config FFMPEG_DEMUXER_mpegps
bool "MPEG-2 (PS)"
config FFMPEG_DEMUXER_mpegts
bool "MPEG-2 (TS)"
config FFMPEG_DEMUXER_ogg
bool "Ogg"
config FFMPEG_DEMUXER_rm
bool "RM"
help
RealMedia format demuxer
config FFMPEG_DEMUXER_rtsp
bool "RTSP"
select FFMPEG_DEMUXER_rm
select FFMPEG_DEMUXER_sdp
config FFMPEG_DEMUXER_sdp
bool "SDP"
select FFMPEG_DEMUXER_mpegts
comment "Parsers ---"
config FFMPEG_PARSER_aac
bool "AAC (Advanced Audio Coding)"
depends FFMPEG_PATENTED
config FFMPEG_PARSER_ac3
bool "AC3"
config FFMPEG_PARSER_h264
bool "H.264"
depends FFMPEG_PATENTED
select FFMPEG_DECODER_h264
config FFMPEG_PARSER_mpegaudio
bool "MPEG Audio"
config FFMPEG_PARSER_mpegvideo
bool "MPEG Video"
config FFMPEG_PARSER_mpeg4video
bool "MPEG-4 Video"
comment "Protocols ---"
config FFMPEG_PROTOCOL_file
bool "file:"
config FFMPEG_PROTOCOL_http
bool "http:"
config FFMPEG_PROTOCOL_pipe
bool "pipe:"
config FFMPEG_PROTOCOL_rtp
bool "rtp:"
select FFMPEG_PROTOCOL_udp
config FFMPEG_PROTOCOL_tcp
bool "tcp:"
config FFMPEG_PROTOCOL_udp
bool "udp:"
endmenu