summaryrefslogtreecommitdiff
path: root/configure
Commit message (Collapse)AuthorAge
* lavfi: add filter dnn_detect for object detectionGuo, Yejun2021-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Below are the example steps to do object detection: 1. download and install l_openvino_toolkit_p_2021.1.110.tgz from https://software.intel.com/content/www/us/en/develop/tools/openvino-toolkit/download.html or, we can get source code (tag 2021.1), build and install. 2. export LD_LIBRARY_PATH with openvino settings, for example: .../deployment_tools/inference_engine/lib/intel64/:.../deployment_tools/inference_engine/external/tbb/lib/ 3. rebuild ffmpeg from source code with configure option: --enable-libopenvino --extra-cflags='-I.../deployment_tools/inference_engine/include/' --extra-ldflags='-L.../deployment_tools/inference_engine/lib/intel64' 4. download model files and test image wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.bin wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.xml wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/models/openvino/2021.1/face-detection-adas-0001.label wget https://github.com/guoyejun/ffmpeg_dnn/raw/main/images/cici.jpg 5. run ffmpeg with: ./ffmpeg -i cici.jpg -vf dnn_detect=dnn_backend=openvino:model=face-detection-adas-0001.xml:input=data:output=detection_out:confidence=0.6:labels=face-detection-adas-0001.label,showinfo -f null - We'll see the detect result as below: [Parsed_showinfo_1 @ 0x560c21ecbe40] side data - detection bounding boxes: [Parsed_showinfo_1 @ 0x560c21ecbe40] source: face-detection-adas-0001.xml [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 0, region: (1005, 813) -> (1086, 905), label: face, confidence: 10000/10000. [Parsed_showinfo_1 @ 0x560c21ecbe40] index: 1, region: (888, 839) -> (967, 926), label: face, confidence: 6917/10000. There are two faces detected with confidence 100% and 69.17%. Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
* configure: select child muxers for rtp_mpegtsGyan Doshi2021-03-21
|
* lavc/videotoolboxenc: Add support for HEVC with Alpha.Hironori Bono2021-03-19
| | | | | | | | | | | | | | | This change supports the "HEVC Video with Alpha" profile introduced in WWDC 2019 <https://developer.apple.com/videos/play/wwdc2019/506/>. (This change is a partial fix for Ticket #7965.) For example, the following command converts an animation PNG file to an HEVC with Alpha video: ./ffmpeg -i fate-suite/apng/clock.png -c:v hevc_videotoolbox -allow_sw 1 -alpha_quality 0.75 -vtag hvc1 clock.mov (This change uses the "HEVC Video with Alpha" profile only when the '-alpha_quality' value is not 0 for backward compatibility.) Signed-off-by: Hironori Bono <bouno@rouge.plala.or.jp>
* libavformat: add librist protocolPaul B Mahol2021-03-13
| | | | | | This work is sponsored by Open Broadcast Systems. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/gopher: Add support for Gopher over TLSparazyd2021-03-11
| | | | | | | | | | | | | | | | This commit adds a "gophers" handler to the gopher protocol. gophers is a community-adopted protocol that acts the same way like normal gopher with the added TLS encapsulation. The gophers protocol is supported by gopher servers like geomydae(8), and clients like curl(1), clic(1), and hurl(1). This commit also adds compilation guards to both gopher and gophers, since now there are two protocols in the file it makes sense to have this addition. Signed-off-by: parazyd <parazyd@dyne.org> Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/gopher: Add default_whitelist to ff_gopher_protocolparazyd2021-03-11
| | | | | Signed-off-by: parazyd <parazyd@dyne.org> Signed-off-by: Marton Balint <cus@passwd.hu>
* Handle AVID MJPEG streams directly in the MJPEG decoder.Anton Khirnov2021-02-25
| | | | | | | | | | | | | | | | | | | | AVID streams - currently handled by the AVRN decoder - can be (depending on extradata contents) either MJPEG or raw video. To decode the MJPEG variant, the AVRN decoder currently instantiates a MJPEG decoder internally and forwards decoded frames to the caller (possibly after cropping them). This is suboptimal, because the AVRN decoder does not forward all the features of the internal MJPEG decoder, such as direct rendering. Handling such forwarding in a full and generic manner would be quite hard, so it is simpler to just handle those streams in the MJPEG decoder directly. The AVRN decoder, which now handles only the raw streams, can now be marked as supporting direct rendering. This also removes the last remaining internal use of the obsolete decoding API.
* avformat/isom: Split movaudio/movvideo tags off into a separate fileAndreas Rheinhardt2021-02-23
| | | | | | | | | The NUT and avi demuxers only need ff_codec_movvideo_tags and so this removes a dependency on the rest of isom.c as well as on mpeg4audio.c (which isom depends on); it is similar for the Matroska demuxer and muxers, except that the mpeg4audio.c dependency can't be avoided. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* configure: Remove mpegvideo_enc dependency from ljpeg encoderAndreas Rheinhardt2021-02-23
| | | | | | | | It only existed because some code in mjpegenc_common.c relied on it; yet said code was actually only used by mjpegenc.c and has been moved there. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* configure, libavcodec/Makefile: Fix avrn dependenciesAndreas Rheinhardt2021-02-23
| | | | | | | | | | | The avrn decoder actually only needs one thing: The MJPEG decoder. Instead the Makefile made it compile mjpegdec and configure required some of the prerequisites of the MJPEG decoder (exif and jpegtables). Even if all the prerequisites of the MJPEG decoder were required, it would still not make the MJPEG decoder usable, because for that the MJPEG decoder needs to be in the list of codecs in codec_list.c. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* configure, libavcodec/Makefile: Remove spurious CAF demuxer dependenciesAndreas Rheinhardt2021-02-23
| | | | | | Forgotten in 604fbb3132e88727e496c96c92cfe02748c25a1a. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* configure: use no-narrowing for cuda-llvm compilationMatt Oliver2021-02-22
| | | | | | | This fixes llvm compiler generating errors about narrowing conversion with recent releases. Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avcodec: add initial exr image encoderPaul B Mahol2021-02-18
|
* avcodec/aacdec_fixed: Move fixed-point sinewin tables to its only userAndreas Rheinhardt2021-02-07
| | | | | | | | | | | | | | | | | | | | | | The fixed-point AAC decoder is the only user of the fixed-point sinewin tables from sinewin; and it only uses a few of them (about 10% when counting by size). This means that guarding initializing these tables by an AVOnce (as done in 3719122065863f701026632f610175980d42b05a) is unnecessary for them. Furthermore the array of pointers to the individual arrays is also unneeded. Therefore this commit moves these tables directly into aacdec_fixed.c; this is done by ridding the original sinewin.h and sinewin_tablegen.h headers completely of any fixed-point code at the cost of a bit of duplicated code (the alternative is an ugly ifdef-mess). This saves about 58KB from the binary when using hardcoded tables (as these tables are hardcoded in this scenario); when not using hardcoded tables, most of these savings only affect the .bss segment, but the rest (< 1KB) contains relocations (i.e. savings in .data.rel.ro). Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avformat/mxf: add platform local tagLimin Wang2021-02-05
| | | | | | | | | | | Please check the string of platform with below command: ./ffmpeg -i ../fate-suite/mxf/Sony-00001.mxf -c:v copy -c:a copy out.mxf ./ffmpeg -i out.mxf .... application_platform: Lavf (linux) Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* configure: add fallback to $arch in msvc assembler check.Reimar Döffinger2021-01-25
| | | | | | | | | Setting the defaults for $arch happens only later, so the current code would not set AS correctly if --arch was not specified on the command-line. Fix it by adding an explicit fallback to $arch_default. Signed-off-by: Josh Dekker <josh@itanimul.li>
* avcodec/librav1e: Pass through timestamps as opaque user dataDerek Buitenhuis2021-01-17
| | | | | | | | | | | avcodec has no facilities to generate timestamps properly from output frame numbers (and it would be wrong for VFR anyway), so pass through the timestamps using rav1e's opaque user data feature, which was added in v0.4.0. This bumps the minimum librav1e version to 0.4.0. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* configure: update copyright yearLynne2021-01-01
|
* configure, libavcodec/speedhq: Fix compiling SpeedHQ encoderAndreas Rheinhardt2020-12-31
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* hwcontext_drm: make dependency on Linux kernel headers optionalLynne2020-12-30
| | | | | | | | | | This was introduced in version 4.6. And may not exist all without an optional package. So to prevent a hard dependency on needing the Linux kernel headers to compile, make this optional. Also ignore the status of the ioctl, since it may fail on older kernels which don't support it. It's okay to ignore as its not fatal and any serious errors will be caught later by the mmap call.
* smvjpegdec: merge into mjpegdecAnton Khirnov2020-12-10
| | | | | | | | | | | | | | | | | | | | | | | SMVJPEG stores frames as slices of a big JPEG image. The decoder is implemented as a wrapper that instantiates a full internal MJPEG decoder, then forwards the decoded frames with offset data pointers. This is unnecessarily complex and fragile, not supporting useful decoder capabilities like direct rendering. Re-implement the decoder inside the MJPEG decoder, which is accomplished by returning each decoded frame multiple times, setting cropping information appropriately on each instance. One peculiar aspect of the previous design is that since - the smvjpeg decoder returns one frame per input packet - there are multiple frames in each packets (the aformentioned slices) the demuxer needs to return each packet multiple times. This is now also eliminated - the demuxer now returns each packet exactly once, with the duration set to the number of frames it decodes to. This also removes one of the last remaining internal uses of the old video decoding API.
* avcodec/mss4: Don't duplicate standard JPEG tablesAndreas Rheinhardt2020-12-08
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avcodec/dxva2: add AV1 decode supportHendrik Leppkes2020-11-12
| | | | Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
* avcodec/nvdec: add av1 hwaccelTimo Rothenpieler2020-11-11
| | | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org> Co-authored-by: James Almer <jamrial@gmail.com>
* avfilter/af_asoftclip: add oversampling supportPaul B Mahol2020-11-10
|
* avcodec: add av1 VAAPI decoderFei Wang2020-11-02
| | | | | | | | | Example cmdline: ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -v verbose \ -c:v av1 -i input.ivf -pix_fmt yuv420p -vsync passthrough -f md5 \ -y out.md5 Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* configure: check for nvdec/cuvid AV1 supportTimo Rothenpieler2020-10-15
|
* avcodec/cuviddec: add av1 supportRoman Arzumanyan2020-10-15
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* configure: add missing atsc_a53 dependencies to hevcparse and h264_parserJames Almer2020-10-08
| | | | | Found-by: Chris Miceli <chris@miceli.net.au> Signed-off-by: James Almer <jamrial@gmail.com>
* lavc,doc: add libuavs3d video decoder wrapperhwren2020-10-06
| | | | | Signed-off-by: hbj <hanbj@pku.edu.cn> Signed-off-by: hwren <hwrenx@126.com>
* libwavpackenc: remove libwavpackenc wrapperLynne2020-10-02
| | | | | | | | | The manual states "there is virtually no reason to use that encoder.". It supports less sample formats than the native encoder, is less efficient than the native encoder and is also slower and pretty much remains untested. libwavpack also isn't being fuzzed, which given that we plug the parameters without any sanitizing them looks concerning.
* lavc/qsvdec: Add QSV AV1 decoderHaihao Xiang2020-09-26
| | | | | | | AV1 decoder is supported on Tiger Lake+ platforms since libmfx 1.34 Signed-off-by: Haihao Xiang <haihao.xiang@intel.com> Signed-off-by: Zhong Li <zhongli_dev@126.com>
* dnn: change dnn interface to replace DNNData* with AVFrame*Guo, Yejun2020-09-21
| | | | | | | | | | | | Currently, every filter needs to provide code to transfer data from AVFrame* to model input (DNNData*), and also from model output (DNNData*) to AVFrame*. Actually, such transfer can be implemented within DNN module, and so filter can focus on its own business logic. DNN module also exports the function pointer pre_proc and post_proc in struct DNNModel, just in case that a filter has its special logic to transfer data between AVFrame* and DNNData*. The default implementation within DNN module is used if the filter does not set pre/post_proc.
* avcodec: add AV1 hardware accelerated decoderFei Wang2020-09-12
| | | | | | | | | This AV1 decoder is currently only used for hardware accelerated decoding. It can be extended into a native decoder in the future, so set its name to "av1" and temporarily give it the lowest priority in the codec list. Signed-off-by: Fei Wang <fei.w.wang@intel.com> Signed-off-by: James Almer <jamrial@gmail.com>
* configure: Fix msa can't be disabled when '--cpu=loongson3a' assigned.Shiyou Yin2020-09-10
| | | | | | | | There are compiler and runtime check for MSA and MMI. Remove the redundant setting of MSA and MMI for cores specified by "--cpu". Signed-off-by: Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* configure: Add additional glslang libraries to make linking workPhilip Langdale2020-09-07
| | | | | | | | | | | The latest builds of glslang introduce new libraries that need to be linked for all symbols to be fully resolved. This change will break building against older installations of glslang and it's very hard to tell them apart as the library change upstream was not accompanied by any version bump and no official release has been made with this change it - just lots of people packaging up git snapshots. So, apologies in advance.
* avcodec: add MobiClip video decoderPaul B Mahol2020-09-03
|
* avformat/mpegtsenc: support DVB 6A descriptor for AC-3Limin Wang2020-08-23
| | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avcodec: move ff_alloc_a53_sei() to atsc_53James Almer2020-08-15
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/hevc_sei: use ff_parse_a53_cc() to parse A53 Closed CaptionsJames Almer2020-08-15
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/h264_sei: use ff_parse_a53_cc() to parse A53 Closed CaptionsJames Almer2020-08-15
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/libdav1d: add support for A53 Closed CaptionsJames Almer2020-08-15
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec: split off A53 Closed Caption parsing code into its own fileJames Almer2020-08-15
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/av1dec: add low-overhead bitstream formatXu Guangxin2020-08-14
| | | | | | It's defined in Section 5.2, used by netflix. Signed-off-by: James Almer <jamrial@gmail.com>
* kmsgrab: Use GetFB2 if availableMark Thompson2020-08-09
| | | | | | | | | | | | The most useful feature here is the ability to automatically extract the framebuffer format and modifiers. It also makes support for multi-plane framebuffers possible, though none are added to the format table in this patch. This requires libdrm 2.4.101 (from April 2020) to build, so it includes a configure check to allow compatibility with existing distributions. Even with libdrm support, it still won't do anything at runtime if you are running Linux < 5.7 (before June 2020).
* libsvtav1: Rename without a _Mark Thompson2020-07-31
| | | | The external library is called libsvtav1, so use this name everywhere.
* avcodec: Add an SVT-AV1 encoder wrapperDaryl Seah2020-07-29
| | | | | | | | | Signed-off-by: Daryl Seah <daryl.seah@intel.com> Signed-off-by: Jing SUN <jing.a.sun@intel.com> Signed-off-by: ZhiZhen Tang <zhizhen.tang@intel.com> Signed-off-by: Zhong Li <zhong.li@intel.com> Signed-off-by: Xu Guangxin <guangxin.xu@intel.com> Signed-off-by: James Almer <jamrial@gmail.com>
* ffbuild: Refine MIPS handlingJiaxun Yang2020-07-23
| | | | | | | | | | | | | | | | To enable runtime detection for MIPS, we need to refine ffbuild part to support buildding these feature together. Firstly, we fixed configure, let it probe native ability of toolchain to decide wether a feature can to be enabled, also clearly marked the conflictions between loongson2 & loongson3 and Release 6 & rest. Secondly, we compile MMI and MSA C sources with their own flags to ensure their flags won't pollute the whole program and generate illegal code. Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avdevice/decklink_dec: add support for extracting and outputing klv from vancMilos Zivkovic2020-07-03
| | | | | Signed-off-by: Milos Zivkovic <zivkovic@teralogics.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* configure: remove libvmaf from EXTERNAL_LIBRARY_VERSION3_LISTKyle Swanson2020-07-02
| | | | | | since libvmaf v1.5.1, libvmaf has been relicensed as BSD+Patent Signed-off-by: Kyle Swanson <k@ylo.ph>