From 844c68520eec3d25fe2d6e29def8123758bacc2e Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Sat, 10 Nov 2012 14:47:52 +0100 Subject: [PATCH 1/3] configure: Add --disable-all command line option This option disables all programs, libraries and other parts of Libav that get built as part of the compilation process. --- configure | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configure b/configure index 7805e46655..153e16833a 100755 --- a/configure +++ b/configure @@ -100,6 +100,7 @@ Configuration options: --enable-runtime-cpudetect detect cpu capabilities at runtime (bigger binary) --enable-gray enable full grayscale support (slower color) --disable-swscale-alpha disable alpha channel support in swscale + --disable-all disable building components, libraries and programs Program options: --disable-programs do not build command line programs @@ -1990,6 +1991,10 @@ for opt do --disable-everything) map 'eval unset \${$(toupper ${v%s})_LIST}' $COMPONENT_LIST ;; + --disable-all) + map 'eval unset \${$(toupper ${v%s})_LIST}' $COMPONENT_LIST + disable $LIBRARY_LIST $PROGRAM_LIST doc + ;; --enable-random|--disable-random) action=${opt%%-random} do_random ${action#--} $COMPONENT_LIST From 5ad2f0bfb23c757bcd02875c6664ff383630790d Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Thu, 29 Nov 2012 10:34:54 +0100 Subject: [PATCH 2/3] build: Add rtpenc_chain extra config option Also fixes linking in various configs with only individual parts enabled because the RTP muxer chaining code depends on the general RTP code, which is now accounted for. --- configure | 6 ++++-- libavformat/Makefile | 8 ++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/configure b/configure index 153e16833a..0ede1d53c3 100755 --- a/configure +++ b/configure @@ -1328,6 +1328,7 @@ CONFIG_EXTRA=" nettle rangecoder rtpdec + rtpenc_chain sinewin videodsp vp3dsp @@ -1674,6 +1675,7 @@ ismv_muxer_select="mov_muxer" matroska_audio_muxer_select="matroska_muxer" matroska_demuxer_suggest="bzlib lzo zlib" mov_demuxer_suggest="zlib" +mov_muxer_select="rtpenc_chain" mp3_demuxer_select="mpegaudio_parser" mp4_muxer_select="mov_muxer" mpegts_muxer_select="adts_muxer latm_muxer mpegvideo" @@ -1685,9 +1687,9 @@ rtp_demuxer_select="sdp_demuxer" rtp_muxer_select="mpegvideo" rtpdec_select="asf_demuxer rm_demuxer rtp_protocol mpegts_demuxer mov_demuxer" rtsp_demuxer_select="http_protocol rtpdec" -rtsp_muxer_select="rtp_muxer http_protocol rtp_protocol" +rtsp_muxer_select="rtp_muxer http_protocol rtp_protocol rtpenc_chain" sap_demuxer_select="sdp_demuxer" -sap_muxer_select="rtp_muxer rtp_protocol" +sap_muxer_select="rtp_muxer rtp_protocol rtpenc_chain" sdp_demuxer_select="rtpdec" smoothstreaming_muxer_select="ismv_muxer" spdif_muxer_select="aac_parser" diff --git a/libavformat/Makefile b/libavformat/Makefile index fa9366d08d..14e3e1ed68 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -41,6 +41,7 @@ OBJS-$(CONFIG_RTPDEC) += rdt.o \ rtpdec_svq3.o \ rtpdec_vp8.o \ rtpdec_xiph.o +OBJS-$(CONFIG_RTPENC_CHAIN) += rtpenc_chain.o rtp.o # muxers/demuxers OBJS-$(CONFIG_A64_MUXER) += a64.o rawenc.o @@ -167,8 +168,7 @@ OBJS-$(CONFIG_MMF_DEMUXER) += mmf.o pcm.o OBJS-$(CONFIG_MMF_MUXER) += mmf.o OBJS-$(CONFIG_MOV_DEMUXER) += mov.o isom.o mov_chan.o OBJS-$(CONFIG_MOV_MUXER) += movenc.o isom.o avc.o \ - movenchint.o rtpenc_chain.o \ - mov_chan.o + movenchint.o mov_chan.o OBJS-$(CONFIG_MP2_MUXER) += mp3enc.o rawenc.o id3v2enc.o OBJS-$(CONFIG_MP3_DEMUXER) += mp3dec.o OBJS-$(CONFIG_MP3_MUXER) += mp3enc.o rawenc.o id3v2enc.o @@ -282,9 +282,9 @@ OBJS-$(CONFIG_RTP_MUXER) += rtp.o \ OBJS-$(CONFIG_RTSP_DEMUXER) += rtsp.o rtspdec.o httpauth.o \ urldecode.o OBJS-$(CONFIG_RTSP_MUXER) += rtsp.o rtspenc.o httpauth.o \ - rtpenc_chain.o urldecode.o + urldecode.o OBJS-$(CONFIG_SAP_DEMUXER) += sapdec.o -OBJS-$(CONFIG_SAP_MUXER) += sapenc.o rtpenc_chain.o +OBJS-$(CONFIG_SAP_MUXER) += sapenc.o OBJS-$(CONFIG_SDP_DEMUXER) += rtsp.o OBJS-$(CONFIG_SEGAFILM_DEMUXER) += segafilm.o OBJS-$(CONFIG_SEGMENT_MUXER) += segment.o From 69583bd3b1eba471366141c945030c163e073e02 Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Sun, 23 Dec 2012 19:06:35 +0100 Subject: [PATCH 3/3] avfilter: Refactor unconditional filter registration --- libavfilter/allfilters.c | 36 ++++++++++++------------------------ 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c index dd05603056..5ff8ceaccc 100644 --- a/libavfilter/allfilters.c +++ b/libavfilter/allfilters.c @@ -27,6 +27,12 @@ extern AVFilter avfilter_##y##_##x ; \ if(CONFIG_##X##_FILTER ) avfilter_register(&avfilter_##y##_##x ); } +#define REGISTER_FILTER_UNCONDITIONAL(x) \ + { \ + extern AVFilter avfilter_##x; \ + avfilter_register(&avfilter_##x); \ + } + void avfilter_register_all(void) { static int initialized; @@ -101,28 +107,10 @@ void avfilter_register_all(void) /* those filters are part of public or internal API => registered * unconditionally */ - { - extern AVFilter avfilter_vsrc_buffer; - avfilter_register(&avfilter_vsrc_buffer); - } - { - extern AVFilter avfilter_asrc_abuffer; - avfilter_register(&avfilter_asrc_abuffer); - } - { - extern AVFilter avfilter_vsink_buffer; - avfilter_register(&avfilter_vsink_buffer); - } - { - extern AVFilter avfilter_asink_abuffer; - avfilter_register(&avfilter_asink_abuffer); - } - { - extern AVFilter avfilter_af_afifo; - avfilter_register(&avfilter_af_afifo); - } - { - extern AVFilter avfilter_vf_fifo; - avfilter_register(&avfilter_vf_fifo); - } + REGISTER_FILTER_UNCONDITIONAL(asrc_abuffer); + REGISTER_FILTER_UNCONDITIONAL(vsrc_buffer); + REGISTER_FILTER_UNCONDITIONAL(asink_abuffer); + REGISTER_FILTER_UNCONDITIONAL(vsink_buffer); + REGISTER_FILTER_UNCONDITIONAL(af_afifo); + REGISTER_FILTER_UNCONDITIONAL(vf_fifo); }