From 6b5bc006e42e6f907a7d1fd42d7da0690dd0fe4d Mon Sep 17 00:00:00 2001 From: shamama Date: Tue, 31 Oct 2023 14:09:48 +0200 Subject: [PATCH 1/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 8 ++++---- transcoder/utils/utils.c | 6 +++--- transcoder/utils/utils.h | 1 + 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index 80f9abe3..7907b373 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -1,7 +1,7 @@ #docker run --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -it -v ~/dev/live/transcoder:/tmp -p 6543:6543 kaltura/live-transcoder #gdb --args ./transcoder -f /tmp/config2.json -ARG CUDA_VERSION="11.1.1-devel" +ARG CUDA_VERSION="12.2.0-devel-ubuntu20.04" ARG PYTHON_VERSION=3.8 @@ -12,8 +12,8 @@ WORKDIR /build RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub && apt-get update && apt-get install -y sudo git build-essential gdbserver vim yasm cmake libtool autogen dh-autoreconf libbz2-dev libc6 libc6-dev unzip wget libnuma1 libnuma-dev frei0r-plugins-dev libgnutls28-dev libass-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev librtmp-dev libsoxr-dev libspeex-dev libtheora-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev gdb -ARG FFMPEG_VERSION="n4.4" -ARG NVIDIA_CODEC_HEADERS_VERSION="n9.0.18.4" +ARG FFMPEG_VERSION="n5.0" +ARG NVIDIA_CODEC_HEADERS_VERSION="n12.0.16.0" ARG PYTHON_VERSION RUN git clone --branch ${NVIDIA_CODEC_HEADERS_VERSION} https://github.com/FFmpeg/nv-codec-headers.git @@ -25,7 +25,7 @@ RUN git clone --branch ${FFMPEG_VERSION} https://github.com/ffmpeg/ffmpeg.git RUN cd ffmpeg && \ - ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ + ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ make -j 8 RUN apt-get install valgrind -y diff --git a/transcoder/utils/utils.c b/transcoder/utils/utils.c index 9d970928..06282771 100644 --- a/transcoder/utils/utils.c +++ b/transcoder/utils/utils.c @@ -266,7 +266,7 @@ void log_frame_side_data(const char* category,const AVFrame *pFrame) int add_packet_frame_id_and_pts(AVPacket *packet,int64_t frame_id,pts_t pts) { AVDictionary * frameDict = NULL; - int frameDictSize = 0; + size_t frameDictSize = 0; char buf[sizeof("9223372036854775807")]; uint8_t *frameDictData = NULL; sprintf(buf,"%lld",frame_id); @@ -287,7 +287,7 @@ int get_packet_frame_id(const AVPacket *packet,int64_t *frame_id_ptr) { const char *frame_str; AVDictionary * frameDict = NULL; - int frameDictSize = 0; + size_t frameDictSize = 0; uint8_t *frameDictData = av_packet_get_side_data(packet, AV_PKT_DATA_STRINGS_METADATA, &frameDictSize); *frame_id_ptr = AV_NOPTS_VALUE; if (!frameDictData) @@ -305,7 +305,7 @@ int get_packet_original_pts(const AVPacket *packet,pts_t *pts_ptr) { const char *pts_str; AVDictionary * frameDict = NULL; - int frameDictSize = 0; + size_t frameDictSize = 0; uint8_t *frameDictData = av_packet_get_side_data(packet, AV_PKT_DATA_STRINGS_METADATA, &frameDictSize); *pts_ptr = AV_NOPTS_VALUE; if (!frameDictData) diff --git a/transcoder/utils/utils.h b/transcoder/utils/utils.h index 6bb201e7..5a6ff9b0 100644 --- a/transcoder/utils/utils.h +++ b/transcoder/utils/utils.h @@ -13,6 +13,7 @@ #include #include #include +#include size_t load_file_to_memory(const char *filename, char **result); From fe74646deadd5505e541e45fed7f1ce21c1a8eac Mon Sep 17 00:00:00 2001 From: shamama Date: Tue, 31 Oct 2023 16:09:52 +0200 Subject: [PATCH 2/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index 7907b373..fba0f4ad 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -25,7 +25,7 @@ RUN git clone --branch ${FFMPEG_VERSION} https://github.com/ffmpeg/ffmpeg.git RUN cd ffmpeg && \ - ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ + ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ make -j 8 RUN apt-get install valgrind -y From 740ca4ec1e8ba35525c9c6ef36e9b27683a7f4db Mon Sep 17 00:00:00 2001 From: shamama Date: Wed, 1 Nov 2023 10:29:34 +0200 Subject: [PATCH 3/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 7 +- transcoder/tests/Makefile | 607 ++++++++++++++++++++++++++++++++++ transcoder/tests/allfilters.c | 591 +++++++++++++++++++++++++++++++++ 3 files changed, 1203 insertions(+), 2 deletions(-) create mode 100644 transcoder/tests/Makefile create mode 100644 transcoder/tests/allfilters.c diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index fba0f4ad..64a2a243 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -24,8 +24,11 @@ RUN cd nv-codec-headers && \ RUN git clone --branch ${FFMPEG_VERSION} https://github.com/ffmpeg/ffmpeg.git -RUN cd ffmpeg && \ - ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ +COPY tests/Makefile /build/ffmpeg/libavfilter +COPY tests/allfilters.c /build/ffmpeg/libavfilter + +RUN cd ffmpeg && rm libavfilter/vf_sharpen_npp.c && \ + ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda-nvcc --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/targets/x86_64-linux/include --extra-ldflags="-L/usr/local/cuda/targets/x86_64-linux/lib" && \ make -j 8 RUN apt-get install valgrind -y diff --git a/transcoder/tests/Makefile b/transcoder/tests/Makefile new file mode 100644 index 00000000..ebd53cbf --- /dev/null +++ b/transcoder/tests/Makefile @@ -0,0 +1,607 @@ +NAME = avfilter +DESC = FFmpeg audio/video filtering library + +HEADERS = avfilter.h \ + buffersink.h \ + buffersrc.h \ + version.h \ + +OBJS = allfilters.o \ + audio.o \ + avfilter.o \ + avfiltergraph.o \ + buffersink.o \ + buffersrc.o \ + drawutils.o \ + fifo.o \ + formats.o \ + framepool.o \ + framequeue.o \ + graphdump.o \ + graphparser.o \ + video.o \ + +OBJS-$(HAVE_THREADS) += pthread.o + +# subsystems +OBJS-$(CONFIG_QSVVPP) += qsvvpp.o +OBJS-$(CONFIG_SCENE_SAD) += scene_sad.o +OBJS-$(CONFIG_DNN) += dnn_filter_common.o +include $(SRC_PATH)/libavfilter/dnn/Makefile + +# audio filters +OBJS-$(CONFIG_ABENCH_FILTER) += f_bench.o +OBJS-$(CONFIG_ACOMPRESSOR_FILTER) += af_sidechaincompress.o +OBJS-$(CONFIG_ACONTRAST_FILTER) += af_acontrast.o +OBJS-$(CONFIG_ACOPY_FILTER) += af_acopy.o +OBJS-$(CONFIG_ACROSSFADE_FILTER) += af_afade.o +OBJS-$(CONFIG_ACROSSOVER_FILTER) += af_acrossover.o +OBJS-$(CONFIG_ACRUSHER_FILTER) += af_acrusher.o +OBJS-$(CONFIG_ACUE_FILTER) += f_cue.o +OBJS-$(CONFIG_ADECLICK_FILTER) += af_adeclick.o +OBJS-$(CONFIG_ADECLIP_FILTER) += af_adeclick.o +OBJS-$(CONFIG_ADECORRELATE_FILTER) += af_adecorrelate.o +OBJS-$(CONFIG_ADELAY_FILTER) += af_adelay.o +OBJS-$(CONFIG_ADENORM_FILTER) += af_adenorm.o +OBJS-$(CONFIG_ADERIVATIVE_FILTER) += af_aderivative.o +OBJS-$(CONFIG_ADYNAMICEQUALIZER_FILTER) += af_adynamicequalizer.o +OBJS-$(CONFIG_ADYNAMICSMOOTH_FILTER) += af_adynamicsmooth.o +OBJS-$(CONFIG_AECHO_FILTER) += af_aecho.o +OBJS-$(CONFIG_AEMPHASIS_FILTER) += af_aemphasis.o +OBJS-$(CONFIG_AEVAL_FILTER) += aeval.o +OBJS-$(CONFIG_AEXCITER_FILTER) += af_aexciter.o +OBJS-$(CONFIG_AFADE_FILTER) += af_afade.o +OBJS-$(CONFIG_AFFTDN_FILTER) += af_afftdn.o +OBJS-$(CONFIG_AFFTFILT_FILTER) += af_afftfilt.o +OBJS-$(CONFIG_AFIR_FILTER) += af_afir.o +OBJS-$(CONFIG_AFORMAT_FILTER) += af_aformat.o +OBJS-$(CONFIG_AFREQSHIFT_FILTER) += af_afreqshift.o +OBJS-$(CONFIG_AFWTDN_FILTER) += af_afwtdn.o +OBJS-$(CONFIG_AGATE_FILTER) += af_agate.o +OBJS-$(CONFIG_AIIR_FILTER) += af_aiir.o +OBJS-$(CONFIG_AINTEGRAL_FILTER) += af_aderivative.o +OBJS-$(CONFIG_AINTERLEAVE_FILTER) += f_interleave.o +OBJS-$(CONFIG_ALATENCY_FILTER) += f_latency.o +OBJS-$(CONFIG_ALIMITER_FILTER) += af_alimiter.o +OBJS-$(CONFIG_ALLPASS_FILTER) += af_biquads.o +OBJS-$(CONFIG_ALOOP_FILTER) += f_loop.o +OBJS-$(CONFIG_AMERGE_FILTER) += af_amerge.o +OBJS-$(CONFIG_AMETADATA_FILTER) += f_metadata.o +OBJS-$(CONFIG_AMIX_FILTER) += af_amix.o +OBJS-$(CONFIG_AMULTIPLY_FILTER) += af_amultiply.o +OBJS-$(CONFIG_ANEQUALIZER_FILTER) += af_anequalizer.o +OBJS-$(CONFIG_ANLMDN_FILTER) += af_anlmdn.o +OBJS-$(CONFIG_ANLMF_FILTER) += af_anlms.o +OBJS-$(CONFIG_ANLMS_FILTER) += af_anlms.o +OBJS-$(CONFIG_ANULL_FILTER) += af_anull.o +OBJS-$(CONFIG_APAD_FILTER) += af_apad.o +OBJS-$(CONFIG_APERMS_FILTER) += f_perms.o +OBJS-$(CONFIG_APHASER_FILTER) += af_aphaser.o generate_wave_table.o +OBJS-$(CONFIG_APHASESHIFT_FILTER) += af_afreqshift.o +OBJS-$(CONFIG_APSYCLIP_FILTER) += af_apsyclip.o +OBJS-$(CONFIG_APULSATOR_FILTER) += af_apulsator.o +OBJS-$(CONFIG_AREALTIME_FILTER) += f_realtime.o +OBJS-$(CONFIG_ARESAMPLE_FILTER) += af_aresample.o +OBJS-$(CONFIG_AREVERSE_FILTER) += f_reverse.o +OBJS-$(CONFIG_ARNNDN_FILTER) += af_arnndn.o +OBJS-$(CONFIG_ASDR_FILTER) += af_asdr.o +OBJS-$(CONFIG_ASEGMENT_FILTER) += f_segment.o +OBJS-$(CONFIG_ASELECT_FILTER) += f_select.o +OBJS-$(CONFIG_ASENDCMD_FILTER) += f_sendcmd.o +OBJS-$(CONFIG_ASETNSAMPLES_FILTER) += af_asetnsamples.o +OBJS-$(CONFIG_ASETPTS_FILTER) += setpts.o +OBJS-$(CONFIG_ASETRATE_FILTER) += af_asetrate.o +OBJS-$(CONFIG_ASETTB_FILTER) += settb.o +OBJS-$(CONFIG_ASHOWINFO_FILTER) += af_ashowinfo.o +OBJS-$(CONFIG_ASIDEDATA_FILTER) += f_sidedata.o +OBJS-$(CONFIG_ASOFTCLIP_FILTER) += af_asoftclip.o +OBJS-$(CONFIG_ASPECTRALSTATS_FILTER) += af_aspectralstats.o +OBJS-$(CONFIG_ASPLIT_FILTER) += split.o +OBJS-$(CONFIG_ASR_FILTER) += af_asr.o +OBJS-$(CONFIG_ASTATS_FILTER) += af_astats.o +OBJS-$(CONFIG_ASTREAMSELECT_FILTER) += f_streamselect.o framesync.o +OBJS-$(CONFIG_ASUBBOOST_FILTER) += af_asubboost.o +OBJS-$(CONFIG_ASUBCUT_FILTER) += af_asupercut.o +OBJS-$(CONFIG_ASUPERCUT_FILTER) += af_asupercut.o +OBJS-$(CONFIG_ASUPERPASS_FILTER) += af_asupercut.o +OBJS-$(CONFIG_ASUPERSTOP_FILTER) += af_asupercut.o +OBJS-$(CONFIG_ATEMPO_FILTER) += af_atempo.o +OBJS-$(CONFIG_ATILT_FILTER) += af_atilt.o +OBJS-$(CONFIG_ATRIM_FILTER) += trim.o +OBJS-$(CONFIG_AXCORRELATE_FILTER) += af_axcorrelate.o +OBJS-$(CONFIG_AZMQ_FILTER) += f_zmq.o +OBJS-$(CONFIG_BANDPASS_FILTER) += af_biquads.o +OBJS-$(CONFIG_BANDREJECT_FILTER) += af_biquads.o +OBJS-$(CONFIG_BASS_FILTER) += af_biquads.o +OBJS-$(CONFIG_BIQUAD_FILTER) += af_biquads.o +OBJS-$(CONFIG_BS2B_FILTER) += af_bs2b.o +OBJS-$(CONFIG_CHANNELMAP_FILTER) += af_channelmap.o +OBJS-$(CONFIG_CHANNELSPLIT_FILTER) += af_channelsplit.o +OBJS-$(CONFIG_CHORUS_FILTER) += af_chorus.o generate_wave_table.o +OBJS-$(CONFIG_COMPAND_FILTER) += af_compand.o +OBJS-$(CONFIG_COMPENSATIONDELAY_FILTER) += af_compensationdelay.o +OBJS-$(CONFIG_CROSSFEED_FILTER) += af_crossfeed.o +OBJS-$(CONFIG_CRYSTALIZER_FILTER) += af_crystalizer.o +OBJS-$(CONFIG_DCSHIFT_FILTER) += af_dcshift.o +OBJS-$(CONFIG_DEESSER_FILTER) += af_deesser.o +OBJS-$(CONFIG_DRMETER_FILTER) += af_drmeter.o +OBJS-$(CONFIG_DYNAUDNORM_FILTER) += af_dynaudnorm.o +OBJS-$(CONFIG_EARWAX_FILTER) += af_earwax.o +OBJS-$(CONFIG_EBUR128_FILTER) += f_ebur128.o +OBJS-$(CONFIG_EQUALIZER_FILTER) += af_biquads.o +OBJS-$(CONFIG_EXTRASTEREO_FILTER) += af_extrastereo.o +OBJS-$(CONFIG_FIREQUALIZER_FILTER) += af_firequalizer.o +OBJS-$(CONFIG_FLANGER_FILTER) += af_flanger.o generate_wave_table.o +OBJS-$(CONFIG_HAAS_FILTER) += af_haas.o +OBJS-$(CONFIG_HDCD_FILTER) += af_hdcd.o +OBJS-$(CONFIG_HEADPHONE_FILTER) += af_headphone.o +OBJS-$(CONFIG_HIGHPASS_FILTER) += af_biquads.o +OBJS-$(CONFIG_HIGHSHELF_FILTER) += af_biquads.o +OBJS-$(CONFIG_JOIN_FILTER) += af_join.o +OBJS-$(CONFIG_LADSPA_FILTER) += af_ladspa.o +OBJS-$(CONFIG_LOUDNORM_FILTER) += af_loudnorm.o ebur128.o +OBJS-$(CONFIG_LOWPASS_FILTER) += af_biquads.o +OBJS-$(CONFIG_LOWSHELF_FILTER) += af_biquads.o +OBJS-$(CONFIG_LV2_FILTER) += af_lv2.o +OBJS-$(CONFIG_MCOMPAND_FILTER) += af_mcompand.o +OBJS-$(CONFIG_PAN_FILTER) += af_pan.o +OBJS-$(CONFIG_REPLAYGAIN_FILTER) += af_replaygain.o +OBJS-$(CONFIG_RUBBERBAND_FILTER) += af_rubberband.o +OBJS-$(CONFIG_SIDECHAINCOMPRESS_FILTER) += af_sidechaincompress.o +OBJS-$(CONFIG_SIDECHAINGATE_FILTER) += af_agate.o +OBJS-$(CONFIG_SILENCEDETECT_FILTER) += af_silencedetect.o +OBJS-$(CONFIG_SILENCEREMOVE_FILTER) += af_silenceremove.o +OBJS-$(CONFIG_SOFALIZER_FILTER) += af_sofalizer.o +OBJS-$(CONFIG_SPEECHNORM_FILTER) += af_speechnorm.o +OBJS-$(CONFIG_STEREOTOOLS_FILTER) += af_stereotools.o +OBJS-$(CONFIG_STEREOWIDEN_FILTER) += af_stereowiden.o +OBJS-$(CONFIG_SUPEREQUALIZER_FILTER) += af_superequalizer.o +OBJS-$(CONFIG_SURROUND_FILTER) += af_surround.o +OBJS-$(CONFIG_TREBLE_FILTER) += af_biquads.o +OBJS-$(CONFIG_TREMOLO_FILTER) += af_tremolo.o +OBJS-$(CONFIG_VIBRATO_FILTER) += af_vibrato.o generate_wave_table.o +OBJS-$(CONFIG_VOLUME_FILTER) += af_volume.o +OBJS-$(CONFIG_VOLUMEDETECT_FILTER) += af_volumedetect.o + +OBJS-$(CONFIG_AEVALSRC_FILTER) += aeval.o +OBJS-$(CONFIG_AFIRSRC_FILTER) += asrc_afirsrc.o +OBJS-$(CONFIG_ANOISESRC_FILTER) += asrc_anoisesrc.o +OBJS-$(CONFIG_ANULLSRC_FILTER) += asrc_anullsrc.o +OBJS-$(CONFIG_FLITE_FILTER) += asrc_flite.o +OBJS-$(CONFIG_HILBERT_FILTER) += asrc_hilbert.o +OBJS-$(CONFIG_SINC_FILTER) += asrc_sinc.o +OBJS-$(CONFIG_SINE_FILTER) += asrc_sine.o + +OBJS-$(CONFIG_ANULLSINK_FILTER) += asink_anullsink.o + +# video filters +OBJS-$(CONFIG_ADDROI_FILTER) += vf_addroi.o +OBJS-$(CONFIG_ALPHAEXTRACT_FILTER) += vf_extractplanes.o +OBJS-$(CONFIG_ALPHAMERGE_FILTER) += vf_alphamerge.o framesync.o +OBJS-$(CONFIG_AMPLIFY_FILTER) += vf_amplify.o +OBJS-$(CONFIG_ASS_FILTER) += vf_subtitles.o +OBJS-$(CONFIG_ATADENOISE_FILTER) += vf_atadenoise.o +OBJS-$(CONFIG_AVGBLUR_FILTER) += vf_avgblur.o +OBJS-$(CONFIG_AVGBLUR_OPENCL_FILTER) += vf_avgblur_opencl.o opencl.o \ + opencl/avgblur.o boxblur.o +OBJS-$(CONFIG_AVGBLUR_VULKAN_FILTER) += vf_avgblur_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_BBOX_FILTER) += bbox.o vf_bbox.o +OBJS-$(CONFIG_BENCH_FILTER) += f_bench.o +OBJS-$(CONFIG_BILATERAL_FILTER) += vf_bilateral.o +OBJS-$(CONFIG_BITPLANENOISE_FILTER) += vf_bitplanenoise.o +OBJS-$(CONFIG_BLACKDETECT_FILTER) += vf_blackdetect.o +OBJS-$(CONFIG_BLACKFRAME_FILTER) += vf_blackframe.o +OBJS-$(CONFIG_BLEND_FILTER) += vf_blend.o framesync.o +OBJS-$(CONFIG_BM3D_FILTER) += vf_bm3d.o framesync.o +OBJS-$(CONFIG_BOXBLUR_FILTER) += vf_boxblur.o boxblur.o +OBJS-$(CONFIG_BOXBLUR_OPENCL_FILTER) += vf_avgblur_opencl.o opencl.o \ + opencl/avgblur.o boxblur.o +OBJS-$(CONFIG_BWDIF_FILTER) += vf_bwdif.o yadif_common.o +OBJS-$(CONFIG_CAS_FILTER) += vf_cas.o +OBJS-$(CONFIG_CHROMABER_VULKAN_FILTER) += vf_chromaber_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_CHROMAHOLD_FILTER) += vf_chromakey.o +OBJS-$(CONFIG_CHROMAKEY_FILTER) += vf_chromakey.o +OBJS-$(CONFIG_CHROMANR_FILTER) += vf_chromanr.o +OBJS-$(CONFIG_CHROMASHIFT_FILTER) += vf_chromashift.o +OBJS-$(CONFIG_CIESCOPE_FILTER) += vf_ciescope.o +OBJS-$(CONFIG_CODECVIEW_FILTER) += vf_codecview.o qp_table.o +OBJS-$(CONFIG_COLORBALANCE_FILTER) += vf_colorbalance.o +OBJS-$(CONFIG_COLORCHANNELMIXER_FILTER) += vf_colorchannelmixer.o +OBJS-$(CONFIG_COLORCONTRAST_FILTER) += vf_colorcontrast.o +OBJS-$(CONFIG_COLORCORRECT_FILTER) += vf_colorcorrect.o +OBJS-$(CONFIG_COLORIZE_FILTER) += vf_colorize.o +OBJS-$(CONFIG_COLORKEY_FILTER) += vf_colorkey.o +OBJS-$(CONFIG_COLORKEY_OPENCL_FILTER) += vf_colorkey_opencl.o opencl.o \ + opencl/colorkey.o +OBJS-$(CONFIG_COLORHOLD_FILTER) += vf_colorkey.o +OBJS-$(CONFIG_COLORLEVELS_FILTER) += vf_colorlevels.o +OBJS-$(CONFIG_COLORMATRIX_FILTER) += vf_colormatrix.o +OBJS-$(CONFIG_COLORSPACE_FILTER) += vf_colorspace.o colorspace.o colorspacedsp.o +OBJS-$(CONFIG_COLORTEMPERATURE_FILTER) += vf_colortemperature.o +OBJS-$(CONFIG_CONVOLUTION_FILTER) += vf_convolution.o +OBJS-$(CONFIG_CONVOLUTION_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ + opencl/convolution.o +OBJS-$(CONFIG_CONVOLVE_FILTER) += vf_convolve.o framesync.o +OBJS-$(CONFIG_COPY_FILTER) += vf_copy.o +OBJS-$(CONFIG_COREIMAGE_FILTER) += vf_coreimage.o +OBJS-$(CONFIG_COVER_RECT_FILTER) += vf_cover_rect.o lavfutils.o +OBJS-$(CONFIG_CROP_FILTER) += vf_crop.o +OBJS-$(CONFIG_CROPDETECT_FILTER) += vf_cropdetect.o +OBJS-$(CONFIG_CUE_FILTER) += f_cue.o +OBJS-$(CONFIG_CURVES_FILTER) += vf_curves.o +OBJS-$(CONFIG_DATASCOPE_FILTER) += vf_datascope.o +OBJS-$(CONFIG_DBLUR_FILTER) += vf_dblur.o +OBJS-$(CONFIG_DCTDNOIZ_FILTER) += vf_dctdnoiz.o +OBJS-$(CONFIG_DEBAND_FILTER) += vf_deband.o +OBJS-$(CONFIG_DEBLOCK_FILTER) += vf_deblock.o +OBJS-$(CONFIG_DECIMATE_FILTER) += vf_decimate.o +OBJS-$(CONFIG_DERAIN_FILTER) += vf_derain.o +OBJS-$(CONFIG_DECONVOLVE_FILTER) += vf_convolve.o framesync.o +OBJS-$(CONFIG_DEDOT_FILTER) += vf_dedot.o +OBJS-$(CONFIG_DEFLATE_FILTER) += vf_neighbor.o +OBJS-$(CONFIG_DEFLICKER_FILTER) += vf_deflicker.o +OBJS-$(CONFIG_DEINTERLACE_QSV_FILTER) += vf_deinterlace_qsv.o +OBJS-$(CONFIG_DEINTERLACE_VAAPI_FILTER) += vf_deinterlace_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_DEJUDDER_FILTER) += vf_dejudder.o +OBJS-$(CONFIG_DELOGO_FILTER) += vf_delogo.o +OBJS-$(CONFIG_DENOISE_VAAPI_FILTER) += vf_misc_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_DESHAKE_OPENCL_FILTER) += vf_deshake_opencl.o opencl.o \ + opencl/deshake.o transform.o +OBJS-$(CONFIG_DESHAKE_FILTER) += vf_deshake.o transform.o +OBJS-$(CONFIG_DESPILL_FILTER) += vf_despill.o +OBJS-$(CONFIG_DETELECINE_FILTER) += vf_detelecine.o +OBJS-$(CONFIG_DILATION_FILTER) += vf_neighbor.o +OBJS-$(CONFIG_DILATION_OPENCL_FILTER) += vf_neighbor_opencl.o opencl.o \ + opencl/neighbor.o +OBJS-$(CONFIG_DISPLACE_FILTER) += vf_displace.o framesync.o +OBJS-$(CONFIG_DNN_CLASSIFY_FILTER) += vf_dnn_classify.o +OBJS-$(CONFIG_DNN_DETECT_FILTER) += vf_dnn_detect.o +OBJS-$(CONFIG_DNN_PROCESSING_FILTER) += vf_dnn_processing.o +OBJS-$(CONFIG_DOUBLEWEAVE_FILTER) += vf_weave.o +OBJS-$(CONFIG_DRAWBOX_FILTER) += vf_drawbox.o +OBJS-$(CONFIG_DRAWGRAPH_FILTER) += f_drawgraph.o +OBJS-$(CONFIG_DRAWGRID_FILTER) += vf_drawbox.o +OBJS-$(CONFIG_DRAWTEXT_FILTER) += vf_drawtext.o +OBJS-$(CONFIG_EDGEDETECT_FILTER) += vf_edgedetect.o +OBJS-$(CONFIG_ELBG_FILTER) += vf_elbg.o +OBJS-$(CONFIG_ENTROPY_FILTER) += vf_entropy.o +OBJS-$(CONFIG_EPX_FILTER) += vf_epx.o +OBJS-$(CONFIG_EQ_FILTER) += vf_eq.o +OBJS-$(CONFIG_EROSION_FILTER) += vf_neighbor.o +OBJS-$(CONFIG_EROSION_OPENCL_FILTER) += vf_neighbor_opencl.o opencl.o \ + opencl/neighbor.o +OBJS-$(CONFIG_ESTDIF_FILTER) += vf_estdif.o +OBJS-$(CONFIG_EXPOSURE_FILTER) += vf_exposure.o +OBJS-$(CONFIG_EXTRACTPLANES_FILTER) += vf_extractplanes.o +OBJS-$(CONFIG_FADE_FILTER) += vf_fade.o +OBJS-$(CONFIG_FFTDNOIZ_FILTER) += vf_fftdnoiz.o +OBJS-$(CONFIG_FFTFILT_FILTER) += vf_fftfilt.o +OBJS-$(CONFIG_FIELD_FILTER) += vf_field.o +OBJS-$(CONFIG_FIELDHINT_FILTER) += vf_fieldhint.o +OBJS-$(CONFIG_FIELDMATCH_FILTER) += vf_fieldmatch.o +OBJS-$(CONFIG_FIELDORDER_FILTER) += vf_fieldorder.o +OBJS-$(CONFIG_FILLBORDERS_FILTER) += vf_fillborders.o +OBJS-$(CONFIG_FIND_RECT_FILTER) += vf_find_rect.o lavfutils.o +OBJS-$(CONFIG_FLOODFILL_FILTER) += vf_floodfill.o +OBJS-$(CONFIG_FORMAT_FILTER) += vf_format.o +OBJS-$(CONFIG_FPS_FILTER) += vf_fps.o +OBJS-$(CONFIG_FRAMEPACK_FILTER) += vf_framepack.o +OBJS-$(CONFIG_FRAMERATE_FILTER) += vf_framerate.o +OBJS-$(CONFIG_FRAMESTEP_FILTER) += vf_framestep.o +OBJS-$(CONFIG_FREEZEDETECT_FILTER) += vf_freezedetect.o +OBJS-$(CONFIG_FREEZEFRAMES_FILTER) += vf_freezeframes.o +OBJS-$(CONFIG_FREI0R_FILTER) += vf_frei0r.o +OBJS-$(CONFIG_FSPP_FILTER) += vf_fspp.o qp_table.o +OBJS-$(CONFIG_GBLUR_FILTER) += vf_gblur.o +OBJS-$(CONFIG_GBLUR_VULKAN_FILTER) += vf_gblur_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_GEQ_FILTER) += vf_geq.o +OBJS-$(CONFIG_GRADFUN_FILTER) += vf_gradfun.o +OBJS-$(CONFIG_GRAPHMONITOR_FILTER) += f_graphmonitor.o +OBJS-$(CONFIG_GRAYWORLD_FILTER) += vf_grayworld.o +OBJS-$(CONFIG_GREYEDGE_FILTER) += vf_colorconstancy.o +OBJS-$(CONFIG_GUIDED_FILTER) += vf_guided.o +OBJS-$(CONFIG_HALDCLUT_FILTER) += vf_lut3d.o framesync.o +OBJS-$(CONFIG_HFLIP_FILTER) += vf_hflip.o +OBJS-$(CONFIG_HFLIP_VULKAN_FILTER) += vf_flip_vulkan.o vulkan.o +OBJS-$(CONFIG_HISTEQ_FILTER) += vf_histeq.o +OBJS-$(CONFIG_HISTOGRAM_FILTER) += vf_histogram.o +OBJS-$(CONFIG_HQDN3D_FILTER) += vf_hqdn3d.o +OBJS-$(CONFIG_HQX_FILTER) += vf_hqx.o +OBJS-$(CONFIG_HSTACK_FILTER) += vf_stack.o framesync.o +OBJS-$(CONFIG_HSVHOLD_FILTER) += vf_hsvkey.o +OBJS-$(CONFIG_HSVKEY_FILTER) += vf_hsvkey.o +OBJS-$(CONFIG_HUE_FILTER) += vf_hue.o +OBJS-$(CONFIG_HUESATURATION_FILTER) += vf_huesaturation.o +OBJS-$(CONFIG_HWDOWNLOAD_FILTER) += vf_hwdownload.o +OBJS-$(CONFIG_HWMAP_FILTER) += vf_hwmap.o +OBJS-$(CONFIG_HWUPLOAD_CUDA_FILTER) += vf_hwupload_cuda.o +OBJS-$(CONFIG_HWUPLOAD_FILTER) += vf_hwupload.o +OBJS-$(CONFIG_HYSTERESIS_FILTER) += vf_hysteresis.o framesync.o +OBJS-$(CONFIG_IDENTITY_FILTER) += vf_identity.o +OBJS-$(CONFIG_IDET_FILTER) += vf_idet.o +OBJS-$(CONFIG_IL_FILTER) += vf_il.o +OBJS-$(CONFIG_INFLATE_FILTER) += vf_neighbor.o +OBJS-$(CONFIG_INTERLACE_FILTER) += vf_tinterlace.o +OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o +OBJS-$(CONFIG_KERNDEINT_FILTER) += vf_kerndeint.o +OBJS-$(CONFIG_KIRSCH_FILTER) += vf_convolution.o +OBJS-$(CONFIG_LAGFUN_FILTER) += vf_lagfun.o +OBJS-$(CONFIG_LATENCY_FILTER) += f_latency.o +OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o +OBJS-$(CONFIG_LENSFUN_FILTER) += vf_lensfun.o +OBJS-$(CONFIG_LIBPLACEBO_FILTER) += vf_libplacebo.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_LIBVMAF_FILTER) += vf_libvmaf.o framesync.o +OBJS-$(CONFIG_LIMITDIFF_FILTER) += vf_limitdiff.o framesync.o +OBJS-$(CONFIG_LIMITER_FILTER) += vf_limiter.o +OBJS-$(CONFIG_LOOP_FILTER) += f_loop.o +OBJS-$(CONFIG_LUMAKEY_FILTER) += vf_lumakey.o +OBJS-$(CONFIG_LUT1D_FILTER) += vf_lut3d.o +OBJS-$(CONFIG_LUT_FILTER) += vf_lut.o +OBJS-$(CONFIG_LUT2_FILTER) += vf_lut2.o framesync.o +OBJS-$(CONFIG_LUT3D_FILTER) += vf_lut3d.o framesync.o +OBJS-$(CONFIG_LUTRGB_FILTER) += vf_lut.o +OBJS-$(CONFIG_LUTYUV_FILTER) += vf_lut.o +OBJS-$(CONFIG_MASKEDCLAMP_FILTER) += vf_maskedclamp.o framesync.o +OBJS-$(CONFIG_MASKEDMAX_FILTER) += vf_maskedminmax.o framesync.o +OBJS-$(CONFIG_MASKEDMERGE_FILTER) += vf_maskedmerge.o framesync.o +OBJS-$(CONFIG_MASKEDMIN_FILTER) += vf_maskedminmax.o framesync.o +OBJS-$(CONFIG_MASKEDTHRESHOLD_FILTER) += vf_maskedthreshold.o framesync.o +OBJS-$(CONFIG_MASKFUN_FILTER) += vf_maskfun.o +OBJS-$(CONFIG_MCDEINT_FILTER) += vf_mcdeint.o +OBJS-$(CONFIG_MEDIAN_FILTER) += vf_median.o +OBJS-$(CONFIG_MERGEPLANES_FILTER) += vf_mergeplanes.o framesync.o +OBJS-$(CONFIG_MESTIMATE_FILTER) += vf_mestimate.o motion_estimation.o +OBJS-$(CONFIG_METADATA_FILTER) += f_metadata.o +OBJS-$(CONFIG_MIDEQUALIZER_FILTER) += vf_midequalizer.o framesync.o +OBJS-$(CONFIG_MINTERPOLATE_FILTER) += vf_minterpolate.o motion_estimation.o +OBJS-$(CONFIG_MIX_FILTER) += vf_mix.o framesync.o +OBJS-$(CONFIG_MONOCHROME_FILTER) += vf_monochrome.o +OBJS-$(CONFIG_MORPHO_FILTER) += vf_morpho.o +OBJS-$(CONFIG_MPDECIMATE_FILTER) += vf_mpdecimate.o +OBJS-$(CONFIG_NEGATE_FILTER) += vf_negate.o +OBJS-$(CONFIG_NLMEANS_FILTER) += vf_nlmeans.o +OBJS-$(CONFIG_NLMEANS_OPENCL_FILTER) += vf_nlmeans_opencl.o opencl.o opencl/nlmeans.o +OBJS-$(CONFIG_NNEDI_FILTER) += vf_nnedi.o +OBJS-$(CONFIG_NOFORMAT_FILTER) += vf_format.o +OBJS-$(CONFIG_NOISE_FILTER) += vf_noise.o +OBJS-$(CONFIG_NORMALIZE_FILTER) += vf_normalize.o +OBJS-$(CONFIG_NULL_FILTER) += vf_null.o +OBJS-$(CONFIG_OCR_FILTER) += vf_ocr.o +OBJS-$(CONFIG_OCV_FILTER) += vf_libopencv.o +OBJS-$(CONFIG_OSCILLOSCOPE_FILTER) += vf_datascope.o +OBJS-$(CONFIG_OVERLAY_FILTER) += vf_overlay.o framesync.o +OBJS-$(CONFIG_OVERLAY_CUDA_FILTER) += vf_overlay_cuda.o framesync.o vf_overlay_cuda.ptx.o \ + cuda/load_helper.o +OBJS-$(CONFIG_OVERLAY_OPENCL_FILTER) += vf_overlay_opencl.o opencl.o \ + opencl/overlay.o framesync.o +OBJS-$(CONFIG_OVERLAY_QSV_FILTER) += vf_overlay_qsv.o framesync.o +OBJS-$(CONFIG_OVERLAY_VULKAN_FILTER) += vf_overlay_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_OWDENOISE_FILTER) += vf_owdenoise.o +OBJS-$(CONFIG_PAD_FILTER) += vf_pad.o +OBJS-$(CONFIG_PAD_OPENCL_FILTER) += vf_pad_opencl.o opencl.o opencl/pad.o +OBJS-$(CONFIG_PALETTEGEN_FILTER) += vf_palettegen.o +OBJS-$(CONFIG_PALETTEUSE_FILTER) += vf_paletteuse.o framesync.o +OBJS-$(CONFIG_PERMS_FILTER) += f_perms.o +OBJS-$(CONFIG_PERSPECTIVE_FILTER) += vf_perspective.o +OBJS-$(CONFIG_PHASE_FILTER) += vf_phase.o +OBJS-$(CONFIG_PHOTOSENSITIVITY_FILTER) += vf_photosensitivity.o +OBJS-$(CONFIG_PIXDESCTEST_FILTER) += vf_pixdesctest.o +OBJS-$(CONFIG_PIXSCOPE_FILTER) += vf_datascope.o +OBJS-$(CONFIG_PP_FILTER) += vf_pp.o qp_table.o +OBJS-$(CONFIG_PP7_FILTER) += vf_pp7.o qp_table.o +OBJS-$(CONFIG_PREMULTIPLY_FILTER) += vf_premultiply.o framesync.o +OBJS-$(CONFIG_PREWITT_FILTER) += vf_convolution.o +OBJS-$(CONFIG_PREWITT_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ + opencl/convolution.o +OBJS-$(CONFIG_PROCAMP_VAAPI_FILTER) += vf_procamp_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_PROGRAM_OPENCL_FILTER) += vf_program_opencl.o opencl.o framesync.o +OBJS-$(CONFIG_PSEUDOCOLOR_FILTER) += vf_pseudocolor.o +OBJS-$(CONFIG_PSNR_FILTER) += vf_psnr.o framesync.o +OBJS-$(CONFIG_PULLUP_FILTER) += vf_pullup.o +OBJS-$(CONFIG_QP_FILTER) += vf_qp.o +OBJS-$(CONFIG_RANDOM_FILTER) += vf_random.o +OBJS-$(CONFIG_READEIA608_FILTER) += vf_readeia608.o +OBJS-$(CONFIG_READVITC_FILTER) += vf_readvitc.o +OBJS-$(CONFIG_REALTIME_FILTER) += f_realtime.o +OBJS-$(CONFIG_REMAP_FILTER) += vf_remap.o framesync.o +OBJS-$(CONFIG_REMOVEGRAIN_FILTER) += vf_removegrain.o +OBJS-$(CONFIG_REMOVELOGO_FILTER) += bbox.o lswsutils.o lavfutils.o vf_removelogo.o +OBJS-$(CONFIG_REPEATFIELDS_FILTER) += vf_repeatfields.o +OBJS-$(CONFIG_REVERSE_FILTER) += f_reverse.o +OBJS-$(CONFIG_RGBASHIFT_FILTER) += vf_chromashift.o +OBJS-$(CONFIG_ROBERTS_FILTER) += vf_convolution.o +OBJS-$(CONFIG_ROBERTS_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ + opencl/convolution.o +OBJS-$(CONFIG_ROTATE_FILTER) += vf_rotate.o +OBJS-$(CONFIG_SAB_FILTER) += vf_sab.o +OBJS-$(CONFIG_SCALE_FILTER) += vf_scale.o scale_eval.o +OBJS-$(CONFIG_SCALE_CUDA_FILTER) += vf_scale_cuda.o scale_eval.o \ + vf_scale_cuda.ptx.o cuda/load_helper.o +OBJS-$(CONFIG_SCALE_NPP_FILTER) += vf_scale_npp.o scale_eval.o +OBJS-$(CONFIG_SCALE_QSV_FILTER) += vf_scale_qsv.o +OBJS-$(CONFIG_SCALE_VAAPI_FILTER) += vf_scale_vaapi.o scale_eval.o vaapi_vpp.o +OBJS-$(CONFIG_SCALE_VULKAN_FILTER) += vf_scale_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_SCALE2REF_FILTER) += vf_scale.o scale_eval.o +OBJS-$(CONFIG_SCALE2REF_NPP_FILTER) += vf_scale_npp.o scale_eval.o +OBJS-$(CONFIG_SCDET_FILTER) += vf_scdet.o +OBJS-$(CONFIG_SCHARR_FILTER) += vf_convolution.o +OBJS-$(CONFIG_SCROLL_FILTER) += vf_scroll.o +OBJS-$(CONFIG_SEGMENT_FILTER) += f_segment.o +OBJS-$(CONFIG_SELECT_FILTER) += f_select.o +OBJS-$(CONFIG_SELECTIVECOLOR_FILTER) += vf_selectivecolor.o +OBJS-$(CONFIG_SENDCMD_FILTER) += f_sendcmd.o +OBJS-$(CONFIG_SEPARATEFIELDS_FILTER) += vf_separatefields.o +OBJS-$(CONFIG_SETDAR_FILTER) += vf_aspect.o +OBJS-$(CONFIG_SETFIELD_FILTER) += vf_setparams.o +OBJS-$(CONFIG_SETPARAMS_FILTER) += vf_setparams.o +OBJS-$(CONFIG_SETPTS_FILTER) += setpts.o +OBJS-$(CONFIG_SETRANGE_FILTER) += vf_setparams.o +OBJS-$(CONFIG_SETSAR_FILTER) += vf_aspect.o +OBJS-$(CONFIG_SETTB_FILTER) += settb.o +OBJS-$(CONFIG_SHARPNESS_VAAPI_FILTER) += vf_misc_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_SHEAR_FILTER) += vf_shear.o +OBJS-$(CONFIG_SHOWINFO_FILTER) += vf_showinfo.o +OBJS-$(CONFIG_SHOWPALETTE_FILTER) += vf_showpalette.o +OBJS-$(CONFIG_SHUFFLEFRAMES_FILTER) += vf_shuffleframes.o +OBJS-$(CONFIG_SHUFFLEPIXELS_FILTER) += vf_shufflepixels.o +OBJS-$(CONFIG_SHUFFLEPLANES_FILTER) += vf_shuffleplanes.o +OBJS-$(CONFIG_SIDEDATA_FILTER) += f_sidedata.o +OBJS-$(CONFIG_SIGNALSTATS_FILTER) += vf_signalstats.o +OBJS-$(CONFIG_SIGNATURE_FILTER) += vf_signature.o +OBJS-$(CONFIG_SMARTBLUR_FILTER) += vf_smartblur.o +OBJS-$(CONFIG_SOBEL_FILTER) += vf_convolution.o +OBJS-$(CONFIG_SOBEL_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ + opencl/convolution.o +OBJS-$(CONFIG_SPLIT_FILTER) += split.o +OBJS-$(CONFIG_SPP_FILTER) += vf_spp.o qp_table.o +OBJS-$(CONFIG_SR_FILTER) += vf_sr.o +OBJS-$(CONFIG_SSIM_FILTER) += vf_ssim.o framesync.o +OBJS-$(CONFIG_STEREO3D_FILTER) += vf_stereo3d.o +OBJS-$(CONFIG_STREAMSELECT_FILTER) += f_streamselect.o framesync.o +OBJS-$(CONFIG_SUBTITLES_FILTER) += vf_subtitles.o +OBJS-$(CONFIG_SUPER2XSAI_FILTER) += vf_super2xsai.o +OBJS-$(CONFIG_SWAPRECT_FILTER) += vf_swaprect.o +OBJS-$(CONFIG_SWAPUV_FILTER) += vf_swapuv.o +OBJS-$(CONFIG_TBLEND_FILTER) += vf_blend.o framesync.o +OBJS-$(CONFIG_TELECINE_FILTER) += vf_telecine.o +OBJS-$(CONFIG_THISTOGRAM_FILTER) += vf_histogram.o +OBJS-$(CONFIG_THRESHOLD_FILTER) += vf_threshold.o framesync.o +OBJS-$(CONFIG_THUMBNAIL_FILTER) += vf_thumbnail.o +OBJS-$(CONFIG_THUMBNAIL_CUDA_FILTER) += vf_thumbnail_cuda.o vf_thumbnail_cuda.ptx.o \ + cuda/load_helper.o +OBJS-$(CONFIG_TILE_FILTER) += vf_tile.o +OBJS-$(CONFIG_TINTERLACE_FILTER) += vf_tinterlace.o +OBJS-$(CONFIG_TLUT2_FILTER) += vf_lut2.o framesync.o +OBJS-$(CONFIG_TMEDIAN_FILTER) += vf_xmedian.o framesync.o +OBJS-$(CONFIG_TMIDEQUALIZER_FILTER) += vf_tmidequalizer.o +OBJS-$(CONFIG_TMIX_FILTER) += vf_mix.o framesync.o +OBJS-$(CONFIG_TONEMAP_FILTER) += vf_tonemap.o colorspace.o +OBJS-$(CONFIG_TONEMAP_OPENCL_FILTER) += vf_tonemap_opencl.o colorspace.o opencl.o \ + opencl/tonemap.o opencl/colorspace_common.o +OBJS-$(CONFIG_TONEMAP_VAAPI_FILTER) += vf_tonemap_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_TPAD_FILTER) += vf_tpad.o +OBJS-$(CONFIG_TRANSPOSE_FILTER) += vf_transpose.o +OBJS-$(CONFIG_TRANSPOSE_NPP_FILTER) += vf_transpose_npp.o +OBJS-$(CONFIG_TRANSPOSE_OPENCL_FILTER) += vf_transpose_opencl.o opencl.o opencl/transpose.o +OBJS-$(CONFIG_TRANSPOSE_VAAPI_FILTER) += vf_transpose_vaapi.o vaapi_vpp.o +OBJS-$(CONFIG_TRANSPOSE_VULKAN_FILTER) += vf_transpose_vulkan.o vulkan.o vulkan_filter.o +OBJS-$(CONFIG_TRIM_FILTER) += trim.o +OBJS-$(CONFIG_UNPREMULTIPLY_FILTER) += vf_premultiply.o framesync.o +OBJS-$(CONFIG_UNSHARP_FILTER) += vf_unsharp.o +OBJS-$(CONFIG_UNSHARP_OPENCL_FILTER) += vf_unsharp_opencl.o opencl.o \ + opencl/unsharp.o +OBJS-$(CONFIG_UNTILE_FILTER) += vf_untile.o +OBJS-$(CONFIG_USPP_FILTER) += vf_uspp.o qp_table.o +OBJS-$(CONFIG_V360_FILTER) += vf_v360.o +OBJS-$(CONFIG_VAGUEDENOISER_FILTER) += vf_vaguedenoiser.o +OBJS-$(CONFIG_VARBLUR_FILTER) += vf_varblur.o framesync.o +OBJS-$(CONFIG_VECTORSCOPE_FILTER) += vf_vectorscope.o +OBJS-$(CONFIG_VFLIP_FILTER) += vf_vflip.o +OBJS-$(CONFIG_VFLIP_VULKAN_FILTER) += vf_flip_vulkan.o vulkan.o +OBJS-$(CONFIG_VFRDET_FILTER) += vf_vfrdet.o +OBJS-$(CONFIG_VIBRANCE_FILTER) += vf_vibrance.o +OBJS-$(CONFIG_VIDSTABDETECT_FILTER) += vidstabutils.o vf_vidstabdetect.o +OBJS-$(CONFIG_VIDSTABTRANSFORM_FILTER) += vidstabutils.o vf_vidstabtransform.o +OBJS-$(CONFIG_VIF_FILTER) += vf_vif.o framesync.o +OBJS-$(CONFIG_VIGNETTE_FILTER) += vf_vignette.o +OBJS-$(CONFIG_VMAFMOTION_FILTER) += vf_vmafmotion.o framesync.o +OBJS-$(CONFIG_VPP_QSV_FILTER) += vf_vpp_qsv.o +OBJS-$(CONFIG_VSTACK_FILTER) += vf_stack.o framesync.o +OBJS-$(CONFIG_W3FDIF_FILTER) += vf_w3fdif.o +OBJS-$(CONFIG_WAVEFORM_FILTER) += vf_waveform.o +OBJS-$(CONFIG_WEAVE_FILTER) += vf_weave.o +OBJS-$(CONFIG_XBR_FILTER) += vf_xbr.o +OBJS-$(CONFIG_XCORRELATE_FILTER) += vf_convolve.o framesync.o +OBJS-$(CONFIG_XFADE_FILTER) += vf_xfade.o +OBJS-$(CONFIG_XFADE_OPENCL_FILTER) += vf_xfade_opencl.o opencl.o opencl/xfade.o +OBJS-$(CONFIG_XMEDIAN_FILTER) += vf_xmedian.o framesync.o +OBJS-$(CONFIG_XSTACK_FILTER) += vf_stack.o framesync.o +OBJS-$(CONFIG_YADIF_FILTER) += vf_yadif.o yadif_common.o +OBJS-$(CONFIG_YADIF_CUDA_FILTER) += vf_yadif_cuda.o vf_yadif_cuda.ptx.o \ + yadif_common.o cuda/load_helper.o +OBJS-$(CONFIG_YADIF_VIDEOTOOLBOX_FILTER) += vf_yadif_videotoolbox.o \ + metal/vf_yadif_videotoolbox.metallib.o \ + metal/utils.o \ + yadif_common.o +OBJS-$(CONFIG_YAEPBLUR_FILTER) += vf_yaepblur.o +OBJS-$(CONFIG_ZMQ_FILTER) += f_zmq.o +OBJS-$(CONFIG_ZOOMPAN_FILTER) += vf_zoompan.o +OBJS-$(CONFIG_ZSCALE_FILTER) += vf_zscale.o + +OBJS-$(CONFIG_ALLRGB_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_ALLYUV_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_CELLAUTO_FILTER) += vsrc_cellauto.o +OBJS-$(CONFIG_COLOR_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_COLORSPECTRUM_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_COREIMAGESRC_FILTER) += vf_coreimage.o +OBJS-$(CONFIG_FREI0R_SRC_FILTER) += vf_frei0r.o +OBJS-$(CONFIG_GRADIENTS_FILTER) += vsrc_gradients.o +OBJS-$(CONFIG_HALDCLUTSRC_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_LIFE_FILTER) += vsrc_life.o +OBJS-$(CONFIG_MANDELBROT_FILTER) += vsrc_mandelbrot.o +OBJS-$(CONFIG_MPTESTSRC_FILTER) += vsrc_mptestsrc.o +OBJS-$(CONFIG_NULLSRC_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_OPENCLSRC_FILTER) += vf_program_opencl.o opencl.o +OBJS-$(CONFIG_PAL75BARS_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_PAL100BARS_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_RGBTESTSRC_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_SIERPINSKI_FILTER) += vsrc_sierpinski.o +OBJS-$(CONFIG_SMPTEBARS_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_SMPTEHDBARS_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_TESTSRC_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_TESTSRC2_FILTER) += vsrc_testsrc.o +OBJS-$(CONFIG_YUVTESTSRC_FILTER) += vsrc_testsrc.o + +OBJS-$(CONFIG_NULLSINK_FILTER) += vsink_nullsink.o + +# multimedia filters +OBJS-$(CONFIG_ABITSCOPE_FILTER) += avf_abitscope.o +OBJS-$(CONFIG_ADRAWGRAPH_FILTER) += f_drawgraph.o +OBJS-$(CONFIG_AGRAPHMONITOR_FILTER) += f_graphmonitor.o +OBJS-$(CONFIG_AHISTOGRAM_FILTER) += avf_ahistogram.o +OBJS-$(CONFIG_APHASEMETER_FILTER) += avf_aphasemeter.o +OBJS-$(CONFIG_AVECTORSCOPE_FILTER) += avf_avectorscope.o +OBJS-$(CONFIG_CONCAT_FILTER) += avf_concat.o +OBJS-$(CONFIG_SHOWCQT_FILTER) += avf_showcqt.o lswsutils.o lavfutils.o +OBJS-$(CONFIG_SHOWFREQS_FILTER) += avf_showfreqs.o +OBJS-$(CONFIG_SHOWSPATIAL_FILTER) += avf_showspatial.o +OBJS-$(CONFIG_SHOWSPECTRUM_FILTER) += avf_showspectrum.o +OBJS-$(CONFIG_SHOWSPECTRUMPIC_FILTER) += avf_showspectrum.o +OBJS-$(CONFIG_SHOWVOLUME_FILTER) += avf_showvolume.o +OBJS-$(CONFIG_SHOWWAVES_FILTER) += avf_showwaves.o +OBJS-$(CONFIG_SHOWWAVESPIC_FILTER) += avf_showwaves.o +OBJS-$(CONFIG_SPECTRUMSYNTH_FILTER) += vaf_spectrumsynth.o + +# multimedia sources +OBJS-$(CONFIG_AMOVIE_FILTER) += src_movie.o +OBJS-$(CONFIG_MOVIE_FILTER) += src_movie.o + +# Objects duplicated from other libraries for shared builds +SHLIBOBJS += log2_tab.o + +# Windows resource file +SLIBOBJS-$(HAVE_GNU_WINDRES) += avfilterres.o + +SKIPHEADERS-$(CONFIG_LIBVIDSTAB) += vidstabutils.h + +SKIPHEADERS-$(CONFIG_QSVVPP) += qsvvpp.h +SKIPHEADERS-$(CONFIG_OPENCL) += opencl.h +SKIPHEADERS-$(CONFIG_VAAPI) += vaapi_vpp.h +SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_filter.h + +TOOLS = graph2dot +TESTPROGS = drawutils filtfmts formats integral +TESTPROGS-$(CONFIG_DNN) += dnn-layer-avgpool dnn-layer-conv2d dnn-layer-dense \ + dnn-layer-depth2space dnn-layer-mathbinary \ + dnn-layer-mathunary dnn-layer-maximum dnn-layer-pad \ + +TOOLS-$(CONFIG_LIBZMQ) += zmqsend + +clean:: + $(RM) $(CLEANSUFFIXES:%=libavfilter/dnn/%) $(CLEANSUFFIXES:%=libavfilter/opencl/%) + +OPENCL = $(subst $(SRC_PATH)/,,$(wildcard $(SRC_PATH)/libavfilter/opencl/*.cl)) +.SECONDARY: $(OPENCL:.cl=.c) +libavfilter/opencl/%.c: TAG = OPENCL +libavfilter/opencl/%.c: $(SRC_PATH)/libavfilter/opencl/%.cl + $(M)$(SRC_PATH)/tools/cl2c $< $@ \ No newline at end of file diff --git a/transcoder/tests/allfilters.c b/transcoder/tests/allfilters.c new file mode 100644 index 00000000..305676ea --- /dev/null +++ b/transcoder/tests/allfilters.c @@ -0,0 +1,591 @@ +/* + * filter registration + * Copyright (c) 2008 Vitor Sessak + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "libavutil/thread.h" +#include "avfilter.h" +#include "config.h" + +extern const AVFilter ff_af_abench; +extern const AVFilter ff_af_acompressor; +extern const AVFilter ff_af_acontrast; +extern const AVFilter ff_af_acopy; +extern const AVFilter ff_af_acue; +extern const AVFilter ff_af_acrossfade; +extern const AVFilter ff_af_acrossover; +extern const AVFilter ff_af_acrusher; +extern const AVFilter ff_af_adeclick; +extern const AVFilter ff_af_adeclip; +extern const AVFilter ff_af_adecorrelate; +extern const AVFilter ff_af_adelay; +extern const AVFilter ff_af_adenorm; +extern const AVFilter ff_af_aderivative; +extern const AVFilter ff_af_adynamicequalizer; +extern const AVFilter ff_af_adynamicsmooth; +extern const AVFilter ff_af_aecho; +extern const AVFilter ff_af_aemphasis; +extern const AVFilter ff_af_aeval; +extern const AVFilter ff_af_aexciter; +extern const AVFilter ff_af_afade; +extern const AVFilter ff_af_afftdn; +extern const AVFilter ff_af_afftfilt; +extern const AVFilter ff_af_afir; +extern const AVFilter ff_af_aformat; +extern const AVFilter ff_af_afreqshift; +extern const AVFilter ff_af_afwtdn; +extern const AVFilter ff_af_agate; +extern const AVFilter ff_af_aiir; +extern const AVFilter ff_af_aintegral; +extern const AVFilter ff_af_ainterleave; +extern const AVFilter ff_af_alatency; +extern const AVFilter ff_af_alimiter; +extern const AVFilter ff_af_allpass; +extern const AVFilter ff_af_aloop; +extern const AVFilter ff_af_amerge; +extern const AVFilter ff_af_ametadata; +extern const AVFilter ff_af_amix; +extern const AVFilter ff_af_amultiply; +extern const AVFilter ff_af_anequalizer; +extern const AVFilter ff_af_anlmdn; +extern const AVFilter ff_af_anlmf; +extern const AVFilter ff_af_anlms; +extern const AVFilter ff_af_anull; +extern const AVFilter ff_af_apad; +extern const AVFilter ff_af_aperms; +extern const AVFilter ff_af_aphaser; +extern const AVFilter ff_af_aphaseshift; +extern const AVFilter ff_af_apsyclip; +extern const AVFilter ff_af_apulsator; +extern const AVFilter ff_af_arealtime; +extern const AVFilter ff_af_aresample; +extern const AVFilter ff_af_areverse; +extern const AVFilter ff_af_arnndn; +extern const AVFilter ff_af_asdr; +extern const AVFilter ff_af_asegment; +extern const AVFilter ff_af_aselect; +extern const AVFilter ff_af_asendcmd; +extern const AVFilter ff_af_asetnsamples; +extern const AVFilter ff_af_asetpts; +extern const AVFilter ff_af_asetrate; +extern const AVFilter ff_af_asettb; +extern const AVFilter ff_af_ashowinfo; +extern const AVFilter ff_af_asidedata; +extern const AVFilter ff_af_asoftclip; +extern const AVFilter ff_af_aspectralstats; +extern const AVFilter ff_af_asplit; +extern const AVFilter ff_af_asr; +extern const AVFilter ff_af_astats; +extern const AVFilter ff_af_astreamselect; +extern const AVFilter ff_af_asubboost; +extern const AVFilter ff_af_asubcut; +extern const AVFilter ff_af_asupercut; +extern const AVFilter ff_af_asuperpass; +extern const AVFilter ff_af_asuperstop; +extern const AVFilter ff_af_atempo; +extern const AVFilter ff_af_atilt; +extern const AVFilter ff_af_atrim; +extern const AVFilter ff_af_axcorrelate; +extern const AVFilter ff_af_azmq; +extern const AVFilter ff_af_bandpass; +extern const AVFilter ff_af_bandreject; +extern const AVFilter ff_af_bass; +extern const AVFilter ff_af_biquad; +extern const AVFilter ff_af_bs2b; +extern const AVFilter ff_af_channelmap; +extern const AVFilter ff_af_channelsplit; +extern const AVFilter ff_af_chorus; +extern const AVFilter ff_af_compand; +extern const AVFilter ff_af_compensationdelay; +extern const AVFilter ff_af_crossfeed; +extern const AVFilter ff_af_crystalizer; +extern const AVFilter ff_af_dcshift; +extern const AVFilter ff_af_deesser; +extern const AVFilter ff_af_drmeter; +extern const AVFilter ff_af_dynaudnorm; +extern const AVFilter ff_af_earwax; +extern const AVFilter ff_af_ebur128; +extern const AVFilter ff_af_equalizer; +extern const AVFilter ff_af_extrastereo; +extern const AVFilter ff_af_firequalizer; +extern const AVFilter ff_af_flanger; +extern const AVFilter ff_af_haas; +extern const AVFilter ff_af_hdcd; +extern const AVFilter ff_af_headphone; +extern const AVFilter ff_af_highpass; +extern const AVFilter ff_af_highshelf; +extern const AVFilter ff_af_join; +extern const AVFilter ff_af_ladspa; +extern const AVFilter ff_af_loudnorm; +extern const AVFilter ff_af_lowpass; +extern const AVFilter ff_af_lowshelf; +extern const AVFilter ff_af_lv2; +extern const AVFilter ff_af_mcompand; +extern const AVFilter ff_af_pan; +extern const AVFilter ff_af_replaygain; +extern const AVFilter ff_af_rubberband; +extern const AVFilter ff_af_sidechaincompress; +extern const AVFilter ff_af_sidechaingate; +extern const AVFilter ff_af_silencedetect; +extern const AVFilter ff_af_silenceremove; +extern const AVFilter ff_af_sofalizer; +extern const AVFilter ff_af_speechnorm; +extern const AVFilter ff_af_stereotools; +extern const AVFilter ff_af_stereowiden; +extern const AVFilter ff_af_superequalizer; +extern const AVFilter ff_af_surround; +extern const AVFilter ff_af_treble; +extern const AVFilter ff_af_tremolo; +extern const AVFilter ff_af_vibrato; +extern const AVFilter ff_af_volume; +extern const AVFilter ff_af_volumedetect; + +extern const AVFilter ff_asrc_aevalsrc; +extern const AVFilter ff_asrc_afirsrc; +extern const AVFilter ff_asrc_anoisesrc; +extern const AVFilter ff_asrc_anullsrc; +extern const AVFilter ff_asrc_flite; +extern const AVFilter ff_asrc_hilbert; +extern const AVFilter ff_asrc_sinc; +extern const AVFilter ff_asrc_sine; + +extern const AVFilter ff_asink_anullsink; + +extern const AVFilter ff_vf_addroi; +extern const AVFilter ff_vf_alphaextract; +extern const AVFilter ff_vf_alphamerge; +extern const AVFilter ff_vf_amplify; +extern const AVFilter ff_vf_ass; +extern const AVFilter ff_vf_atadenoise; +extern const AVFilter ff_vf_avgblur; +extern const AVFilter ff_vf_avgblur_opencl; +extern const AVFilter ff_vf_avgblur_vulkan; +extern const AVFilter ff_vf_bbox; +extern const AVFilter ff_vf_bench; +extern const AVFilter ff_vf_bilateral; +extern const AVFilter ff_vf_bitplanenoise; +extern const AVFilter ff_vf_blackdetect; +extern const AVFilter ff_vf_blackframe; +extern const AVFilter ff_vf_blend; +extern const AVFilter ff_vf_bm3d; +extern const AVFilter ff_vf_boxblur; +extern const AVFilter ff_vf_boxblur_opencl; +extern const AVFilter ff_vf_bwdif; +extern const AVFilter ff_vf_cas; +extern const AVFilter ff_vf_chromaber_vulkan; +extern const AVFilter ff_vf_chromahold; +extern const AVFilter ff_vf_chromakey; +extern const AVFilter ff_vf_chromanr; +extern const AVFilter ff_vf_chromashift; +extern const AVFilter ff_vf_ciescope; +extern const AVFilter ff_vf_codecview; +extern const AVFilter ff_vf_colorbalance; +extern const AVFilter ff_vf_colorchannelmixer; +extern const AVFilter ff_vf_colorcontrast; +extern const AVFilter ff_vf_colorcorrect; +extern const AVFilter ff_vf_colorize; +extern const AVFilter ff_vf_colorkey; +extern const AVFilter ff_vf_colorkey_opencl; +extern const AVFilter ff_vf_colorhold; +extern const AVFilter ff_vf_colorlevels; +extern const AVFilter ff_vf_colormatrix; +extern const AVFilter ff_vf_colorspace; +extern const AVFilter ff_vf_colortemperature; +extern const AVFilter ff_vf_convolution; +extern const AVFilter ff_vf_convolution_opencl; +extern const AVFilter ff_vf_convolve; +extern const AVFilter ff_vf_copy; +extern const AVFilter ff_vf_coreimage; +extern const AVFilter ff_vf_cover_rect; +extern const AVFilter ff_vf_crop; +extern const AVFilter ff_vf_cropdetect; +extern const AVFilter ff_vf_cue; +extern const AVFilter ff_vf_curves; +extern const AVFilter ff_vf_datascope; +extern const AVFilter ff_vf_dblur; +extern const AVFilter ff_vf_dctdnoiz; +extern const AVFilter ff_vf_deband; +extern const AVFilter ff_vf_deblock; +extern const AVFilter ff_vf_decimate; +extern const AVFilter ff_vf_deconvolve; +extern const AVFilter ff_vf_dedot; +extern const AVFilter ff_vf_deflate; +extern const AVFilter ff_vf_deflicker; +extern const AVFilter ff_vf_deinterlace_qsv; +extern const AVFilter ff_vf_deinterlace_vaapi; +extern const AVFilter ff_vf_dejudder; +extern const AVFilter ff_vf_delogo; +extern const AVFilter ff_vf_denoise_vaapi; +extern const AVFilter ff_vf_derain; +extern const AVFilter ff_vf_deshake; +extern const AVFilter ff_vf_deshake_opencl; +extern const AVFilter ff_vf_despill; +extern const AVFilter ff_vf_detelecine; +extern const AVFilter ff_vf_dilation; +extern const AVFilter ff_vf_dilation_opencl; +extern const AVFilter ff_vf_displace; +extern const AVFilter ff_vf_dnn_classify; +extern const AVFilter ff_vf_dnn_detect; +extern const AVFilter ff_vf_dnn_processing; +extern const AVFilter ff_vf_doubleweave; +extern const AVFilter ff_vf_drawbox; +extern const AVFilter ff_vf_drawgraph; +extern const AVFilter ff_vf_drawgrid; +extern const AVFilter ff_vf_drawtext; +extern const AVFilter ff_vf_edgedetect; +extern const AVFilter ff_vf_elbg; +extern const AVFilter ff_vf_entropy; +extern const AVFilter ff_vf_epx; +extern const AVFilter ff_vf_eq; +extern const AVFilter ff_vf_erosion; +extern const AVFilter ff_vf_erosion_opencl; +extern const AVFilter ff_vf_estdif; +extern const AVFilter ff_vf_exposure; +extern const AVFilter ff_vf_extractplanes; +extern const AVFilter ff_vf_fade; +extern const AVFilter ff_vf_fftdnoiz; +extern const AVFilter ff_vf_fftfilt; +extern const AVFilter ff_vf_field; +extern const AVFilter ff_vf_fieldhint; +extern const AVFilter ff_vf_fieldmatch; +extern const AVFilter ff_vf_fieldorder; +extern const AVFilter ff_vf_fillborders; +extern const AVFilter ff_vf_find_rect; +extern const AVFilter ff_vf_flip_vulkan; +extern const AVFilter ff_vf_floodfill; +extern const AVFilter ff_vf_format; +extern const AVFilter ff_vf_fps; +extern const AVFilter ff_vf_framepack; +extern const AVFilter ff_vf_framerate; +extern const AVFilter ff_vf_framestep; +extern const AVFilter ff_vf_freezedetect; +extern const AVFilter ff_vf_freezeframes; +extern const AVFilter ff_vf_frei0r; +extern const AVFilter ff_vf_fspp; +extern const AVFilter ff_vf_gblur; +extern const AVFilter ff_vf_gblur_vulkan; +extern const AVFilter ff_vf_geq; +extern const AVFilter ff_vf_gradfun; +extern const AVFilter ff_vf_graphmonitor; +extern const AVFilter ff_vf_grayworld; +extern const AVFilter ff_vf_greyedge; +extern const AVFilter ff_vf_guided; +extern const AVFilter ff_vf_haldclut; +extern const AVFilter ff_vf_hflip; +extern const AVFilter ff_vf_hflip_vulkan; +extern const AVFilter ff_vf_histeq; +extern const AVFilter ff_vf_histogram; +extern const AVFilter ff_vf_hqdn3d; +extern const AVFilter ff_vf_hqx; +extern const AVFilter ff_vf_hstack; +extern const AVFilter ff_vf_hsvhold; +extern const AVFilter ff_vf_hsvkey; +extern const AVFilter ff_vf_hue; +extern const AVFilter ff_vf_huesaturation; +extern const AVFilter ff_vf_hwdownload; +extern const AVFilter ff_vf_hwmap; +extern const AVFilter ff_vf_hwupload; +extern const AVFilter ff_vf_hwupload_cuda; +extern const AVFilter ff_vf_hysteresis; +extern const AVFilter ff_vf_identity; +extern const AVFilter ff_vf_idet; +extern const AVFilter ff_vf_il; +extern const AVFilter ff_vf_inflate; +extern const AVFilter ff_vf_interlace; +extern const AVFilter ff_vf_interleave; +extern const AVFilter ff_vf_kerndeint; +extern const AVFilter ff_vf_kirsch; +extern const AVFilter ff_vf_lagfun; +extern const AVFilter ff_vf_latency; +extern const AVFilter ff_vf_lenscorrection; +extern const AVFilter ff_vf_lensfun; +extern const AVFilter ff_vf_libplacebo; +extern const AVFilter ff_vf_libvmaf; +extern const AVFilter ff_vf_limitdiff; +extern const AVFilter ff_vf_limiter; +extern const AVFilter ff_vf_loop; +extern const AVFilter ff_vf_lumakey; +extern const AVFilter ff_vf_lut; +extern const AVFilter ff_vf_lut1d; +extern const AVFilter ff_vf_lut2; +extern const AVFilter ff_vf_lut3d; +extern const AVFilter ff_vf_lutrgb; +extern const AVFilter ff_vf_lutyuv; +extern const AVFilter ff_vf_maskedclamp; +extern const AVFilter ff_vf_maskedmax; +extern const AVFilter ff_vf_maskedmerge; +extern const AVFilter ff_vf_maskedmin; +extern const AVFilter ff_vf_maskedthreshold; +extern const AVFilter ff_vf_maskfun; +extern const AVFilter ff_vf_mcdeint; +extern const AVFilter ff_vf_median; +extern const AVFilter ff_vf_mergeplanes; +extern const AVFilter ff_vf_mestimate; +extern const AVFilter ff_vf_metadata; +extern const AVFilter ff_vf_midequalizer; +extern const AVFilter ff_vf_minterpolate; +extern const AVFilter ff_vf_mix; +extern const AVFilter ff_vf_monochrome; +extern const AVFilter ff_vf_morpho; +extern const AVFilter ff_vf_mpdecimate; +extern const AVFilter ff_vf_msad; +extern const AVFilter ff_vf_negate; +extern const AVFilter ff_vf_nlmeans; +extern const AVFilter ff_vf_nlmeans_opencl; +extern const AVFilter ff_vf_nnedi; +extern const AVFilter ff_vf_noformat; +extern const AVFilter ff_vf_noise; +extern const AVFilter ff_vf_normalize; +extern const AVFilter ff_vf_null; +extern const AVFilter ff_vf_ocr; +extern const AVFilter ff_vf_ocv; +extern const AVFilter ff_vf_oscilloscope; +extern const AVFilter ff_vf_overlay; +extern const AVFilter ff_vf_overlay_opencl; +extern const AVFilter ff_vf_overlay_qsv; +extern const AVFilter ff_vf_overlay_vulkan; +extern const AVFilter ff_vf_overlay_cuda; +extern const AVFilter ff_vf_owdenoise; +extern const AVFilter ff_vf_pad; +extern const AVFilter ff_vf_pad_opencl; +extern const AVFilter ff_vf_palettegen; +extern const AVFilter ff_vf_paletteuse; +extern const AVFilter ff_vf_perms; +extern const AVFilter ff_vf_perspective; +extern const AVFilter ff_vf_phase; +extern const AVFilter ff_vf_photosensitivity; +extern const AVFilter ff_vf_pixdesctest; +extern const AVFilter ff_vf_pixscope; +extern const AVFilter ff_vf_pp; +extern const AVFilter ff_vf_pp7; +extern const AVFilter ff_vf_premultiply; +extern const AVFilter ff_vf_prewitt; +extern const AVFilter ff_vf_prewitt_opencl; +extern const AVFilter ff_vf_procamp_vaapi; +extern const AVFilter ff_vf_program_opencl; +extern const AVFilter ff_vf_pseudocolor; +extern const AVFilter ff_vf_psnr; +extern const AVFilter ff_vf_pullup; +extern const AVFilter ff_vf_qp; +extern const AVFilter ff_vf_random; +extern const AVFilter ff_vf_readeia608; +extern const AVFilter ff_vf_readvitc; +extern const AVFilter ff_vf_realtime; +extern const AVFilter ff_vf_remap; +extern const AVFilter ff_vf_removegrain; +extern const AVFilter ff_vf_removelogo; +extern const AVFilter ff_vf_repeatfields; +extern const AVFilter ff_vf_reverse; +extern const AVFilter ff_vf_rgbashift; +extern const AVFilter ff_vf_roberts; +extern const AVFilter ff_vf_roberts_opencl; +extern const AVFilter ff_vf_rotate; +extern const AVFilter ff_vf_sab; +extern const AVFilter ff_vf_scale; +extern const AVFilter ff_vf_scale_cuda; +extern const AVFilter ff_vf_scale_npp; +extern const AVFilter ff_vf_scale_qsv; +extern const AVFilter ff_vf_scale_vaapi; +extern const AVFilter ff_vf_scale_vulkan; +extern const AVFilter ff_vf_scale2ref; +extern const AVFilter ff_vf_scale2ref_npp; +extern const AVFilter ff_vf_scdet; +extern const AVFilter ff_vf_scharr; +extern const AVFilter ff_vf_scroll; +extern const AVFilter ff_vf_segment; +extern const AVFilter ff_vf_select; +extern const AVFilter ff_vf_selectivecolor; +extern const AVFilter ff_vf_sendcmd; +extern const AVFilter ff_vf_separatefields; +extern const AVFilter ff_vf_setdar; +extern const AVFilter ff_vf_setfield; +extern const AVFilter ff_vf_setparams; +extern const AVFilter ff_vf_setpts; +extern const AVFilter ff_vf_setrange; +extern const AVFilter ff_vf_setsar; +extern const AVFilter ff_vf_settb; +extern const AVFilter ff_vf_sharpness_vaapi; +extern const AVFilter ff_vf_shear; +extern const AVFilter ff_vf_showinfo; +extern const AVFilter ff_vf_showpalette; +extern const AVFilter ff_vf_shuffleframes; +extern const AVFilter ff_vf_shufflepixels; +extern const AVFilter ff_vf_shuffleplanes; +extern const AVFilter ff_vf_sidedata; +extern const AVFilter ff_vf_signalstats; +extern const AVFilter ff_vf_signature; +extern const AVFilter ff_vf_smartblur; +extern const AVFilter ff_vf_sobel; +extern const AVFilter ff_vf_sobel_opencl; +extern const AVFilter ff_vf_split; +extern const AVFilter ff_vf_spp; +extern const AVFilter ff_vf_sr; +extern const AVFilter ff_vf_ssim; +extern const AVFilter ff_vf_stereo3d; +extern const AVFilter ff_vf_streamselect; +extern const AVFilter ff_vf_subtitles; +extern const AVFilter ff_vf_super2xsai; +extern const AVFilter ff_vf_swaprect; +extern const AVFilter ff_vf_swapuv; +extern const AVFilter ff_vf_tblend; +extern const AVFilter ff_vf_telecine; +extern const AVFilter ff_vf_thistogram; +extern const AVFilter ff_vf_threshold; +extern const AVFilter ff_vf_thumbnail; +extern const AVFilter ff_vf_thumbnail_cuda; +extern const AVFilter ff_vf_tile; +extern const AVFilter ff_vf_tinterlace; +extern const AVFilter ff_vf_tlut2; +extern const AVFilter ff_vf_tmedian; +extern const AVFilter ff_vf_tmidequalizer; +extern const AVFilter ff_vf_tmix; +extern const AVFilter ff_vf_tonemap; +extern const AVFilter ff_vf_tonemap_opencl; +extern const AVFilter ff_vf_tonemap_vaapi; +extern const AVFilter ff_vf_tpad; +extern const AVFilter ff_vf_transpose; +extern const AVFilter ff_vf_transpose_npp; +extern const AVFilter ff_vf_transpose_opencl; +extern const AVFilter ff_vf_transpose_vaapi; +extern const AVFilter ff_vf_transpose_vulkan; +extern const AVFilter ff_vf_trim; +extern const AVFilter ff_vf_unpremultiply; +extern const AVFilter ff_vf_unsharp; +extern const AVFilter ff_vf_unsharp_opencl; +extern const AVFilter ff_vf_untile; +extern const AVFilter ff_vf_uspp; +extern const AVFilter ff_vf_v360; +extern const AVFilter ff_vf_vaguedenoiser; +extern const AVFilter ff_vf_varblur; +extern const AVFilter ff_vf_vectorscope; +extern const AVFilter ff_vf_vflip; +extern const AVFilter ff_vf_vflip_vulkan; +extern const AVFilter ff_vf_vfrdet; +extern const AVFilter ff_vf_vibrance; +extern const AVFilter ff_vf_vidstabdetect; +extern const AVFilter ff_vf_vidstabtransform; +extern const AVFilter ff_vf_vif; +extern const AVFilter ff_vf_vignette; +extern const AVFilter ff_vf_vmafmotion; +extern const AVFilter ff_vf_vpp_qsv; +extern const AVFilter ff_vf_vstack; +extern const AVFilter ff_vf_w3fdif; +extern const AVFilter ff_vf_waveform; +extern const AVFilter ff_vf_weave; +extern const AVFilter ff_vf_xbr; +extern const AVFilter ff_vf_xcorrelate; +extern const AVFilter ff_vf_xfade; +extern const AVFilter ff_vf_xfade_opencl; +extern const AVFilter ff_vf_xmedian; +extern const AVFilter ff_vf_xstack; +extern const AVFilter ff_vf_yadif; +extern const AVFilter ff_vf_yadif_cuda; +extern const AVFilter ff_vf_yadif_videotoolbox; +extern const AVFilter ff_vf_yaepblur; +extern const AVFilter ff_vf_zmq; +extern const AVFilter ff_vf_zoompan; +extern const AVFilter ff_vf_zscale; + +extern const AVFilter ff_vsrc_allrgb; +extern const AVFilter ff_vsrc_allyuv; +extern const AVFilter ff_vsrc_cellauto; +extern const AVFilter ff_vsrc_color; +extern const AVFilter ff_vsrc_colorspectrum; +extern const AVFilter ff_vsrc_coreimagesrc; +extern const AVFilter ff_vsrc_frei0r_src; +extern const AVFilter ff_vsrc_gradients; +extern const AVFilter ff_vsrc_haldclutsrc; +extern const AVFilter ff_vsrc_life; +extern const AVFilter ff_vsrc_mandelbrot; +extern const AVFilter ff_vsrc_mptestsrc; +extern const AVFilter ff_vsrc_nullsrc; +extern const AVFilter ff_vsrc_openclsrc; +extern const AVFilter ff_vsrc_pal75bars; +extern const AVFilter ff_vsrc_pal100bars; +extern const AVFilter ff_vsrc_rgbtestsrc; +extern const AVFilter ff_vsrc_sierpinski; +extern const AVFilter ff_vsrc_smptebars; +extern const AVFilter ff_vsrc_smptehdbars; +extern const AVFilter ff_vsrc_testsrc; +extern const AVFilter ff_vsrc_testsrc2; +extern const AVFilter ff_vsrc_yuvtestsrc; + +extern const AVFilter ff_vsink_nullsink; + +/* multimedia filters */ +extern const AVFilter ff_avf_abitscope; +extern const AVFilter ff_avf_adrawgraph; +extern const AVFilter ff_avf_agraphmonitor; +extern const AVFilter ff_avf_ahistogram; +extern const AVFilter ff_avf_aphasemeter; +extern const AVFilter ff_avf_avectorscope; +extern const AVFilter ff_avf_concat; +extern const AVFilter ff_avf_showcqt; +extern const AVFilter ff_avf_showfreqs; +extern const AVFilter ff_avf_showspatial; +extern const AVFilter ff_avf_showspectrum; +extern const AVFilter ff_avf_showspectrumpic; +extern const AVFilter ff_avf_showvolume; +extern const AVFilter ff_avf_showwaves; +extern const AVFilter ff_avf_showwavespic; +extern const AVFilter ff_vaf_spectrumsynth; + +/* multimedia sources */ +extern const AVFilter ff_avsrc_amovie; +extern const AVFilter ff_avsrc_movie; + +/* those filters are part of public or internal API, + * they are formatted to not be found by the grep + * as they are manually added again (due to their 'names' + * being the same while having different 'types'). */ +extern const AVFilter ff_asrc_abuffer; +extern const AVFilter ff_vsrc_buffer; +extern const AVFilter ff_asink_abuffer; +extern const AVFilter ff_vsink_buffer; +extern const AVFilter ff_af_afifo; +extern const AVFilter ff_vf_fifo; + +#include "libavfilter/filter_list.c" + + +const AVFilter *av_filter_iterate(void **opaque) +{ + uintptr_t i = (uintptr_t)*opaque; + const AVFilter *f = filter_list[i]; + + if (f) + *opaque = (void*)(i + 1); + + return f; +} + +const AVFilter *avfilter_get_by_name(const char *name) +{ + const AVFilter *f = NULL; + void *opaque = 0; + + if (!name) + return NULL; + + while ((f = av_filter_iterate(&opaque))) + if (!strcmp(f->name, name)) + return f; + + return NULL; +} \ No newline at end of file From 52190a5756e53571a6b0eb19ab423989208003fe Mon Sep 17 00:00:00 2001 From: shamama Date: Wed, 1 Nov 2023 11:32:06 +0200 Subject: [PATCH 4/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index 64a2a243..1dd705e8 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -1,7 +1,7 @@ #docker run --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -it -v ~/dev/live/transcoder:/tmp -p 6543:6543 kaltura/live-transcoder #gdb --args ./transcoder -f /tmp/config2.json -ARG CUDA_VERSION="12.2.0-devel-ubuntu20.04" +ARG CUDA_VERSION="11.1.1-devel" ARG PYTHON_VERSION=3.8 @@ -13,7 +13,7 @@ WORKDIR /build RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub && apt-get update && apt-get install -y sudo git build-essential gdbserver vim yasm cmake libtool autogen dh-autoreconf libbz2-dev libc6 libc6-dev unzip wget libnuma1 libnuma-dev frei0r-plugins-dev libgnutls28-dev libass-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev librtmp-dev libsoxr-dev libspeex-dev libtheora-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev gdb ARG FFMPEG_VERSION="n5.0" -ARG NVIDIA_CODEC_HEADERS_VERSION="n12.0.16.0" +ARG NVIDIA_CODEC_HEADERS_VERSION="n9.0.18.4" ARG PYTHON_VERSION RUN git clone --branch ${NVIDIA_CODEC_HEADERS_VERSION} https://github.com/FFmpeg/nv-codec-headers.git From 0ca4bfa497f2cdde05b89702f0c433cde52df11e Mon Sep 17 00:00:00 2001 From: shamama Date: Thu, 2 Nov 2023 11:34:06 +0200 Subject: [PATCH 5/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 10 +++------- transcoder/Makefile | 3 ++- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index 1dd705e8..a449a0f2 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -10,7 +10,7 @@ ENV TZ=Europe/Kiev RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone WORKDIR /build -RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub && apt-get update && apt-get install -y sudo git build-essential gdbserver vim yasm cmake libtool autogen dh-autoreconf libbz2-dev libc6 libc6-dev unzip wget libnuma1 libnuma-dev frei0r-plugins-dev libgnutls28-dev libass-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev librtmp-dev libsoxr-dev libspeex-dev libtheora-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev gdb +RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub && apt-get update && apt-get install -y sudo git build-essential gdbserver vim yasm cmake libtool autogen dh-autoreconf libbz2-dev libc6 libc6-dev unzip wget libnuma1 libnuma-dev frei0r-plugins-dev libgnutls28-dev libass-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev librtmp-dev libsoxr-dev libspeex-dev libtheora-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev gdb ARG FFMPEG_VERSION="n5.0" ARG NVIDIA_CODEC_HEADERS_VERSION="n9.0.18.4" @@ -23,12 +23,8 @@ RUN cd nv-codec-headers && \ RUN git clone --branch ${FFMPEG_VERSION} https://github.com/ffmpeg/ffmpeg.git - -COPY tests/Makefile /build/ffmpeg/libavfilter -COPY tests/allfilters.c /build/ffmpeg/libavfilter - -RUN cd ffmpeg && rm libavfilter/vf_sharpen_npp.c && \ - ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda-nvcc --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/targets/x86_64-linux/include --extra-ldflags="-L/usr/local/cuda/targets/x86_64-linux/lib" && \ +RUN cd ffmpeg && \ + ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/targets/x86_64-linux/include --extra-ldflags="-L/usr/local/cuda/targets/x86_64-linux/lib" && \ make -j 8 RUN apt-get install valgrind -y diff --git a/transcoder/Makefile b/transcoder/Makefile index facbde20..bcf1e2cf 100644 --- a/transcoder/Makefile +++ b/transcoder/Makefile @@ -27,11 +27,12 @@ else X264_LIB_DIR := ./x264 endif + IDIRS = -I. -I$(FFMPEG_LIB_DIR) -I"./common" -I"./utils" -I"./KMP" -I"./transcode" -I"./debug" LDIR = -L/usr/local/cuda/lib64 -L$(X264_LIB_DIR) -L$(FFMPEG_LIB_DIR)/libavfilter -L$(FFMPEG_LIB_DIR)/libswresample -L$(FFMPEG_LIB_DIR)/libswscale -L$(FFMPEG_LIB_DIR)/libwresmple -L$(FFMPEG_LIB_DIR)/libavdevice -L$(FFMPEG_LIB_DIR)/libavutil -L$(FFMPEG_LIB_DIR)/libavformat -L$(FFMPEG_LIB_DIR)/libavcodec -L$(FFMPEG_LIB_DIR)/libpostproc -L/usr/local/lib FFMPEG_LIBS = -lavfilter -lavformat -lswscale -lavcodec -lavutil -lswresample -lpostproc -lx264 -lx265 LIBS = -lm -lpthread -lz -lbz2 -ldl -CUDA_LIBS = -lnppig_static -lnppicc_static -lnppc_static -lnppidei_static -lcublas_static -lcudart_static -lculibos -lcudart -lstdc++ +CUDA_LIBS = -lnppif -lnppig_static -lnppicc_static -lnppc_static -lnppidei_static -lcublas_static -lcudart_static -lculibos -lcudart -lstdc++ CFLAGS = -Wall -g $(IDIRS) -fPIC -static -std=c11 -D_GNU_SOURCE -fexceptions CPPFLAGS = -Wall -g $(IDIRS) -fPIC -static -std=c++14 -D_GNU_SOURCE -fexceptions LDFLAGS = $(LDIR) $(LIBS) $(FFMPEG_LIBS) $(LIBS) From c0edd889a6237c2f0e70edb65676a912a6e2584f Mon Sep 17 00:00:00 2001 From: shamama Date: Thu, 2 Nov 2023 16:16:35 +0200 Subject: [PATCH 6/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index a449a0f2..1845f17a 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -1,7 +1,7 @@ #docker run --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -it -v ~/dev/live/transcoder:/tmp -p 6543:6543 kaltura/live-transcoder #gdb --args ./transcoder -f /tmp/config2.json -ARG CUDA_VERSION="11.1.1-devel" +ARG CUDA_VERSION="11.1.1-devel" ARG PYTHON_VERSION=3.8 @@ -23,8 +23,9 @@ RUN cd nv-codec-headers && \ RUN git clone --branch ${FFMPEG_VERSION} https://github.com/ffmpeg/ffmpeg.git -RUN cd ffmpeg && \ - ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/targets/x86_64-linux/include --extra-ldflags="-L/usr/local/cuda/targets/x86_64-linux/lib" && \ + +RUN cd ffmpeg && \ + ./configure --disable-doc --enable-nonfree --disable-shared --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags=-Ilocal/include --enable-gpl --enable-version3 --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --enable-libx264 --enable-libx265 --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 && \ make -j 8 RUN apt-get install valgrind -y From 0437457403fc3cbd457076792b0f9c667f7d439d Mon Sep 17 00:00:00 2001 From: shamama Date: Thu, 2 Nov 2023 16:17:09 +0200 Subject: [PATCH 7/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/Dockerfile.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/transcoder/Dockerfile.build b/transcoder/Dockerfile.build index 1845f17a..d822d287 100644 --- a/transcoder/Dockerfile.build +++ b/transcoder/Dockerfile.build @@ -13,7 +13,7 @@ WORKDIR /build RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub && apt-get update && apt-get install -y sudo git build-essential gdbserver vim yasm cmake libtool autogen dh-autoreconf libbz2-dev libc6 libc6-dev unzip wget libnuma1 libnuma-dev frei0r-plugins-dev libgnutls28-dev libass-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev librtmp-dev libsoxr-dev libspeex-dev libtheora-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev gdb ARG FFMPEG_VERSION="n5.0" -ARG NVIDIA_CODEC_HEADERS_VERSION="n9.0.18.4" +ARG NVIDIA_CODEC_HEADERS_VERSION="n9.0.18.4" ARG PYTHON_VERSION RUN git clone --branch ${NVIDIA_CODEC_HEADERS_VERSION} https://github.com/FFmpeg/nv-codec-headers.git From cd224eaecc613f7f8d49e87babe908f25f69017b Mon Sep 17 00:00:00 2001 From: shamama Date: Thu, 2 Nov 2023 16:18:23 +0200 Subject: [PATCH 8/8] Upgrade ffmpeg and Cuda in transcoder. --- transcoder/tests/Makefile | 607 ---------------------------------- transcoder/tests/allfilters.c | 591 --------------------------------- 2 files changed, 1198 deletions(-) delete mode 100644 transcoder/tests/Makefile delete mode 100644 transcoder/tests/allfilters.c diff --git a/transcoder/tests/Makefile b/transcoder/tests/Makefile deleted file mode 100644 index ebd53cbf..00000000 --- a/transcoder/tests/Makefile +++ /dev/null @@ -1,607 +0,0 @@ -NAME = avfilter -DESC = FFmpeg audio/video filtering library - -HEADERS = avfilter.h \ - buffersink.h \ - buffersrc.h \ - version.h \ - -OBJS = allfilters.o \ - audio.o \ - avfilter.o \ - avfiltergraph.o \ - buffersink.o \ - buffersrc.o \ - drawutils.o \ - fifo.o \ - formats.o \ - framepool.o \ - framequeue.o \ - graphdump.o \ - graphparser.o \ - video.o \ - -OBJS-$(HAVE_THREADS) += pthread.o - -# subsystems -OBJS-$(CONFIG_QSVVPP) += qsvvpp.o -OBJS-$(CONFIG_SCENE_SAD) += scene_sad.o -OBJS-$(CONFIG_DNN) += dnn_filter_common.o -include $(SRC_PATH)/libavfilter/dnn/Makefile - -# audio filters -OBJS-$(CONFIG_ABENCH_FILTER) += f_bench.o -OBJS-$(CONFIG_ACOMPRESSOR_FILTER) += af_sidechaincompress.o -OBJS-$(CONFIG_ACONTRAST_FILTER) += af_acontrast.o -OBJS-$(CONFIG_ACOPY_FILTER) += af_acopy.o -OBJS-$(CONFIG_ACROSSFADE_FILTER) += af_afade.o -OBJS-$(CONFIG_ACROSSOVER_FILTER) += af_acrossover.o -OBJS-$(CONFIG_ACRUSHER_FILTER) += af_acrusher.o -OBJS-$(CONFIG_ACUE_FILTER) += f_cue.o -OBJS-$(CONFIG_ADECLICK_FILTER) += af_adeclick.o -OBJS-$(CONFIG_ADECLIP_FILTER) += af_adeclick.o -OBJS-$(CONFIG_ADECORRELATE_FILTER) += af_adecorrelate.o -OBJS-$(CONFIG_ADELAY_FILTER) += af_adelay.o -OBJS-$(CONFIG_ADENORM_FILTER) += af_adenorm.o -OBJS-$(CONFIG_ADERIVATIVE_FILTER) += af_aderivative.o -OBJS-$(CONFIG_ADYNAMICEQUALIZER_FILTER) += af_adynamicequalizer.o -OBJS-$(CONFIG_ADYNAMICSMOOTH_FILTER) += af_adynamicsmooth.o -OBJS-$(CONFIG_AECHO_FILTER) += af_aecho.o -OBJS-$(CONFIG_AEMPHASIS_FILTER) += af_aemphasis.o -OBJS-$(CONFIG_AEVAL_FILTER) += aeval.o -OBJS-$(CONFIG_AEXCITER_FILTER) += af_aexciter.o -OBJS-$(CONFIG_AFADE_FILTER) += af_afade.o -OBJS-$(CONFIG_AFFTDN_FILTER) += af_afftdn.o -OBJS-$(CONFIG_AFFTFILT_FILTER) += af_afftfilt.o -OBJS-$(CONFIG_AFIR_FILTER) += af_afir.o -OBJS-$(CONFIG_AFORMAT_FILTER) += af_aformat.o -OBJS-$(CONFIG_AFREQSHIFT_FILTER) += af_afreqshift.o -OBJS-$(CONFIG_AFWTDN_FILTER) += af_afwtdn.o -OBJS-$(CONFIG_AGATE_FILTER) += af_agate.o -OBJS-$(CONFIG_AIIR_FILTER) += af_aiir.o -OBJS-$(CONFIG_AINTEGRAL_FILTER) += af_aderivative.o -OBJS-$(CONFIG_AINTERLEAVE_FILTER) += f_interleave.o -OBJS-$(CONFIG_ALATENCY_FILTER) += f_latency.o -OBJS-$(CONFIG_ALIMITER_FILTER) += af_alimiter.o -OBJS-$(CONFIG_ALLPASS_FILTER) += af_biquads.o -OBJS-$(CONFIG_ALOOP_FILTER) += f_loop.o -OBJS-$(CONFIG_AMERGE_FILTER) += af_amerge.o -OBJS-$(CONFIG_AMETADATA_FILTER) += f_metadata.o -OBJS-$(CONFIG_AMIX_FILTER) += af_amix.o -OBJS-$(CONFIG_AMULTIPLY_FILTER) += af_amultiply.o -OBJS-$(CONFIG_ANEQUALIZER_FILTER) += af_anequalizer.o -OBJS-$(CONFIG_ANLMDN_FILTER) += af_anlmdn.o -OBJS-$(CONFIG_ANLMF_FILTER) += af_anlms.o -OBJS-$(CONFIG_ANLMS_FILTER) += af_anlms.o -OBJS-$(CONFIG_ANULL_FILTER) += af_anull.o -OBJS-$(CONFIG_APAD_FILTER) += af_apad.o -OBJS-$(CONFIG_APERMS_FILTER) += f_perms.o -OBJS-$(CONFIG_APHASER_FILTER) += af_aphaser.o generate_wave_table.o -OBJS-$(CONFIG_APHASESHIFT_FILTER) += af_afreqshift.o -OBJS-$(CONFIG_APSYCLIP_FILTER) += af_apsyclip.o -OBJS-$(CONFIG_APULSATOR_FILTER) += af_apulsator.o -OBJS-$(CONFIG_AREALTIME_FILTER) += f_realtime.o -OBJS-$(CONFIG_ARESAMPLE_FILTER) += af_aresample.o -OBJS-$(CONFIG_AREVERSE_FILTER) += f_reverse.o -OBJS-$(CONFIG_ARNNDN_FILTER) += af_arnndn.o -OBJS-$(CONFIG_ASDR_FILTER) += af_asdr.o -OBJS-$(CONFIG_ASEGMENT_FILTER) += f_segment.o -OBJS-$(CONFIG_ASELECT_FILTER) += f_select.o -OBJS-$(CONFIG_ASENDCMD_FILTER) += f_sendcmd.o -OBJS-$(CONFIG_ASETNSAMPLES_FILTER) += af_asetnsamples.o -OBJS-$(CONFIG_ASETPTS_FILTER) += setpts.o -OBJS-$(CONFIG_ASETRATE_FILTER) += af_asetrate.o -OBJS-$(CONFIG_ASETTB_FILTER) += settb.o -OBJS-$(CONFIG_ASHOWINFO_FILTER) += af_ashowinfo.o -OBJS-$(CONFIG_ASIDEDATA_FILTER) += f_sidedata.o -OBJS-$(CONFIG_ASOFTCLIP_FILTER) += af_asoftclip.o -OBJS-$(CONFIG_ASPECTRALSTATS_FILTER) += af_aspectralstats.o -OBJS-$(CONFIG_ASPLIT_FILTER) += split.o -OBJS-$(CONFIG_ASR_FILTER) += af_asr.o -OBJS-$(CONFIG_ASTATS_FILTER) += af_astats.o -OBJS-$(CONFIG_ASTREAMSELECT_FILTER) += f_streamselect.o framesync.o -OBJS-$(CONFIG_ASUBBOOST_FILTER) += af_asubboost.o -OBJS-$(CONFIG_ASUBCUT_FILTER) += af_asupercut.o -OBJS-$(CONFIG_ASUPERCUT_FILTER) += af_asupercut.o -OBJS-$(CONFIG_ASUPERPASS_FILTER) += af_asupercut.o -OBJS-$(CONFIG_ASUPERSTOP_FILTER) += af_asupercut.o -OBJS-$(CONFIG_ATEMPO_FILTER) += af_atempo.o -OBJS-$(CONFIG_ATILT_FILTER) += af_atilt.o -OBJS-$(CONFIG_ATRIM_FILTER) += trim.o -OBJS-$(CONFIG_AXCORRELATE_FILTER) += af_axcorrelate.o -OBJS-$(CONFIG_AZMQ_FILTER) += f_zmq.o -OBJS-$(CONFIG_BANDPASS_FILTER) += af_biquads.o -OBJS-$(CONFIG_BANDREJECT_FILTER) += af_biquads.o -OBJS-$(CONFIG_BASS_FILTER) += af_biquads.o -OBJS-$(CONFIG_BIQUAD_FILTER) += af_biquads.o -OBJS-$(CONFIG_BS2B_FILTER) += af_bs2b.o -OBJS-$(CONFIG_CHANNELMAP_FILTER) += af_channelmap.o -OBJS-$(CONFIG_CHANNELSPLIT_FILTER) += af_channelsplit.o -OBJS-$(CONFIG_CHORUS_FILTER) += af_chorus.o generate_wave_table.o -OBJS-$(CONFIG_COMPAND_FILTER) += af_compand.o -OBJS-$(CONFIG_COMPENSATIONDELAY_FILTER) += af_compensationdelay.o -OBJS-$(CONFIG_CROSSFEED_FILTER) += af_crossfeed.o -OBJS-$(CONFIG_CRYSTALIZER_FILTER) += af_crystalizer.o -OBJS-$(CONFIG_DCSHIFT_FILTER) += af_dcshift.o -OBJS-$(CONFIG_DEESSER_FILTER) += af_deesser.o -OBJS-$(CONFIG_DRMETER_FILTER) += af_drmeter.o -OBJS-$(CONFIG_DYNAUDNORM_FILTER) += af_dynaudnorm.o -OBJS-$(CONFIG_EARWAX_FILTER) += af_earwax.o -OBJS-$(CONFIG_EBUR128_FILTER) += f_ebur128.o -OBJS-$(CONFIG_EQUALIZER_FILTER) += af_biquads.o -OBJS-$(CONFIG_EXTRASTEREO_FILTER) += af_extrastereo.o -OBJS-$(CONFIG_FIREQUALIZER_FILTER) += af_firequalizer.o -OBJS-$(CONFIG_FLANGER_FILTER) += af_flanger.o generate_wave_table.o -OBJS-$(CONFIG_HAAS_FILTER) += af_haas.o -OBJS-$(CONFIG_HDCD_FILTER) += af_hdcd.o -OBJS-$(CONFIG_HEADPHONE_FILTER) += af_headphone.o -OBJS-$(CONFIG_HIGHPASS_FILTER) += af_biquads.o -OBJS-$(CONFIG_HIGHSHELF_FILTER) += af_biquads.o -OBJS-$(CONFIG_JOIN_FILTER) += af_join.o -OBJS-$(CONFIG_LADSPA_FILTER) += af_ladspa.o -OBJS-$(CONFIG_LOUDNORM_FILTER) += af_loudnorm.o ebur128.o -OBJS-$(CONFIG_LOWPASS_FILTER) += af_biquads.o -OBJS-$(CONFIG_LOWSHELF_FILTER) += af_biquads.o -OBJS-$(CONFIG_LV2_FILTER) += af_lv2.o -OBJS-$(CONFIG_MCOMPAND_FILTER) += af_mcompand.o -OBJS-$(CONFIG_PAN_FILTER) += af_pan.o -OBJS-$(CONFIG_REPLAYGAIN_FILTER) += af_replaygain.o -OBJS-$(CONFIG_RUBBERBAND_FILTER) += af_rubberband.o -OBJS-$(CONFIG_SIDECHAINCOMPRESS_FILTER) += af_sidechaincompress.o -OBJS-$(CONFIG_SIDECHAINGATE_FILTER) += af_agate.o -OBJS-$(CONFIG_SILENCEDETECT_FILTER) += af_silencedetect.o -OBJS-$(CONFIG_SILENCEREMOVE_FILTER) += af_silenceremove.o -OBJS-$(CONFIG_SOFALIZER_FILTER) += af_sofalizer.o -OBJS-$(CONFIG_SPEECHNORM_FILTER) += af_speechnorm.o -OBJS-$(CONFIG_STEREOTOOLS_FILTER) += af_stereotools.o -OBJS-$(CONFIG_STEREOWIDEN_FILTER) += af_stereowiden.o -OBJS-$(CONFIG_SUPEREQUALIZER_FILTER) += af_superequalizer.o -OBJS-$(CONFIG_SURROUND_FILTER) += af_surround.o -OBJS-$(CONFIG_TREBLE_FILTER) += af_biquads.o -OBJS-$(CONFIG_TREMOLO_FILTER) += af_tremolo.o -OBJS-$(CONFIG_VIBRATO_FILTER) += af_vibrato.o generate_wave_table.o -OBJS-$(CONFIG_VOLUME_FILTER) += af_volume.o -OBJS-$(CONFIG_VOLUMEDETECT_FILTER) += af_volumedetect.o - -OBJS-$(CONFIG_AEVALSRC_FILTER) += aeval.o -OBJS-$(CONFIG_AFIRSRC_FILTER) += asrc_afirsrc.o -OBJS-$(CONFIG_ANOISESRC_FILTER) += asrc_anoisesrc.o -OBJS-$(CONFIG_ANULLSRC_FILTER) += asrc_anullsrc.o -OBJS-$(CONFIG_FLITE_FILTER) += asrc_flite.o -OBJS-$(CONFIG_HILBERT_FILTER) += asrc_hilbert.o -OBJS-$(CONFIG_SINC_FILTER) += asrc_sinc.o -OBJS-$(CONFIG_SINE_FILTER) += asrc_sine.o - -OBJS-$(CONFIG_ANULLSINK_FILTER) += asink_anullsink.o - -# video filters -OBJS-$(CONFIG_ADDROI_FILTER) += vf_addroi.o -OBJS-$(CONFIG_ALPHAEXTRACT_FILTER) += vf_extractplanes.o -OBJS-$(CONFIG_ALPHAMERGE_FILTER) += vf_alphamerge.o framesync.o -OBJS-$(CONFIG_AMPLIFY_FILTER) += vf_amplify.o -OBJS-$(CONFIG_ASS_FILTER) += vf_subtitles.o -OBJS-$(CONFIG_ATADENOISE_FILTER) += vf_atadenoise.o -OBJS-$(CONFIG_AVGBLUR_FILTER) += vf_avgblur.o -OBJS-$(CONFIG_AVGBLUR_OPENCL_FILTER) += vf_avgblur_opencl.o opencl.o \ - opencl/avgblur.o boxblur.o -OBJS-$(CONFIG_AVGBLUR_VULKAN_FILTER) += vf_avgblur_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_BBOX_FILTER) += bbox.o vf_bbox.o -OBJS-$(CONFIG_BENCH_FILTER) += f_bench.o -OBJS-$(CONFIG_BILATERAL_FILTER) += vf_bilateral.o -OBJS-$(CONFIG_BITPLANENOISE_FILTER) += vf_bitplanenoise.o -OBJS-$(CONFIG_BLACKDETECT_FILTER) += vf_blackdetect.o -OBJS-$(CONFIG_BLACKFRAME_FILTER) += vf_blackframe.o -OBJS-$(CONFIG_BLEND_FILTER) += vf_blend.o framesync.o -OBJS-$(CONFIG_BM3D_FILTER) += vf_bm3d.o framesync.o -OBJS-$(CONFIG_BOXBLUR_FILTER) += vf_boxblur.o boxblur.o -OBJS-$(CONFIG_BOXBLUR_OPENCL_FILTER) += vf_avgblur_opencl.o opencl.o \ - opencl/avgblur.o boxblur.o -OBJS-$(CONFIG_BWDIF_FILTER) += vf_bwdif.o yadif_common.o -OBJS-$(CONFIG_CAS_FILTER) += vf_cas.o -OBJS-$(CONFIG_CHROMABER_VULKAN_FILTER) += vf_chromaber_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_CHROMAHOLD_FILTER) += vf_chromakey.o -OBJS-$(CONFIG_CHROMAKEY_FILTER) += vf_chromakey.o -OBJS-$(CONFIG_CHROMANR_FILTER) += vf_chromanr.o -OBJS-$(CONFIG_CHROMASHIFT_FILTER) += vf_chromashift.o -OBJS-$(CONFIG_CIESCOPE_FILTER) += vf_ciescope.o -OBJS-$(CONFIG_CODECVIEW_FILTER) += vf_codecview.o qp_table.o -OBJS-$(CONFIG_COLORBALANCE_FILTER) += vf_colorbalance.o -OBJS-$(CONFIG_COLORCHANNELMIXER_FILTER) += vf_colorchannelmixer.o -OBJS-$(CONFIG_COLORCONTRAST_FILTER) += vf_colorcontrast.o -OBJS-$(CONFIG_COLORCORRECT_FILTER) += vf_colorcorrect.o -OBJS-$(CONFIG_COLORIZE_FILTER) += vf_colorize.o -OBJS-$(CONFIG_COLORKEY_FILTER) += vf_colorkey.o -OBJS-$(CONFIG_COLORKEY_OPENCL_FILTER) += vf_colorkey_opencl.o opencl.o \ - opencl/colorkey.o -OBJS-$(CONFIG_COLORHOLD_FILTER) += vf_colorkey.o -OBJS-$(CONFIG_COLORLEVELS_FILTER) += vf_colorlevels.o -OBJS-$(CONFIG_COLORMATRIX_FILTER) += vf_colormatrix.o -OBJS-$(CONFIG_COLORSPACE_FILTER) += vf_colorspace.o colorspace.o colorspacedsp.o -OBJS-$(CONFIG_COLORTEMPERATURE_FILTER) += vf_colortemperature.o -OBJS-$(CONFIG_CONVOLUTION_FILTER) += vf_convolution.o -OBJS-$(CONFIG_CONVOLUTION_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ - opencl/convolution.o -OBJS-$(CONFIG_CONVOLVE_FILTER) += vf_convolve.o framesync.o -OBJS-$(CONFIG_COPY_FILTER) += vf_copy.o -OBJS-$(CONFIG_COREIMAGE_FILTER) += vf_coreimage.o -OBJS-$(CONFIG_COVER_RECT_FILTER) += vf_cover_rect.o lavfutils.o -OBJS-$(CONFIG_CROP_FILTER) += vf_crop.o -OBJS-$(CONFIG_CROPDETECT_FILTER) += vf_cropdetect.o -OBJS-$(CONFIG_CUE_FILTER) += f_cue.o -OBJS-$(CONFIG_CURVES_FILTER) += vf_curves.o -OBJS-$(CONFIG_DATASCOPE_FILTER) += vf_datascope.o -OBJS-$(CONFIG_DBLUR_FILTER) += vf_dblur.o -OBJS-$(CONFIG_DCTDNOIZ_FILTER) += vf_dctdnoiz.o -OBJS-$(CONFIG_DEBAND_FILTER) += vf_deband.o -OBJS-$(CONFIG_DEBLOCK_FILTER) += vf_deblock.o -OBJS-$(CONFIG_DECIMATE_FILTER) += vf_decimate.o -OBJS-$(CONFIG_DERAIN_FILTER) += vf_derain.o -OBJS-$(CONFIG_DECONVOLVE_FILTER) += vf_convolve.o framesync.o -OBJS-$(CONFIG_DEDOT_FILTER) += vf_dedot.o -OBJS-$(CONFIG_DEFLATE_FILTER) += vf_neighbor.o -OBJS-$(CONFIG_DEFLICKER_FILTER) += vf_deflicker.o -OBJS-$(CONFIG_DEINTERLACE_QSV_FILTER) += vf_deinterlace_qsv.o -OBJS-$(CONFIG_DEINTERLACE_VAAPI_FILTER) += vf_deinterlace_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_DEJUDDER_FILTER) += vf_dejudder.o -OBJS-$(CONFIG_DELOGO_FILTER) += vf_delogo.o -OBJS-$(CONFIG_DENOISE_VAAPI_FILTER) += vf_misc_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_DESHAKE_OPENCL_FILTER) += vf_deshake_opencl.o opencl.o \ - opencl/deshake.o transform.o -OBJS-$(CONFIG_DESHAKE_FILTER) += vf_deshake.o transform.o -OBJS-$(CONFIG_DESPILL_FILTER) += vf_despill.o -OBJS-$(CONFIG_DETELECINE_FILTER) += vf_detelecine.o -OBJS-$(CONFIG_DILATION_FILTER) += vf_neighbor.o -OBJS-$(CONFIG_DILATION_OPENCL_FILTER) += vf_neighbor_opencl.o opencl.o \ - opencl/neighbor.o -OBJS-$(CONFIG_DISPLACE_FILTER) += vf_displace.o framesync.o -OBJS-$(CONFIG_DNN_CLASSIFY_FILTER) += vf_dnn_classify.o -OBJS-$(CONFIG_DNN_DETECT_FILTER) += vf_dnn_detect.o -OBJS-$(CONFIG_DNN_PROCESSING_FILTER) += vf_dnn_processing.o -OBJS-$(CONFIG_DOUBLEWEAVE_FILTER) += vf_weave.o -OBJS-$(CONFIG_DRAWBOX_FILTER) += vf_drawbox.o -OBJS-$(CONFIG_DRAWGRAPH_FILTER) += f_drawgraph.o -OBJS-$(CONFIG_DRAWGRID_FILTER) += vf_drawbox.o -OBJS-$(CONFIG_DRAWTEXT_FILTER) += vf_drawtext.o -OBJS-$(CONFIG_EDGEDETECT_FILTER) += vf_edgedetect.o -OBJS-$(CONFIG_ELBG_FILTER) += vf_elbg.o -OBJS-$(CONFIG_ENTROPY_FILTER) += vf_entropy.o -OBJS-$(CONFIG_EPX_FILTER) += vf_epx.o -OBJS-$(CONFIG_EQ_FILTER) += vf_eq.o -OBJS-$(CONFIG_EROSION_FILTER) += vf_neighbor.o -OBJS-$(CONFIG_EROSION_OPENCL_FILTER) += vf_neighbor_opencl.o opencl.o \ - opencl/neighbor.o -OBJS-$(CONFIG_ESTDIF_FILTER) += vf_estdif.o -OBJS-$(CONFIG_EXPOSURE_FILTER) += vf_exposure.o -OBJS-$(CONFIG_EXTRACTPLANES_FILTER) += vf_extractplanes.o -OBJS-$(CONFIG_FADE_FILTER) += vf_fade.o -OBJS-$(CONFIG_FFTDNOIZ_FILTER) += vf_fftdnoiz.o -OBJS-$(CONFIG_FFTFILT_FILTER) += vf_fftfilt.o -OBJS-$(CONFIG_FIELD_FILTER) += vf_field.o -OBJS-$(CONFIG_FIELDHINT_FILTER) += vf_fieldhint.o -OBJS-$(CONFIG_FIELDMATCH_FILTER) += vf_fieldmatch.o -OBJS-$(CONFIG_FIELDORDER_FILTER) += vf_fieldorder.o -OBJS-$(CONFIG_FILLBORDERS_FILTER) += vf_fillborders.o -OBJS-$(CONFIG_FIND_RECT_FILTER) += vf_find_rect.o lavfutils.o -OBJS-$(CONFIG_FLOODFILL_FILTER) += vf_floodfill.o -OBJS-$(CONFIG_FORMAT_FILTER) += vf_format.o -OBJS-$(CONFIG_FPS_FILTER) += vf_fps.o -OBJS-$(CONFIG_FRAMEPACK_FILTER) += vf_framepack.o -OBJS-$(CONFIG_FRAMERATE_FILTER) += vf_framerate.o -OBJS-$(CONFIG_FRAMESTEP_FILTER) += vf_framestep.o -OBJS-$(CONFIG_FREEZEDETECT_FILTER) += vf_freezedetect.o -OBJS-$(CONFIG_FREEZEFRAMES_FILTER) += vf_freezeframes.o -OBJS-$(CONFIG_FREI0R_FILTER) += vf_frei0r.o -OBJS-$(CONFIG_FSPP_FILTER) += vf_fspp.o qp_table.o -OBJS-$(CONFIG_GBLUR_FILTER) += vf_gblur.o -OBJS-$(CONFIG_GBLUR_VULKAN_FILTER) += vf_gblur_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_GEQ_FILTER) += vf_geq.o -OBJS-$(CONFIG_GRADFUN_FILTER) += vf_gradfun.o -OBJS-$(CONFIG_GRAPHMONITOR_FILTER) += f_graphmonitor.o -OBJS-$(CONFIG_GRAYWORLD_FILTER) += vf_grayworld.o -OBJS-$(CONFIG_GREYEDGE_FILTER) += vf_colorconstancy.o -OBJS-$(CONFIG_GUIDED_FILTER) += vf_guided.o -OBJS-$(CONFIG_HALDCLUT_FILTER) += vf_lut3d.o framesync.o -OBJS-$(CONFIG_HFLIP_FILTER) += vf_hflip.o -OBJS-$(CONFIG_HFLIP_VULKAN_FILTER) += vf_flip_vulkan.o vulkan.o -OBJS-$(CONFIG_HISTEQ_FILTER) += vf_histeq.o -OBJS-$(CONFIG_HISTOGRAM_FILTER) += vf_histogram.o -OBJS-$(CONFIG_HQDN3D_FILTER) += vf_hqdn3d.o -OBJS-$(CONFIG_HQX_FILTER) += vf_hqx.o -OBJS-$(CONFIG_HSTACK_FILTER) += vf_stack.o framesync.o -OBJS-$(CONFIG_HSVHOLD_FILTER) += vf_hsvkey.o -OBJS-$(CONFIG_HSVKEY_FILTER) += vf_hsvkey.o -OBJS-$(CONFIG_HUE_FILTER) += vf_hue.o -OBJS-$(CONFIG_HUESATURATION_FILTER) += vf_huesaturation.o -OBJS-$(CONFIG_HWDOWNLOAD_FILTER) += vf_hwdownload.o -OBJS-$(CONFIG_HWMAP_FILTER) += vf_hwmap.o -OBJS-$(CONFIG_HWUPLOAD_CUDA_FILTER) += vf_hwupload_cuda.o -OBJS-$(CONFIG_HWUPLOAD_FILTER) += vf_hwupload.o -OBJS-$(CONFIG_HYSTERESIS_FILTER) += vf_hysteresis.o framesync.o -OBJS-$(CONFIG_IDENTITY_FILTER) += vf_identity.o -OBJS-$(CONFIG_IDET_FILTER) += vf_idet.o -OBJS-$(CONFIG_IL_FILTER) += vf_il.o -OBJS-$(CONFIG_INFLATE_FILTER) += vf_neighbor.o -OBJS-$(CONFIG_INTERLACE_FILTER) += vf_tinterlace.o -OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o -OBJS-$(CONFIG_KERNDEINT_FILTER) += vf_kerndeint.o -OBJS-$(CONFIG_KIRSCH_FILTER) += vf_convolution.o -OBJS-$(CONFIG_LAGFUN_FILTER) += vf_lagfun.o -OBJS-$(CONFIG_LATENCY_FILTER) += f_latency.o -OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o -OBJS-$(CONFIG_LENSFUN_FILTER) += vf_lensfun.o -OBJS-$(CONFIG_LIBPLACEBO_FILTER) += vf_libplacebo.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_LIBVMAF_FILTER) += vf_libvmaf.o framesync.o -OBJS-$(CONFIG_LIMITDIFF_FILTER) += vf_limitdiff.o framesync.o -OBJS-$(CONFIG_LIMITER_FILTER) += vf_limiter.o -OBJS-$(CONFIG_LOOP_FILTER) += f_loop.o -OBJS-$(CONFIG_LUMAKEY_FILTER) += vf_lumakey.o -OBJS-$(CONFIG_LUT1D_FILTER) += vf_lut3d.o -OBJS-$(CONFIG_LUT_FILTER) += vf_lut.o -OBJS-$(CONFIG_LUT2_FILTER) += vf_lut2.o framesync.o -OBJS-$(CONFIG_LUT3D_FILTER) += vf_lut3d.o framesync.o -OBJS-$(CONFIG_LUTRGB_FILTER) += vf_lut.o -OBJS-$(CONFIG_LUTYUV_FILTER) += vf_lut.o -OBJS-$(CONFIG_MASKEDCLAMP_FILTER) += vf_maskedclamp.o framesync.o -OBJS-$(CONFIG_MASKEDMAX_FILTER) += vf_maskedminmax.o framesync.o -OBJS-$(CONFIG_MASKEDMERGE_FILTER) += vf_maskedmerge.o framesync.o -OBJS-$(CONFIG_MASKEDMIN_FILTER) += vf_maskedminmax.o framesync.o -OBJS-$(CONFIG_MASKEDTHRESHOLD_FILTER) += vf_maskedthreshold.o framesync.o -OBJS-$(CONFIG_MASKFUN_FILTER) += vf_maskfun.o -OBJS-$(CONFIG_MCDEINT_FILTER) += vf_mcdeint.o -OBJS-$(CONFIG_MEDIAN_FILTER) += vf_median.o -OBJS-$(CONFIG_MERGEPLANES_FILTER) += vf_mergeplanes.o framesync.o -OBJS-$(CONFIG_MESTIMATE_FILTER) += vf_mestimate.o motion_estimation.o -OBJS-$(CONFIG_METADATA_FILTER) += f_metadata.o -OBJS-$(CONFIG_MIDEQUALIZER_FILTER) += vf_midequalizer.o framesync.o -OBJS-$(CONFIG_MINTERPOLATE_FILTER) += vf_minterpolate.o motion_estimation.o -OBJS-$(CONFIG_MIX_FILTER) += vf_mix.o framesync.o -OBJS-$(CONFIG_MONOCHROME_FILTER) += vf_monochrome.o -OBJS-$(CONFIG_MORPHO_FILTER) += vf_morpho.o -OBJS-$(CONFIG_MPDECIMATE_FILTER) += vf_mpdecimate.o -OBJS-$(CONFIG_NEGATE_FILTER) += vf_negate.o -OBJS-$(CONFIG_NLMEANS_FILTER) += vf_nlmeans.o -OBJS-$(CONFIG_NLMEANS_OPENCL_FILTER) += vf_nlmeans_opencl.o opencl.o opencl/nlmeans.o -OBJS-$(CONFIG_NNEDI_FILTER) += vf_nnedi.o -OBJS-$(CONFIG_NOFORMAT_FILTER) += vf_format.o -OBJS-$(CONFIG_NOISE_FILTER) += vf_noise.o -OBJS-$(CONFIG_NORMALIZE_FILTER) += vf_normalize.o -OBJS-$(CONFIG_NULL_FILTER) += vf_null.o -OBJS-$(CONFIG_OCR_FILTER) += vf_ocr.o -OBJS-$(CONFIG_OCV_FILTER) += vf_libopencv.o -OBJS-$(CONFIG_OSCILLOSCOPE_FILTER) += vf_datascope.o -OBJS-$(CONFIG_OVERLAY_FILTER) += vf_overlay.o framesync.o -OBJS-$(CONFIG_OVERLAY_CUDA_FILTER) += vf_overlay_cuda.o framesync.o vf_overlay_cuda.ptx.o \ - cuda/load_helper.o -OBJS-$(CONFIG_OVERLAY_OPENCL_FILTER) += vf_overlay_opencl.o opencl.o \ - opencl/overlay.o framesync.o -OBJS-$(CONFIG_OVERLAY_QSV_FILTER) += vf_overlay_qsv.o framesync.o -OBJS-$(CONFIG_OVERLAY_VULKAN_FILTER) += vf_overlay_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_OWDENOISE_FILTER) += vf_owdenoise.o -OBJS-$(CONFIG_PAD_FILTER) += vf_pad.o -OBJS-$(CONFIG_PAD_OPENCL_FILTER) += vf_pad_opencl.o opencl.o opencl/pad.o -OBJS-$(CONFIG_PALETTEGEN_FILTER) += vf_palettegen.o -OBJS-$(CONFIG_PALETTEUSE_FILTER) += vf_paletteuse.o framesync.o -OBJS-$(CONFIG_PERMS_FILTER) += f_perms.o -OBJS-$(CONFIG_PERSPECTIVE_FILTER) += vf_perspective.o -OBJS-$(CONFIG_PHASE_FILTER) += vf_phase.o -OBJS-$(CONFIG_PHOTOSENSITIVITY_FILTER) += vf_photosensitivity.o -OBJS-$(CONFIG_PIXDESCTEST_FILTER) += vf_pixdesctest.o -OBJS-$(CONFIG_PIXSCOPE_FILTER) += vf_datascope.o -OBJS-$(CONFIG_PP_FILTER) += vf_pp.o qp_table.o -OBJS-$(CONFIG_PP7_FILTER) += vf_pp7.o qp_table.o -OBJS-$(CONFIG_PREMULTIPLY_FILTER) += vf_premultiply.o framesync.o -OBJS-$(CONFIG_PREWITT_FILTER) += vf_convolution.o -OBJS-$(CONFIG_PREWITT_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ - opencl/convolution.o -OBJS-$(CONFIG_PROCAMP_VAAPI_FILTER) += vf_procamp_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_PROGRAM_OPENCL_FILTER) += vf_program_opencl.o opencl.o framesync.o -OBJS-$(CONFIG_PSEUDOCOLOR_FILTER) += vf_pseudocolor.o -OBJS-$(CONFIG_PSNR_FILTER) += vf_psnr.o framesync.o -OBJS-$(CONFIG_PULLUP_FILTER) += vf_pullup.o -OBJS-$(CONFIG_QP_FILTER) += vf_qp.o -OBJS-$(CONFIG_RANDOM_FILTER) += vf_random.o -OBJS-$(CONFIG_READEIA608_FILTER) += vf_readeia608.o -OBJS-$(CONFIG_READVITC_FILTER) += vf_readvitc.o -OBJS-$(CONFIG_REALTIME_FILTER) += f_realtime.o -OBJS-$(CONFIG_REMAP_FILTER) += vf_remap.o framesync.o -OBJS-$(CONFIG_REMOVEGRAIN_FILTER) += vf_removegrain.o -OBJS-$(CONFIG_REMOVELOGO_FILTER) += bbox.o lswsutils.o lavfutils.o vf_removelogo.o -OBJS-$(CONFIG_REPEATFIELDS_FILTER) += vf_repeatfields.o -OBJS-$(CONFIG_REVERSE_FILTER) += f_reverse.o -OBJS-$(CONFIG_RGBASHIFT_FILTER) += vf_chromashift.o -OBJS-$(CONFIG_ROBERTS_FILTER) += vf_convolution.o -OBJS-$(CONFIG_ROBERTS_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ - opencl/convolution.o -OBJS-$(CONFIG_ROTATE_FILTER) += vf_rotate.o -OBJS-$(CONFIG_SAB_FILTER) += vf_sab.o -OBJS-$(CONFIG_SCALE_FILTER) += vf_scale.o scale_eval.o -OBJS-$(CONFIG_SCALE_CUDA_FILTER) += vf_scale_cuda.o scale_eval.o \ - vf_scale_cuda.ptx.o cuda/load_helper.o -OBJS-$(CONFIG_SCALE_NPP_FILTER) += vf_scale_npp.o scale_eval.o -OBJS-$(CONFIG_SCALE_QSV_FILTER) += vf_scale_qsv.o -OBJS-$(CONFIG_SCALE_VAAPI_FILTER) += vf_scale_vaapi.o scale_eval.o vaapi_vpp.o -OBJS-$(CONFIG_SCALE_VULKAN_FILTER) += vf_scale_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_SCALE2REF_FILTER) += vf_scale.o scale_eval.o -OBJS-$(CONFIG_SCALE2REF_NPP_FILTER) += vf_scale_npp.o scale_eval.o -OBJS-$(CONFIG_SCDET_FILTER) += vf_scdet.o -OBJS-$(CONFIG_SCHARR_FILTER) += vf_convolution.o -OBJS-$(CONFIG_SCROLL_FILTER) += vf_scroll.o -OBJS-$(CONFIG_SEGMENT_FILTER) += f_segment.o -OBJS-$(CONFIG_SELECT_FILTER) += f_select.o -OBJS-$(CONFIG_SELECTIVECOLOR_FILTER) += vf_selectivecolor.o -OBJS-$(CONFIG_SENDCMD_FILTER) += f_sendcmd.o -OBJS-$(CONFIG_SEPARATEFIELDS_FILTER) += vf_separatefields.o -OBJS-$(CONFIG_SETDAR_FILTER) += vf_aspect.o -OBJS-$(CONFIG_SETFIELD_FILTER) += vf_setparams.o -OBJS-$(CONFIG_SETPARAMS_FILTER) += vf_setparams.o -OBJS-$(CONFIG_SETPTS_FILTER) += setpts.o -OBJS-$(CONFIG_SETRANGE_FILTER) += vf_setparams.o -OBJS-$(CONFIG_SETSAR_FILTER) += vf_aspect.o -OBJS-$(CONFIG_SETTB_FILTER) += settb.o -OBJS-$(CONFIG_SHARPNESS_VAAPI_FILTER) += vf_misc_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_SHEAR_FILTER) += vf_shear.o -OBJS-$(CONFIG_SHOWINFO_FILTER) += vf_showinfo.o -OBJS-$(CONFIG_SHOWPALETTE_FILTER) += vf_showpalette.o -OBJS-$(CONFIG_SHUFFLEFRAMES_FILTER) += vf_shuffleframes.o -OBJS-$(CONFIG_SHUFFLEPIXELS_FILTER) += vf_shufflepixels.o -OBJS-$(CONFIG_SHUFFLEPLANES_FILTER) += vf_shuffleplanes.o -OBJS-$(CONFIG_SIDEDATA_FILTER) += f_sidedata.o -OBJS-$(CONFIG_SIGNALSTATS_FILTER) += vf_signalstats.o -OBJS-$(CONFIG_SIGNATURE_FILTER) += vf_signature.o -OBJS-$(CONFIG_SMARTBLUR_FILTER) += vf_smartblur.o -OBJS-$(CONFIG_SOBEL_FILTER) += vf_convolution.o -OBJS-$(CONFIG_SOBEL_OPENCL_FILTER) += vf_convolution_opencl.o opencl.o \ - opencl/convolution.o -OBJS-$(CONFIG_SPLIT_FILTER) += split.o -OBJS-$(CONFIG_SPP_FILTER) += vf_spp.o qp_table.o -OBJS-$(CONFIG_SR_FILTER) += vf_sr.o -OBJS-$(CONFIG_SSIM_FILTER) += vf_ssim.o framesync.o -OBJS-$(CONFIG_STEREO3D_FILTER) += vf_stereo3d.o -OBJS-$(CONFIG_STREAMSELECT_FILTER) += f_streamselect.o framesync.o -OBJS-$(CONFIG_SUBTITLES_FILTER) += vf_subtitles.o -OBJS-$(CONFIG_SUPER2XSAI_FILTER) += vf_super2xsai.o -OBJS-$(CONFIG_SWAPRECT_FILTER) += vf_swaprect.o -OBJS-$(CONFIG_SWAPUV_FILTER) += vf_swapuv.o -OBJS-$(CONFIG_TBLEND_FILTER) += vf_blend.o framesync.o -OBJS-$(CONFIG_TELECINE_FILTER) += vf_telecine.o -OBJS-$(CONFIG_THISTOGRAM_FILTER) += vf_histogram.o -OBJS-$(CONFIG_THRESHOLD_FILTER) += vf_threshold.o framesync.o -OBJS-$(CONFIG_THUMBNAIL_FILTER) += vf_thumbnail.o -OBJS-$(CONFIG_THUMBNAIL_CUDA_FILTER) += vf_thumbnail_cuda.o vf_thumbnail_cuda.ptx.o \ - cuda/load_helper.o -OBJS-$(CONFIG_TILE_FILTER) += vf_tile.o -OBJS-$(CONFIG_TINTERLACE_FILTER) += vf_tinterlace.o -OBJS-$(CONFIG_TLUT2_FILTER) += vf_lut2.o framesync.o -OBJS-$(CONFIG_TMEDIAN_FILTER) += vf_xmedian.o framesync.o -OBJS-$(CONFIG_TMIDEQUALIZER_FILTER) += vf_tmidequalizer.o -OBJS-$(CONFIG_TMIX_FILTER) += vf_mix.o framesync.o -OBJS-$(CONFIG_TONEMAP_FILTER) += vf_tonemap.o colorspace.o -OBJS-$(CONFIG_TONEMAP_OPENCL_FILTER) += vf_tonemap_opencl.o colorspace.o opencl.o \ - opencl/tonemap.o opencl/colorspace_common.o -OBJS-$(CONFIG_TONEMAP_VAAPI_FILTER) += vf_tonemap_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_TPAD_FILTER) += vf_tpad.o -OBJS-$(CONFIG_TRANSPOSE_FILTER) += vf_transpose.o -OBJS-$(CONFIG_TRANSPOSE_NPP_FILTER) += vf_transpose_npp.o -OBJS-$(CONFIG_TRANSPOSE_OPENCL_FILTER) += vf_transpose_opencl.o opencl.o opencl/transpose.o -OBJS-$(CONFIG_TRANSPOSE_VAAPI_FILTER) += vf_transpose_vaapi.o vaapi_vpp.o -OBJS-$(CONFIG_TRANSPOSE_VULKAN_FILTER) += vf_transpose_vulkan.o vulkan.o vulkan_filter.o -OBJS-$(CONFIG_TRIM_FILTER) += trim.o -OBJS-$(CONFIG_UNPREMULTIPLY_FILTER) += vf_premultiply.o framesync.o -OBJS-$(CONFIG_UNSHARP_FILTER) += vf_unsharp.o -OBJS-$(CONFIG_UNSHARP_OPENCL_FILTER) += vf_unsharp_opencl.o opencl.o \ - opencl/unsharp.o -OBJS-$(CONFIG_UNTILE_FILTER) += vf_untile.o -OBJS-$(CONFIG_USPP_FILTER) += vf_uspp.o qp_table.o -OBJS-$(CONFIG_V360_FILTER) += vf_v360.o -OBJS-$(CONFIG_VAGUEDENOISER_FILTER) += vf_vaguedenoiser.o -OBJS-$(CONFIG_VARBLUR_FILTER) += vf_varblur.o framesync.o -OBJS-$(CONFIG_VECTORSCOPE_FILTER) += vf_vectorscope.o -OBJS-$(CONFIG_VFLIP_FILTER) += vf_vflip.o -OBJS-$(CONFIG_VFLIP_VULKAN_FILTER) += vf_flip_vulkan.o vulkan.o -OBJS-$(CONFIG_VFRDET_FILTER) += vf_vfrdet.o -OBJS-$(CONFIG_VIBRANCE_FILTER) += vf_vibrance.o -OBJS-$(CONFIG_VIDSTABDETECT_FILTER) += vidstabutils.o vf_vidstabdetect.o -OBJS-$(CONFIG_VIDSTABTRANSFORM_FILTER) += vidstabutils.o vf_vidstabtransform.o -OBJS-$(CONFIG_VIF_FILTER) += vf_vif.o framesync.o -OBJS-$(CONFIG_VIGNETTE_FILTER) += vf_vignette.o -OBJS-$(CONFIG_VMAFMOTION_FILTER) += vf_vmafmotion.o framesync.o -OBJS-$(CONFIG_VPP_QSV_FILTER) += vf_vpp_qsv.o -OBJS-$(CONFIG_VSTACK_FILTER) += vf_stack.o framesync.o -OBJS-$(CONFIG_W3FDIF_FILTER) += vf_w3fdif.o -OBJS-$(CONFIG_WAVEFORM_FILTER) += vf_waveform.o -OBJS-$(CONFIG_WEAVE_FILTER) += vf_weave.o -OBJS-$(CONFIG_XBR_FILTER) += vf_xbr.o -OBJS-$(CONFIG_XCORRELATE_FILTER) += vf_convolve.o framesync.o -OBJS-$(CONFIG_XFADE_FILTER) += vf_xfade.o -OBJS-$(CONFIG_XFADE_OPENCL_FILTER) += vf_xfade_opencl.o opencl.o opencl/xfade.o -OBJS-$(CONFIG_XMEDIAN_FILTER) += vf_xmedian.o framesync.o -OBJS-$(CONFIG_XSTACK_FILTER) += vf_stack.o framesync.o -OBJS-$(CONFIG_YADIF_FILTER) += vf_yadif.o yadif_common.o -OBJS-$(CONFIG_YADIF_CUDA_FILTER) += vf_yadif_cuda.o vf_yadif_cuda.ptx.o \ - yadif_common.o cuda/load_helper.o -OBJS-$(CONFIG_YADIF_VIDEOTOOLBOX_FILTER) += vf_yadif_videotoolbox.o \ - metal/vf_yadif_videotoolbox.metallib.o \ - metal/utils.o \ - yadif_common.o -OBJS-$(CONFIG_YAEPBLUR_FILTER) += vf_yaepblur.o -OBJS-$(CONFIG_ZMQ_FILTER) += f_zmq.o -OBJS-$(CONFIG_ZOOMPAN_FILTER) += vf_zoompan.o -OBJS-$(CONFIG_ZSCALE_FILTER) += vf_zscale.o - -OBJS-$(CONFIG_ALLRGB_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_ALLYUV_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_CELLAUTO_FILTER) += vsrc_cellauto.o -OBJS-$(CONFIG_COLOR_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_COLORSPECTRUM_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_COREIMAGESRC_FILTER) += vf_coreimage.o -OBJS-$(CONFIG_FREI0R_SRC_FILTER) += vf_frei0r.o -OBJS-$(CONFIG_GRADIENTS_FILTER) += vsrc_gradients.o -OBJS-$(CONFIG_HALDCLUTSRC_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_LIFE_FILTER) += vsrc_life.o -OBJS-$(CONFIG_MANDELBROT_FILTER) += vsrc_mandelbrot.o -OBJS-$(CONFIG_MPTESTSRC_FILTER) += vsrc_mptestsrc.o -OBJS-$(CONFIG_NULLSRC_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_OPENCLSRC_FILTER) += vf_program_opencl.o opencl.o -OBJS-$(CONFIG_PAL75BARS_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_PAL100BARS_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_RGBTESTSRC_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_SIERPINSKI_FILTER) += vsrc_sierpinski.o -OBJS-$(CONFIG_SMPTEBARS_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_SMPTEHDBARS_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_TESTSRC_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_TESTSRC2_FILTER) += vsrc_testsrc.o -OBJS-$(CONFIG_YUVTESTSRC_FILTER) += vsrc_testsrc.o - -OBJS-$(CONFIG_NULLSINK_FILTER) += vsink_nullsink.o - -# multimedia filters -OBJS-$(CONFIG_ABITSCOPE_FILTER) += avf_abitscope.o -OBJS-$(CONFIG_ADRAWGRAPH_FILTER) += f_drawgraph.o -OBJS-$(CONFIG_AGRAPHMONITOR_FILTER) += f_graphmonitor.o -OBJS-$(CONFIG_AHISTOGRAM_FILTER) += avf_ahistogram.o -OBJS-$(CONFIG_APHASEMETER_FILTER) += avf_aphasemeter.o -OBJS-$(CONFIG_AVECTORSCOPE_FILTER) += avf_avectorscope.o -OBJS-$(CONFIG_CONCAT_FILTER) += avf_concat.o -OBJS-$(CONFIG_SHOWCQT_FILTER) += avf_showcqt.o lswsutils.o lavfutils.o -OBJS-$(CONFIG_SHOWFREQS_FILTER) += avf_showfreqs.o -OBJS-$(CONFIG_SHOWSPATIAL_FILTER) += avf_showspatial.o -OBJS-$(CONFIG_SHOWSPECTRUM_FILTER) += avf_showspectrum.o -OBJS-$(CONFIG_SHOWSPECTRUMPIC_FILTER) += avf_showspectrum.o -OBJS-$(CONFIG_SHOWVOLUME_FILTER) += avf_showvolume.o -OBJS-$(CONFIG_SHOWWAVES_FILTER) += avf_showwaves.o -OBJS-$(CONFIG_SHOWWAVESPIC_FILTER) += avf_showwaves.o -OBJS-$(CONFIG_SPECTRUMSYNTH_FILTER) += vaf_spectrumsynth.o - -# multimedia sources -OBJS-$(CONFIG_AMOVIE_FILTER) += src_movie.o -OBJS-$(CONFIG_MOVIE_FILTER) += src_movie.o - -# Objects duplicated from other libraries for shared builds -SHLIBOBJS += log2_tab.o - -# Windows resource file -SLIBOBJS-$(HAVE_GNU_WINDRES) += avfilterres.o - -SKIPHEADERS-$(CONFIG_LIBVIDSTAB) += vidstabutils.h - -SKIPHEADERS-$(CONFIG_QSVVPP) += qsvvpp.h -SKIPHEADERS-$(CONFIG_OPENCL) += opencl.h -SKIPHEADERS-$(CONFIG_VAAPI) += vaapi_vpp.h -SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_filter.h - -TOOLS = graph2dot -TESTPROGS = drawutils filtfmts formats integral -TESTPROGS-$(CONFIG_DNN) += dnn-layer-avgpool dnn-layer-conv2d dnn-layer-dense \ - dnn-layer-depth2space dnn-layer-mathbinary \ - dnn-layer-mathunary dnn-layer-maximum dnn-layer-pad \ - -TOOLS-$(CONFIG_LIBZMQ) += zmqsend - -clean:: - $(RM) $(CLEANSUFFIXES:%=libavfilter/dnn/%) $(CLEANSUFFIXES:%=libavfilter/opencl/%) - -OPENCL = $(subst $(SRC_PATH)/,,$(wildcard $(SRC_PATH)/libavfilter/opencl/*.cl)) -.SECONDARY: $(OPENCL:.cl=.c) -libavfilter/opencl/%.c: TAG = OPENCL -libavfilter/opencl/%.c: $(SRC_PATH)/libavfilter/opencl/%.cl - $(M)$(SRC_PATH)/tools/cl2c $< $@ \ No newline at end of file diff --git a/transcoder/tests/allfilters.c b/transcoder/tests/allfilters.c deleted file mode 100644 index 305676ea..00000000 --- a/transcoder/tests/allfilters.c +++ /dev/null @@ -1,591 +0,0 @@ -/* - * filter registration - * Copyright (c) 2008 Vitor Sessak - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include "libavutil/thread.h" -#include "avfilter.h" -#include "config.h" - -extern const AVFilter ff_af_abench; -extern const AVFilter ff_af_acompressor; -extern const AVFilter ff_af_acontrast; -extern const AVFilter ff_af_acopy; -extern const AVFilter ff_af_acue; -extern const AVFilter ff_af_acrossfade; -extern const AVFilter ff_af_acrossover; -extern const AVFilter ff_af_acrusher; -extern const AVFilter ff_af_adeclick; -extern const AVFilter ff_af_adeclip; -extern const AVFilter ff_af_adecorrelate; -extern const AVFilter ff_af_adelay; -extern const AVFilter ff_af_adenorm; -extern const AVFilter ff_af_aderivative; -extern const AVFilter ff_af_adynamicequalizer; -extern const AVFilter ff_af_adynamicsmooth; -extern const AVFilter ff_af_aecho; -extern const AVFilter ff_af_aemphasis; -extern const AVFilter ff_af_aeval; -extern const AVFilter ff_af_aexciter; -extern const AVFilter ff_af_afade; -extern const AVFilter ff_af_afftdn; -extern const AVFilter ff_af_afftfilt; -extern const AVFilter ff_af_afir; -extern const AVFilter ff_af_aformat; -extern const AVFilter ff_af_afreqshift; -extern const AVFilter ff_af_afwtdn; -extern const AVFilter ff_af_agate; -extern const AVFilter ff_af_aiir; -extern const AVFilter ff_af_aintegral; -extern const AVFilter ff_af_ainterleave; -extern const AVFilter ff_af_alatency; -extern const AVFilter ff_af_alimiter; -extern const AVFilter ff_af_allpass; -extern const AVFilter ff_af_aloop; -extern const AVFilter ff_af_amerge; -extern const AVFilter ff_af_ametadata; -extern const AVFilter ff_af_amix; -extern const AVFilter ff_af_amultiply; -extern const AVFilter ff_af_anequalizer; -extern const AVFilter ff_af_anlmdn; -extern const AVFilter ff_af_anlmf; -extern const AVFilter ff_af_anlms; -extern const AVFilter ff_af_anull; -extern const AVFilter ff_af_apad; -extern const AVFilter ff_af_aperms; -extern const AVFilter ff_af_aphaser; -extern const AVFilter ff_af_aphaseshift; -extern const AVFilter ff_af_apsyclip; -extern const AVFilter ff_af_apulsator; -extern const AVFilter ff_af_arealtime; -extern const AVFilter ff_af_aresample; -extern const AVFilter ff_af_areverse; -extern const AVFilter ff_af_arnndn; -extern const AVFilter ff_af_asdr; -extern const AVFilter ff_af_asegment; -extern const AVFilter ff_af_aselect; -extern const AVFilter ff_af_asendcmd; -extern const AVFilter ff_af_asetnsamples; -extern const AVFilter ff_af_asetpts; -extern const AVFilter ff_af_asetrate; -extern const AVFilter ff_af_asettb; -extern const AVFilter ff_af_ashowinfo; -extern const AVFilter ff_af_asidedata; -extern const AVFilter ff_af_asoftclip; -extern const AVFilter ff_af_aspectralstats; -extern const AVFilter ff_af_asplit; -extern const AVFilter ff_af_asr; -extern const AVFilter ff_af_astats; -extern const AVFilter ff_af_astreamselect; -extern const AVFilter ff_af_asubboost; -extern const AVFilter ff_af_asubcut; -extern const AVFilter ff_af_asupercut; -extern const AVFilter ff_af_asuperpass; -extern const AVFilter ff_af_asuperstop; -extern const AVFilter ff_af_atempo; -extern const AVFilter ff_af_atilt; -extern const AVFilter ff_af_atrim; -extern const AVFilter ff_af_axcorrelate; -extern const AVFilter ff_af_azmq; -extern const AVFilter ff_af_bandpass; -extern const AVFilter ff_af_bandreject; -extern const AVFilter ff_af_bass; -extern const AVFilter ff_af_biquad; -extern const AVFilter ff_af_bs2b; -extern const AVFilter ff_af_channelmap; -extern const AVFilter ff_af_channelsplit; -extern const AVFilter ff_af_chorus; -extern const AVFilter ff_af_compand; -extern const AVFilter ff_af_compensationdelay; -extern const AVFilter ff_af_crossfeed; -extern const AVFilter ff_af_crystalizer; -extern const AVFilter ff_af_dcshift; -extern const AVFilter ff_af_deesser; -extern const AVFilter ff_af_drmeter; -extern const AVFilter ff_af_dynaudnorm; -extern const AVFilter ff_af_earwax; -extern const AVFilter ff_af_ebur128; -extern const AVFilter ff_af_equalizer; -extern const AVFilter ff_af_extrastereo; -extern const AVFilter ff_af_firequalizer; -extern const AVFilter ff_af_flanger; -extern const AVFilter ff_af_haas; -extern const AVFilter ff_af_hdcd; -extern const AVFilter ff_af_headphone; -extern const AVFilter ff_af_highpass; -extern const AVFilter ff_af_highshelf; -extern const AVFilter ff_af_join; -extern const AVFilter ff_af_ladspa; -extern const AVFilter ff_af_loudnorm; -extern const AVFilter ff_af_lowpass; -extern const AVFilter ff_af_lowshelf; -extern const AVFilter ff_af_lv2; -extern const AVFilter ff_af_mcompand; -extern const AVFilter ff_af_pan; -extern const AVFilter ff_af_replaygain; -extern const AVFilter ff_af_rubberband; -extern const AVFilter ff_af_sidechaincompress; -extern const AVFilter ff_af_sidechaingate; -extern const AVFilter ff_af_silencedetect; -extern const AVFilter ff_af_silenceremove; -extern const AVFilter ff_af_sofalizer; -extern const AVFilter ff_af_speechnorm; -extern const AVFilter ff_af_stereotools; -extern const AVFilter ff_af_stereowiden; -extern const AVFilter ff_af_superequalizer; -extern const AVFilter ff_af_surround; -extern const AVFilter ff_af_treble; -extern const AVFilter ff_af_tremolo; -extern const AVFilter ff_af_vibrato; -extern const AVFilter ff_af_volume; -extern const AVFilter ff_af_volumedetect; - -extern const AVFilter ff_asrc_aevalsrc; -extern const AVFilter ff_asrc_afirsrc; -extern const AVFilter ff_asrc_anoisesrc; -extern const AVFilter ff_asrc_anullsrc; -extern const AVFilter ff_asrc_flite; -extern const AVFilter ff_asrc_hilbert; -extern const AVFilter ff_asrc_sinc; -extern const AVFilter ff_asrc_sine; - -extern const AVFilter ff_asink_anullsink; - -extern const AVFilter ff_vf_addroi; -extern const AVFilter ff_vf_alphaextract; -extern const AVFilter ff_vf_alphamerge; -extern const AVFilter ff_vf_amplify; -extern const AVFilter ff_vf_ass; -extern const AVFilter ff_vf_atadenoise; -extern const AVFilter ff_vf_avgblur; -extern const AVFilter ff_vf_avgblur_opencl; -extern const AVFilter ff_vf_avgblur_vulkan; -extern const AVFilter ff_vf_bbox; -extern const AVFilter ff_vf_bench; -extern const AVFilter ff_vf_bilateral; -extern const AVFilter ff_vf_bitplanenoise; -extern const AVFilter ff_vf_blackdetect; -extern const AVFilter ff_vf_blackframe; -extern const AVFilter ff_vf_blend; -extern const AVFilter ff_vf_bm3d; -extern const AVFilter ff_vf_boxblur; -extern const AVFilter ff_vf_boxblur_opencl; -extern const AVFilter ff_vf_bwdif; -extern const AVFilter ff_vf_cas; -extern const AVFilter ff_vf_chromaber_vulkan; -extern const AVFilter ff_vf_chromahold; -extern const AVFilter ff_vf_chromakey; -extern const AVFilter ff_vf_chromanr; -extern const AVFilter ff_vf_chromashift; -extern const AVFilter ff_vf_ciescope; -extern const AVFilter ff_vf_codecview; -extern const AVFilter ff_vf_colorbalance; -extern const AVFilter ff_vf_colorchannelmixer; -extern const AVFilter ff_vf_colorcontrast; -extern const AVFilter ff_vf_colorcorrect; -extern const AVFilter ff_vf_colorize; -extern const AVFilter ff_vf_colorkey; -extern const AVFilter ff_vf_colorkey_opencl; -extern const AVFilter ff_vf_colorhold; -extern const AVFilter ff_vf_colorlevels; -extern const AVFilter ff_vf_colormatrix; -extern const AVFilter ff_vf_colorspace; -extern const AVFilter ff_vf_colortemperature; -extern const AVFilter ff_vf_convolution; -extern const AVFilter ff_vf_convolution_opencl; -extern const AVFilter ff_vf_convolve; -extern const AVFilter ff_vf_copy; -extern const AVFilter ff_vf_coreimage; -extern const AVFilter ff_vf_cover_rect; -extern const AVFilter ff_vf_crop; -extern const AVFilter ff_vf_cropdetect; -extern const AVFilter ff_vf_cue; -extern const AVFilter ff_vf_curves; -extern const AVFilter ff_vf_datascope; -extern const AVFilter ff_vf_dblur; -extern const AVFilter ff_vf_dctdnoiz; -extern const AVFilter ff_vf_deband; -extern const AVFilter ff_vf_deblock; -extern const AVFilter ff_vf_decimate; -extern const AVFilter ff_vf_deconvolve; -extern const AVFilter ff_vf_dedot; -extern const AVFilter ff_vf_deflate; -extern const AVFilter ff_vf_deflicker; -extern const AVFilter ff_vf_deinterlace_qsv; -extern const AVFilter ff_vf_deinterlace_vaapi; -extern const AVFilter ff_vf_dejudder; -extern const AVFilter ff_vf_delogo; -extern const AVFilter ff_vf_denoise_vaapi; -extern const AVFilter ff_vf_derain; -extern const AVFilter ff_vf_deshake; -extern const AVFilter ff_vf_deshake_opencl; -extern const AVFilter ff_vf_despill; -extern const AVFilter ff_vf_detelecine; -extern const AVFilter ff_vf_dilation; -extern const AVFilter ff_vf_dilation_opencl; -extern const AVFilter ff_vf_displace; -extern const AVFilter ff_vf_dnn_classify; -extern const AVFilter ff_vf_dnn_detect; -extern const AVFilter ff_vf_dnn_processing; -extern const AVFilter ff_vf_doubleweave; -extern const AVFilter ff_vf_drawbox; -extern const AVFilter ff_vf_drawgraph; -extern const AVFilter ff_vf_drawgrid; -extern const AVFilter ff_vf_drawtext; -extern const AVFilter ff_vf_edgedetect; -extern const AVFilter ff_vf_elbg; -extern const AVFilter ff_vf_entropy; -extern const AVFilter ff_vf_epx; -extern const AVFilter ff_vf_eq; -extern const AVFilter ff_vf_erosion; -extern const AVFilter ff_vf_erosion_opencl; -extern const AVFilter ff_vf_estdif; -extern const AVFilter ff_vf_exposure; -extern const AVFilter ff_vf_extractplanes; -extern const AVFilter ff_vf_fade; -extern const AVFilter ff_vf_fftdnoiz; -extern const AVFilter ff_vf_fftfilt; -extern const AVFilter ff_vf_field; -extern const AVFilter ff_vf_fieldhint; -extern const AVFilter ff_vf_fieldmatch; -extern const AVFilter ff_vf_fieldorder; -extern const AVFilter ff_vf_fillborders; -extern const AVFilter ff_vf_find_rect; -extern const AVFilter ff_vf_flip_vulkan; -extern const AVFilter ff_vf_floodfill; -extern const AVFilter ff_vf_format; -extern const AVFilter ff_vf_fps; -extern const AVFilter ff_vf_framepack; -extern const AVFilter ff_vf_framerate; -extern const AVFilter ff_vf_framestep; -extern const AVFilter ff_vf_freezedetect; -extern const AVFilter ff_vf_freezeframes; -extern const AVFilter ff_vf_frei0r; -extern const AVFilter ff_vf_fspp; -extern const AVFilter ff_vf_gblur; -extern const AVFilter ff_vf_gblur_vulkan; -extern const AVFilter ff_vf_geq; -extern const AVFilter ff_vf_gradfun; -extern const AVFilter ff_vf_graphmonitor; -extern const AVFilter ff_vf_grayworld; -extern const AVFilter ff_vf_greyedge; -extern const AVFilter ff_vf_guided; -extern const AVFilter ff_vf_haldclut; -extern const AVFilter ff_vf_hflip; -extern const AVFilter ff_vf_hflip_vulkan; -extern const AVFilter ff_vf_histeq; -extern const AVFilter ff_vf_histogram; -extern const AVFilter ff_vf_hqdn3d; -extern const AVFilter ff_vf_hqx; -extern const AVFilter ff_vf_hstack; -extern const AVFilter ff_vf_hsvhold; -extern const AVFilter ff_vf_hsvkey; -extern const AVFilter ff_vf_hue; -extern const AVFilter ff_vf_huesaturation; -extern const AVFilter ff_vf_hwdownload; -extern const AVFilter ff_vf_hwmap; -extern const AVFilter ff_vf_hwupload; -extern const AVFilter ff_vf_hwupload_cuda; -extern const AVFilter ff_vf_hysteresis; -extern const AVFilter ff_vf_identity; -extern const AVFilter ff_vf_idet; -extern const AVFilter ff_vf_il; -extern const AVFilter ff_vf_inflate; -extern const AVFilter ff_vf_interlace; -extern const AVFilter ff_vf_interleave; -extern const AVFilter ff_vf_kerndeint; -extern const AVFilter ff_vf_kirsch; -extern const AVFilter ff_vf_lagfun; -extern const AVFilter ff_vf_latency; -extern const AVFilter ff_vf_lenscorrection; -extern const AVFilter ff_vf_lensfun; -extern const AVFilter ff_vf_libplacebo; -extern const AVFilter ff_vf_libvmaf; -extern const AVFilter ff_vf_limitdiff; -extern const AVFilter ff_vf_limiter; -extern const AVFilter ff_vf_loop; -extern const AVFilter ff_vf_lumakey; -extern const AVFilter ff_vf_lut; -extern const AVFilter ff_vf_lut1d; -extern const AVFilter ff_vf_lut2; -extern const AVFilter ff_vf_lut3d; -extern const AVFilter ff_vf_lutrgb; -extern const AVFilter ff_vf_lutyuv; -extern const AVFilter ff_vf_maskedclamp; -extern const AVFilter ff_vf_maskedmax; -extern const AVFilter ff_vf_maskedmerge; -extern const AVFilter ff_vf_maskedmin; -extern const AVFilter ff_vf_maskedthreshold; -extern const AVFilter ff_vf_maskfun; -extern const AVFilter ff_vf_mcdeint; -extern const AVFilter ff_vf_median; -extern const AVFilter ff_vf_mergeplanes; -extern const AVFilter ff_vf_mestimate; -extern const AVFilter ff_vf_metadata; -extern const AVFilter ff_vf_midequalizer; -extern const AVFilter ff_vf_minterpolate; -extern const AVFilter ff_vf_mix; -extern const AVFilter ff_vf_monochrome; -extern const AVFilter ff_vf_morpho; -extern const AVFilter ff_vf_mpdecimate; -extern const AVFilter ff_vf_msad; -extern const AVFilter ff_vf_negate; -extern const AVFilter ff_vf_nlmeans; -extern const AVFilter ff_vf_nlmeans_opencl; -extern const AVFilter ff_vf_nnedi; -extern const AVFilter ff_vf_noformat; -extern const AVFilter ff_vf_noise; -extern const AVFilter ff_vf_normalize; -extern const AVFilter ff_vf_null; -extern const AVFilter ff_vf_ocr; -extern const AVFilter ff_vf_ocv; -extern const AVFilter ff_vf_oscilloscope; -extern const AVFilter ff_vf_overlay; -extern const AVFilter ff_vf_overlay_opencl; -extern const AVFilter ff_vf_overlay_qsv; -extern const AVFilter ff_vf_overlay_vulkan; -extern const AVFilter ff_vf_overlay_cuda; -extern const AVFilter ff_vf_owdenoise; -extern const AVFilter ff_vf_pad; -extern const AVFilter ff_vf_pad_opencl; -extern const AVFilter ff_vf_palettegen; -extern const AVFilter ff_vf_paletteuse; -extern const AVFilter ff_vf_perms; -extern const AVFilter ff_vf_perspective; -extern const AVFilter ff_vf_phase; -extern const AVFilter ff_vf_photosensitivity; -extern const AVFilter ff_vf_pixdesctest; -extern const AVFilter ff_vf_pixscope; -extern const AVFilter ff_vf_pp; -extern const AVFilter ff_vf_pp7; -extern const AVFilter ff_vf_premultiply; -extern const AVFilter ff_vf_prewitt; -extern const AVFilter ff_vf_prewitt_opencl; -extern const AVFilter ff_vf_procamp_vaapi; -extern const AVFilter ff_vf_program_opencl; -extern const AVFilter ff_vf_pseudocolor; -extern const AVFilter ff_vf_psnr; -extern const AVFilter ff_vf_pullup; -extern const AVFilter ff_vf_qp; -extern const AVFilter ff_vf_random; -extern const AVFilter ff_vf_readeia608; -extern const AVFilter ff_vf_readvitc; -extern const AVFilter ff_vf_realtime; -extern const AVFilter ff_vf_remap; -extern const AVFilter ff_vf_removegrain; -extern const AVFilter ff_vf_removelogo; -extern const AVFilter ff_vf_repeatfields; -extern const AVFilter ff_vf_reverse; -extern const AVFilter ff_vf_rgbashift; -extern const AVFilter ff_vf_roberts; -extern const AVFilter ff_vf_roberts_opencl; -extern const AVFilter ff_vf_rotate; -extern const AVFilter ff_vf_sab; -extern const AVFilter ff_vf_scale; -extern const AVFilter ff_vf_scale_cuda; -extern const AVFilter ff_vf_scale_npp; -extern const AVFilter ff_vf_scale_qsv; -extern const AVFilter ff_vf_scale_vaapi; -extern const AVFilter ff_vf_scale_vulkan; -extern const AVFilter ff_vf_scale2ref; -extern const AVFilter ff_vf_scale2ref_npp; -extern const AVFilter ff_vf_scdet; -extern const AVFilter ff_vf_scharr; -extern const AVFilter ff_vf_scroll; -extern const AVFilter ff_vf_segment; -extern const AVFilter ff_vf_select; -extern const AVFilter ff_vf_selectivecolor; -extern const AVFilter ff_vf_sendcmd; -extern const AVFilter ff_vf_separatefields; -extern const AVFilter ff_vf_setdar; -extern const AVFilter ff_vf_setfield; -extern const AVFilter ff_vf_setparams; -extern const AVFilter ff_vf_setpts; -extern const AVFilter ff_vf_setrange; -extern const AVFilter ff_vf_setsar; -extern const AVFilter ff_vf_settb; -extern const AVFilter ff_vf_sharpness_vaapi; -extern const AVFilter ff_vf_shear; -extern const AVFilter ff_vf_showinfo; -extern const AVFilter ff_vf_showpalette; -extern const AVFilter ff_vf_shuffleframes; -extern const AVFilter ff_vf_shufflepixels; -extern const AVFilter ff_vf_shuffleplanes; -extern const AVFilter ff_vf_sidedata; -extern const AVFilter ff_vf_signalstats; -extern const AVFilter ff_vf_signature; -extern const AVFilter ff_vf_smartblur; -extern const AVFilter ff_vf_sobel; -extern const AVFilter ff_vf_sobel_opencl; -extern const AVFilter ff_vf_split; -extern const AVFilter ff_vf_spp; -extern const AVFilter ff_vf_sr; -extern const AVFilter ff_vf_ssim; -extern const AVFilter ff_vf_stereo3d; -extern const AVFilter ff_vf_streamselect; -extern const AVFilter ff_vf_subtitles; -extern const AVFilter ff_vf_super2xsai; -extern const AVFilter ff_vf_swaprect; -extern const AVFilter ff_vf_swapuv; -extern const AVFilter ff_vf_tblend; -extern const AVFilter ff_vf_telecine; -extern const AVFilter ff_vf_thistogram; -extern const AVFilter ff_vf_threshold; -extern const AVFilter ff_vf_thumbnail; -extern const AVFilter ff_vf_thumbnail_cuda; -extern const AVFilter ff_vf_tile; -extern const AVFilter ff_vf_tinterlace; -extern const AVFilter ff_vf_tlut2; -extern const AVFilter ff_vf_tmedian; -extern const AVFilter ff_vf_tmidequalizer; -extern const AVFilter ff_vf_tmix; -extern const AVFilter ff_vf_tonemap; -extern const AVFilter ff_vf_tonemap_opencl; -extern const AVFilter ff_vf_tonemap_vaapi; -extern const AVFilter ff_vf_tpad; -extern const AVFilter ff_vf_transpose; -extern const AVFilter ff_vf_transpose_npp; -extern const AVFilter ff_vf_transpose_opencl; -extern const AVFilter ff_vf_transpose_vaapi; -extern const AVFilter ff_vf_transpose_vulkan; -extern const AVFilter ff_vf_trim; -extern const AVFilter ff_vf_unpremultiply; -extern const AVFilter ff_vf_unsharp; -extern const AVFilter ff_vf_unsharp_opencl; -extern const AVFilter ff_vf_untile; -extern const AVFilter ff_vf_uspp; -extern const AVFilter ff_vf_v360; -extern const AVFilter ff_vf_vaguedenoiser; -extern const AVFilter ff_vf_varblur; -extern const AVFilter ff_vf_vectorscope; -extern const AVFilter ff_vf_vflip; -extern const AVFilter ff_vf_vflip_vulkan; -extern const AVFilter ff_vf_vfrdet; -extern const AVFilter ff_vf_vibrance; -extern const AVFilter ff_vf_vidstabdetect; -extern const AVFilter ff_vf_vidstabtransform; -extern const AVFilter ff_vf_vif; -extern const AVFilter ff_vf_vignette; -extern const AVFilter ff_vf_vmafmotion; -extern const AVFilter ff_vf_vpp_qsv; -extern const AVFilter ff_vf_vstack; -extern const AVFilter ff_vf_w3fdif; -extern const AVFilter ff_vf_waveform; -extern const AVFilter ff_vf_weave; -extern const AVFilter ff_vf_xbr; -extern const AVFilter ff_vf_xcorrelate; -extern const AVFilter ff_vf_xfade; -extern const AVFilter ff_vf_xfade_opencl; -extern const AVFilter ff_vf_xmedian; -extern const AVFilter ff_vf_xstack; -extern const AVFilter ff_vf_yadif; -extern const AVFilter ff_vf_yadif_cuda; -extern const AVFilter ff_vf_yadif_videotoolbox; -extern const AVFilter ff_vf_yaepblur; -extern const AVFilter ff_vf_zmq; -extern const AVFilter ff_vf_zoompan; -extern const AVFilter ff_vf_zscale; - -extern const AVFilter ff_vsrc_allrgb; -extern const AVFilter ff_vsrc_allyuv; -extern const AVFilter ff_vsrc_cellauto; -extern const AVFilter ff_vsrc_color; -extern const AVFilter ff_vsrc_colorspectrum; -extern const AVFilter ff_vsrc_coreimagesrc; -extern const AVFilter ff_vsrc_frei0r_src; -extern const AVFilter ff_vsrc_gradients; -extern const AVFilter ff_vsrc_haldclutsrc; -extern const AVFilter ff_vsrc_life; -extern const AVFilter ff_vsrc_mandelbrot; -extern const AVFilter ff_vsrc_mptestsrc; -extern const AVFilter ff_vsrc_nullsrc; -extern const AVFilter ff_vsrc_openclsrc; -extern const AVFilter ff_vsrc_pal75bars; -extern const AVFilter ff_vsrc_pal100bars; -extern const AVFilter ff_vsrc_rgbtestsrc; -extern const AVFilter ff_vsrc_sierpinski; -extern const AVFilter ff_vsrc_smptebars; -extern const AVFilter ff_vsrc_smptehdbars; -extern const AVFilter ff_vsrc_testsrc; -extern const AVFilter ff_vsrc_testsrc2; -extern const AVFilter ff_vsrc_yuvtestsrc; - -extern const AVFilter ff_vsink_nullsink; - -/* multimedia filters */ -extern const AVFilter ff_avf_abitscope; -extern const AVFilter ff_avf_adrawgraph; -extern const AVFilter ff_avf_agraphmonitor; -extern const AVFilter ff_avf_ahistogram; -extern const AVFilter ff_avf_aphasemeter; -extern const AVFilter ff_avf_avectorscope; -extern const AVFilter ff_avf_concat; -extern const AVFilter ff_avf_showcqt; -extern const AVFilter ff_avf_showfreqs; -extern const AVFilter ff_avf_showspatial; -extern const AVFilter ff_avf_showspectrum; -extern const AVFilter ff_avf_showspectrumpic; -extern const AVFilter ff_avf_showvolume; -extern const AVFilter ff_avf_showwaves; -extern const AVFilter ff_avf_showwavespic; -extern const AVFilter ff_vaf_spectrumsynth; - -/* multimedia sources */ -extern const AVFilter ff_avsrc_amovie; -extern const AVFilter ff_avsrc_movie; - -/* those filters are part of public or internal API, - * they are formatted to not be found by the grep - * as they are manually added again (due to their 'names' - * being the same while having different 'types'). */ -extern const AVFilter ff_asrc_abuffer; -extern const AVFilter ff_vsrc_buffer; -extern const AVFilter ff_asink_abuffer; -extern const AVFilter ff_vsink_buffer; -extern const AVFilter ff_af_afifo; -extern const AVFilter ff_vf_fifo; - -#include "libavfilter/filter_list.c" - - -const AVFilter *av_filter_iterate(void **opaque) -{ - uintptr_t i = (uintptr_t)*opaque; - const AVFilter *f = filter_list[i]; - - if (f) - *opaque = (void*)(i + 1); - - return f; -} - -const AVFilter *avfilter_get_by_name(const char *name) -{ - const AVFilter *f = NULL; - void *opaque = 0; - - if (!name) - return NULL; - - while ((f = av_filter_iterate(&opaque))) - if (!strcmp(f->name, name)) - return f; - - return NULL; -} \ No newline at end of file