1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
Commit Graph

1901 Commits

Author SHA1 Message Date
Paul B Mahol
8a1fc95840 avfilter: add anlmdn audio filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2019-01-08 22:00:51 +01:00
Paul B Mahol
41c1643d75 avcodec: add HYMT decoder 2018-12-31 15:41:23 +01:00
Paul B Mahol
d06aae732c avformat: add vividas demuxer 2018-12-20 19:32:27 +01:00
Paul B Mahol
8f66d46ce5 avcodec: add gif parser 2018-12-10 11:19:36 +01:00
Paul B Mahol
e9967822e4 avcodec: add PCM-DVD encoder
Fixes #6784.
2018-12-01 19:41:48 +01:00
Paul B Mahol
b80003fe28 avformat: add DHAV demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-11-24 15:11:27 +01:00
Paul B Mahol
0279cb4f69 avcodec: add truehd_core bitstream filter 2018-11-23 22:03:56 +01:00
Marton Balint
972ded33c0 avfilter/vf_freezedetect: add filter to detect frozen input
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-11-19 22:11:42 +01:00
Paul B Mahol
6da439219d avfilter: add rgbashift filter 2018-11-19 14:55:49 +01:00
Paul B Mahol
7a73cca254 avfilter: add dedot video filter 2018-11-16 20:19:08 +01:00
James Almer
beaa350e24 avcodec: libdav1d AV1 decoder wrapper.
Originally written by Ronald S. Bultje, with fixes, optimizations and
improvements by James Almer.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-05 21:48:11 -03:00
Philip Langdale
d5272e94ab avfilter/vf_yadif_cuda: CUDA accelerated yadif deinterlacer
This is a cuda implementation of yadif, which gives us a way to
do deinterlacing when using the nvdec hwaccel. In that scenario
we don't have access to the nvidia deinterlacer.
2018-11-02 11:26:30 -07:00
Paul B Mahol
97e9e3504d avfilter: add tpad filter 2018-11-02 09:32:52 +01:00
Michael Niedermayer
e8ced83f68 Changelog: Add new version next tag 2018-11-02 00:55:27 +01:00
Michael Niedermayer
324d21164d Changelog: next is 4.1
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-11-01 23:54:35 +01:00
Paul B Mahol
323c2cfd38 avfilter: add (a)graphmonitor filter(s) 2018-10-31 11:49:39 +01:00
Cameron Cawley
22238d0b94 avcodec: Implement Archimedes VIDC encoder/decoder
Signed-off-by: Cameron Cawley <ccawley2011@gmail.com>
2018-10-26 13:39:25 +02:00
Paul B Mahol
4fcfb9c4eb avfilter: add xstack filter 2018-10-26 12:40:54 +02:00
Josh de Kock
f9d4126f28 lavu: bump version, add Changelog entry 2018-10-24 11:25:19 +01:00
Paul B Mahol
b7b3e8c5c7 avfilter: add vibrance filter 2018-10-23 11:12:41 +02:00
Martin Vignali
02ad0416c0 avfilter/setparams : merge setfield and setrange filter to setparams filter
setfield and setrange filters are kept.
2018-10-21 22:00:01 +02:00
Paul B Mahol
18d391cffe avfilter: add chromahold filter 2018-10-21 12:57:58 +02:00
Paul B Mahol
8baaed7889 avfilter: add sinc source filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-10-19 17:43:29 +02:00
Paul B Mahol
0709b0561f avformat: add SER demuxer 2018-10-13 15:40:08 +02:00
James Almer
ebc3d04b8d avcodec: add an AV1 parser
Simple parser to set keyframes, frame type, structure, width, height, and pixel
format, plus stream profile and level.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-10-03 20:48:49 -03:00
Paul B Mahol
efb65abedf avfilter: add audio denoising (afftdn) filter 2018-09-25 19:54:06 +02:00
Paul B Mahol
009597ca33 avcodec: add native iLBC decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-09-23 15:25:50 +02:00
Paul B Mahol
5109c38162 avfilter: add acrossover filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-09-16 12:06:37 +02:00
Paul B Mahol
544fde1bf8 avfilter: add bm3d filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-09-13 11:22:22 +02:00
Paul B Mahol
ecf38be7c7 avfilter: add amultiply audio filter 2018-09-13 10:21:46 +02:00
hwren
85a921f461 lavc, doc, configure: add libxavs2 video encoder wrapper
Signed-off-by: hwren <hwrenx@126.com>
2018-09-11 21:48:42 +01:00
Roman Arzumanyan
90ba17652a avfilter: add nvidia NPP based transpose filter
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2018-09-10 12:11:41 +02:00
James Almer
edafb9f529 avformat/movenc: remove experimental checks for AV1 streams
The spec has been finalized.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-09-09 17:26:09 -03:00
Marton Balint
43d3b61abe avfilter/f_cue: add cue and acue filters
To delay filtering until a given wallclock timestamp.

Signed-off-by: Marton Balint <cus@passwd.hu>
2018-09-09 21:21:42 +02:00
Paul B Mahol
a5278b672a avcodec: add RemotelyAnywhere Screen Capture decoder 2018-09-08 15:59:10 +02:00
Paul B Mahol
c4cda4eb87 avfilter: add lut1d filter 2018-09-07 21:44:03 +02:00
Paul B Mahol
ad2ac1e7dd avcodec: add WinCAM Motion Video decoder 2018-08-27 22:06:19 +02:00
Paul B Mahol
f7d749e95b avcodec: add MatchWare Screen Capture Codec 2018-08-27 22:06:19 +02:00
Paul B Mahol
aba720dce2 avcodec: add Brooktree ProSumer Video decoder 2018-08-24 21:07:01 +02:00
Paul B Mahol
42a99b76de avcodec: add IMM4 decoder
This work is sponsored by VideoLAN.
2018-08-21 11:52:06 +02:00
hwren
5985a1bf72 lavc, doc, configure: add avs2 video decoder wrapper
Tested-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: hwren <hwrenx@126.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2018-07-27 20:07:56 +08:00
Mina
0bb5cd8c4d avfilter: Add colorconstancy filter
Signed-off-by: Mina <minasamy_@hotmail.com>
2018-07-23 22:34:52 +02:00
Paul B Mahol
5d8df3cc4a Update Changelog for lensfun addition and bump minor 2018-07-15 10:23:20 +02:00
Rostislav Pehlivanov
755e618399 lavc: implement an ATRAC9 decoder
This commit implements a full ATRAC9 decoder, a simple low-delay codec
developed by Sony and used in most PSVita games, some PS3 games and some
PS4 games. Its similar to AAC in that it uses Huffman coded scalefactors
but instead of vector quantization it just Huffman codes the spectral
coefficients (in a way similar to how Opus splits band energy coding
into coarse and fine precision). It opts to write rather large Huffman
codes by packing several small coefficients into one Huffman coded
symbol, though I don't believe this increases efficiency at all.
Band extension implements SBC in a simple way, first it mirrors the
lower spectrum onto the higher frequencies and then it uses one of 5
filters to shape it. Noise substitution is implemented via 2 of them.
Unlike previous ATRAC codecs, there's no QMF, this is a standard MDCT
codec.

Based off of the reverse engineering work of Alex Barney.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-07-03 20:15:01 +01:00
Carl Eugen Hoyos
27662ed681 Changelog: Mention vc1 improvements by Jerome Borsboom. 2018-06-29 01:34:23 +02:00
Sergey Lavrushkin
d8c0bbb0aa Adds TensorFlow backend for dnn inference module.
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2018-06-05 10:16:50 -03:00
Paul B Mahol
e28b1fa6e9 avfilter: add adeclick and adeclip audio filters
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-06-02 13:09:06 +02:00
Sergey Lavrushkin
bdf1bbdbb4 Adds dnn inference module for simple convolutional networks. Reimplements srcnn filter based on it.
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2018-05-29 10:02:30 -03:00
Thomas Volkert
c24d247e2c libavformat: add mbedTLS based TLS
Signed-off-by: James Almer <jamrial@gmail.com>
2018-05-21 19:43:04 -03:00
Tobias Rapp
eb28b5ec8a avfilter/vsrc_testsrc: add pal75bars and pal100bars video filter sources
Generates color bar test patterns based on EBU PAL recommendations.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
2018-05-18 15:39:54 +02:00
Paul B Mahol
4e816b5491 avfilter: add aderivative and aintegral filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-16 12:20:38 +02:00
Paul B Mahol
974eb4aaaa avfilter: add fftdnoiz filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-05-10 14:44:17 +02:00
Sergey Lavrushkin
9479955c62 Adds SRCNN filter.
Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
2018-05-04 14:24:56 +00:00
Paul B Mahol
889d858491 avfilter: add amplify filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-29 13:24:50 +02:00
Paul B Mahol
161e006cc0 avfilter: add tmix filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-26 16:44:15 +02:00
Rostislav Pehlivanov
4ac0ff8ec2 Revert "libavformat: add mbedTLS based TLS"
This reverts commit 62f5c9d68b,
which was pushed a bit prematurely.
2018-04-23 20:29:02 +01:00
Thomas Volkert
62f5c9d68b libavformat: add mbedTLS based TLS 2018-04-23 20:48:11 +02:00
Paul B Mahol
21da248b5f avfilter: add deblock filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-21 11:34:49 +02:00
Paul B Mahol
9e40632668 avfilter: add vfrdet filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-13 08:41:51 +02:00
Misty De Meo
187ff5a108 Add Sega FILM muxer
Signed-off-by: Josh de Kock <josh@itanimul.li>
2018-04-05 22:04:30 +01:00
James Almer
a123e576a4 Merge commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57'
* commit 'a2fc8dbae85339d1b418d296f2982b6c04c53c57':
  Add Haivision SRT protocol

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 21:56:19 -03:00
Paul B Mahol
2974b2556b avcodec: add eac3_core bitstream filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-03-29 10:24:00 +02:00
Paul B Mahol
ae92970976 avcodec/eac3: add support for dependent stream
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-03-29 10:19:03 +02:00
James Almer
0dc11d8bbd Merge commit 'c438899a706422b8362a13714580e988be4d638b'
* commit 'c438899a706422b8362a13714580e988be4d638b':
  Add AV1 video decoding support through libaom

This contains some extra changes taken from the libvpx decoder
wrapper, most of them contained in the set_pix_fmt() function.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 18:09:46 -03:00
Sven Dueking
a2fc8dbae8 Add Haivision SRT protocol
The protocol requires libsrt (https://github.com/Haivision/srt) to be
installed

Signed-off-by: Sven Dueking <sven.dueking@nablet.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2018-03-28 16:16:41 +02:00
James Almer
ed0e0fe102 changelog: add missing line for filter_units bsf
Signed-off-by: James Almer <jamrial@gmail.com>
2018-03-22 01:19:13 -03:00
Martin Vignali
7b0cb2e032 avcodec/hapqa_extract_bsf : add new bsf filter
convert HapQA data to HAPQ or HAPAlphaOnly
by copying the corresponding texture
2018-03-13 20:26:07 +01:00
Luca Barbato
c438899a70 Add AV1 video decoding support through libaom
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2018-03-12 08:12:43 +01:00
Paul B Mahol
8fb0e51bd1 avfilter: add drmeter audio filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-03-11 13:43:33 +01:00
Aurelien Jacobs
840f6eb77a Changelog: list the new SBC codec 2018-03-07 22:26:53 +01:00
Timo Rothenpieler
27cbbbb33f compat: remove in-tree NVidia headers
External headers are no longer welcome in the ffmpeg codebase because they
increase the maintenance burden. However, in the NVidia case the vanilla
headers need some modifications to be usable in ffmpeg therefore we still
provide them, but in a separate repository.

The external headers can be found at
https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git

Fate-source is updated because of the deleted files, and dynlink_loader.h
license headers were updated with the standard FFmpeg headers.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2018-02-27 16:22:12 +01:00
Tomas Härdin
5655048c73 Add muxer/demuxer for raw codec2 and .c2 files 2018-02-24 17:06:31 +01:00
Tomas Härdin
f958f431ec Add libcodec2 en/decoder 2018-02-24 17:06:31 +01:00
Philip Langdale
cd98f20b4a avcodec/nvdec: Implement mjpeg nvdec hwaccel 2018-02-21 23:38:42 +00:00
Mark Thompson
63c690ad15 vaapi: Add MJPEG decode hwaccel 2018-02-21 23:38:30 +00:00
Felix Matouschek
5ac3a309fd avdevice: add android_camera indev
This commit adds an indev for Android devices on API level 24+ which
uses the Android NDK Camera2 API to capture video from builtin cameras

Signed-off-by: Felix Matouschek <felix@matouschek.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-22 00:29:27 +01:00
Aurelien Jacobs
d8258489c8 aptx: add raw muxer and demuxer for aptX HD 2018-02-09 22:10:55 +01:00
Aurelien Jacobs
6fd110a094 aptx: implement the aptX HD bluetooth codec 2018-02-09 22:10:55 +01:00
Jun Zhao
9bba10c174 lavfi: add denoise and sharpness VAAPI video filters.
Most code between them is common, so put them in a new file for
miscellaneous VAAPI filters.

Signed-off-by: Yun Zhou <yunx.z.zhou@intel.com>
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-01-21 22:56:52 +00:00
Jun Zhao
fcf5eae4bf lavfi: add ProcAmp (color balance) VAAPI video filter.
Add ProcAmp(color balance) vaapi video filter, use the option
like -vf "procamp_vaapi=b=10:h=120:c=2.8:s=3.7" to set
brightness/hue/contrast/saturation.

Signed-off-by: Yun Zhou <yunx.z.zhou@intel.com>
Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2018-01-21 22:56:52 +00:00
Aman Gupta
cc90ee0b7e Changelog: add VideoToolbox HEVC support
Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-01-06 15:30:07 -08:00
Rostislav Pehlivanov
c17f476144 libavformat: remove the ffmenc and ffmdec muxer and demuxers
Used only by ffserver.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-01-06 18:32:15 +00:00
Rostislav Pehlivanov
6b35a83214 Remove the ffserver program
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-01-06 18:31:37 +00:00
Misty De Meo
bfe397e431 aiff: add explicit goto got_sound
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-01-06 03:15:18 +01:00
Paul B Mahol
7bb1be9af0 avfilter: add arbitrary audio IIR filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-01-05 17:04:21 +01:00
Paul B Mahol
89bbf5c7ec avfilter: add hilbert source FIR filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-01-04 12:26:19 +01:00
Paul B Mahol
09b24a807a avfilter: add entropy filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-01-03 19:45:01 +01:00
Paul B Mahol
8c9a91ac82 avfilter: add deconvolve filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-12-27 11:54:22 +01:00
wm4
9b121dfc32 w32pthreads: always use Vista+ API, drop XP support
This removes the XP compatibility code, and switches entirely to SWR
locks, which are available starting at Windows Vista.

This removes CRITICAL_SECTION use, which allows us to add
PTHREAD_MUTEX_INITIALIZER, which will be useful later.

Windows XP is hereby not a supported build target anymore. It was
decided in a project vote that this is OK.
2017-12-26 02:49:48 +01:00
James Darnley
8b81eabe57 avutil: add AVX-512 flags 2017-12-24 22:02:41 +01:00
sfan5
387ee1d6aa libavformat: LibreSSL (libtls) support
Signed-off-by: sfan5 <sfan5@live.de>
2017-12-17 17:32:42 +11:00
Paul B Mahol
a41a5db797 avformat: add NSP demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-12-08 16:01:09 +01:00
Paul B Mahol
53855e3c04 avfilter: add setrange filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-12-06 15:42:23 +01:00
Paul B Mahol
e1dd97bd4c avfilter: add fillborders filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-12-01 18:57:24 +01:00
Mikhail Mironov
9ea6607d29 Add HW H.264 and HEVC encoding for AMD GPUs based on AMF SDK
Requires AMF headers for at least version 1.4.4.1.

Signed-off-by: Mikhail Mironov <mikhail.mironov@amd.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-11-28 22:14:42 +00:00
Mark Thompson
c5f3e85792 Changelog: add VAAPI VP8 decoder 2017-11-28 21:37:38 +00:00
Philip Langdale
1da9851e34 avcodec/nvdec: Implement vp8 hwaccel 2017-11-26 14:55:01 -08:00
Paul B Mahol
ffc01280be avfilter: add lv2 wrapper filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-11-26 14:05:25 +01:00
Richard Ling
7d4fe0c5cb avfilter: add normalize filter 2017-11-25 09:51:33 +01:00
Paul B Mahol
ec5328aa6f avfilter: add mix filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-11-24 16:51:33 +01:00
Mark Thompson
9204b2deea lavfi: Add OpenCL overlay filter
Input and output formats must be the same, the overlay format must be
the same as the input except possibly with an additional alpha component.
2017-11-22 23:18:02 +00:00
Philip Langdale
6b77a10e43 avcodec: Implement mpeg4 nvdec hwaccel
This was predictably nightmarish, given how ridiculous mpeg4 is.
I had to stare at the cuvid parser output for a long time to work
out what each field was supposed to be, and even then, I still don't
fully understand some of them. Particularly:

vop_coded: If I'm reading the decoder correctly, this flag will always
           be 1 as the decoder will not pass the hwaccel any frame
           where it is not 1.
divx_flags: There's obviously no documentation on what the possible
            flags are. I simply observed that this is '0' for a
            normal bitstream and '5' for packed b-frames.
gmc_enabled: I had a number of guesses as to what this mapped to.
             I picked the condition I did based on when the cuvid
             parser was setting flag.

Also note that as with the vdpau hwaccel, the decoder needs to
consume the entire frame and not the slice.
2017-11-20 07:21:41 -08:00
Philip Langdale
8bca292c30 avcodec: Implement mpeg1 nvdec hwaccel
Once I remembered that there's a separate decoder type for mpeg1,
even though params struct is shared with mpeg2, everything worked.
2017-11-20 07:03:26 -08:00
Paul B Mahol
e679ac8d7c avfilter: add acontrast filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-11-19 12:50:04 +01:00
Philip Langdale
7c9f739d86 avcodec: Implement mpeg2 nvdec hwaccel
This is mostly straight-forward. The weird part is that it should
just work for mpeg1, but I see corruption in my test cases, so I'm
going to try and fix that separately.
2017-11-18 08:13:50 -08:00
Paul B Mahol
5d7c76566c avfilter: add multiband compand filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-11-17 20:34:04 +01:00
Philip Langdale
912ceba61b avcodec: Implement vc1 nvdec hwaccel
This hwaccel is interesting because it also works for wmv3/9 content,
which is not supported by the nvidia parser used by cuviddec.
2017-11-14 19:40:01 -08:00
Timo Rothenpieler
f3f73f0893 avcodec: implement vp9 nvdec hwaccel 2017-11-13 20:33:10 +01:00
James Almer
4391d6cb81 Merge commit 'a5a6ac1a123a927e5bed984ed757a29b7ff87dab'
* commit 'a5a6ac1a123a927e5bed984ed757a29b7ff87dab':
  libavfilter/overlay_qsv: Add QSV overlay vpp filter
  libavfilter/vf_vpp: Add common filters of the qsv vpp

Merged-by: James Almer <jamrial@gmail.com>
2017-11-11 15:07:06 -03:00
James Almer
1178babaca Merge commit 'b90fdb2c7199cc8b0e8d994fafba1fb4dc181d88'
* commit 'b90fdb2c7199cc8b0e8d994fafba1fb4dc181d88':
  hevcdec: add a CUVID hwaccel

Adapted for ffmpeg by Timo Rothenpieler.

Merged-by: James Almer <jamrial@gmail.com>
2017-11-10 20:43:15 -03:00
Anton Khirnov
0e00624389 h264dec: add a NVDEC hwaccel
Some parts of the code are based on a patch by
Timo Rothenpieler <timo@rothenpieler.org>

Merges Libav commit b9129ec466.

Due to the name clash with our cuvid decoder, rename it to nvdec.

This commit also changes the Libav code to dynamic loading of the
cuda/cuvid libraries.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2017-11-10 22:48:53 +01:00
Rostislav Pehlivanov
eb7a01d692 Changelog: list the new aptX features
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-11-10 21:32:06 +00:00
Rostislav Pehlivanov
fbf295e2bd aacenc: support extended channel layouts using PCEs
This commit implements support for PCE (Program Configuration Elements) in the
AAC encoder, and as such allows for encoding of channel layouts not present
in the presets defined by the spec (which only lists the 8 most common ones).

This has been a highly requested feature and is also the first open source encoder
to support this many layouts.

Many thanks to pkviet <pkv.stream@gmail.com> who implemented support for and
verified all channel layouts.
2017-11-09 03:37:48 +00:00
James Almer
1926f13a20 Merge commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2'
* commit '2fd6e7d077f590e4d7195356f9baeb271f8b9ae2':
  libavcodec/mjpeg_qsv: Add QSV MJPEG encoder

Merged-by: James Almer <jamrial@gmail.com>
2017-11-08 13:45:09 -03:00
Paul B Mahol
a6a6935ee8 avformat: add TiVo ty demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-11-06 18:20:29 +01:00
Carl Eugen Hoyos
e06bdc3c37 lavf/amr: Add amrnb and amrwb demuxers.
Fixes ticket #6678.
2017-11-05 20:51:03 +01:00
Paul B Mahol
3729ae659f avcodec: add MagicYUV encoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-10-28 17:56:02 +02:00
Clément Bœsch
2b32031827 lavc: drop VDA
Deprecated (aka removed) in OSX 10.11, and we have a replacement for it
(VideoToolbox).
2017-10-23 11:56:15 +02:00
Michael Bradshaw
279dc40716 lavc: drop support for OpenJPEG 1.3-2.0
We now require 2.1+ with pkg-config.

Signed-off-by: Michael Bradshaw <mjbshaw@google.com>
2017-10-20 17:35:28 -07:00
Mark Thompson
a6cfc287a0 Changelog: Add metadata bitstream filters
This starts a new section - 3.4 has been released.
2017-10-17 21:19:18 +01:00
Carl Eugen Hoyos
2386cfc1ae lavf/rtpenc: Add support for little-endian G.726. 2017-10-07 20:47:10 +02:00
Ashish Singh
148c8e88c4 avfilter: add vmafmotion filter
Signed-off-by: Ashish Singh <ashk43712@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-09-30 11:47:59 -04:00
Lionel CHAZALLON
f3aefb3e1c lavc: Add support for RockChip Media Process Platform
This adds hardware decoding for H.264 / HEVC / VP8 / VP9 using the MPP
Rockchip API.  It returns frames holding an AVDRMFrameDescriptor struct
in buf[0] that allows drm / dmabuf usage.  Tested on RK3288 (TinkerBoard)
and RK3328.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-09-27 22:43:58 +01:00
Jorge Ramirez-Ortiz
1ef7752d64 libavcodec: v4l2: add support for v4l2 mem2mem codecs
This patchset enhances Alexis Ballier's original patch and validates
    it using Qualcomm's Venus hardware (driver recently landed upstream
    [1]).

    This has been tested on Qualcomm's DragonBoard 410c and 820c
    Configure/make scripts have been validated on Ubuntu 10.04 and
    16.04.

    Tested decoders:
           - h264
           - h263
           - mpeg4
           - vp8
           - vp9
           - hevc

    Tested encoders:
           - h264
           - h263
           - mpeg4

    Tested transcoding (concurrent encoding/decoding)

    Some of the changes introduced:
        - v4l2: code cleanup and abstractions added
        - v4l2: follow the new encode/decode api.
        - v4l2: fix display size for NV12 output pool.
        - v4l2: handle EOS (EPIPE and draining)
        - v4l2: vp8 and mpeg4 decoding and encoding.
        - v4l2: hevc and vp9 support.
        - v4l2: generate EOF on dequeue errors.
        - v4l2: h264_mp4toannexb filtering.
        - v4l2: fixed make install and fate issues.
        - v4l2: codecs enabled/disabled depending on pixfmt defined
        - v4l2: pass timebase/framerate to the context
        - v4l2: runtime decoder reconfiguration.
        - v4l2: add more frame information
        - v4l2: free hardware resources on last reference being released
        - v4l2: encoding: disable b-frames for upstreaming (patch required)

    [1] https://lwn.net/Articles/697956/

    System Level view:
        v42l_m2m_enc/dec --> v4l2_m2m --> v4l2_context --> v4l2_buffers

    Reviewed-by: Jorge Ramirez <jorge.ramirez-ortiz@linaro.org>
    Reviewed-by: Alexis Ballier <aballier@gentoo.org>
    Tested-by: Jorge Ramirez <jorge.ramirez-ortiz@linaro.org>

Signed-off-by: wm4 <nfxjfg@googlemail.com>
2017-09-23 08:47:52 +02:00
Yogender Gupta
21e077fcb3 avfilter/thumbnail_cuda: add cuda thumbnail filter
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2017-09-22 11:54:35 +02:00
Huang, Zhengxu
a5a6ac1a12 libavfilter/overlay_qsv: Add QSV overlay vpp filter
The filter supports two inputs and (implicitly) scaling the second input
during composition, unlike the software overlay.

The code has been separated into common interface and qsv overlay
implementation. The common part mainly creates the qsv session and
manages the surface which is nearly the same for all qsv filters.
So the qsvvpp.c/qsvvpp.h API can be used by other QSV vpp filters
to reduce code redundancy.

Usage:
 -hwaccel qsv -c:v mpeg2_qsv -r 25 -i in.m2v -hwaccel qsv -c:v h264_qsv
 -i in.h264 -filter_complex
 "overlay_qsv=eof_action=repeat:x=(W-w)/2:y=(H-h)/2"  -b 2M -maxrate 3M
 -c:v h264_qsv -y out.h264

Two inputs should have different sizes otherwise one will be completely
covered or you need to scale the second input as follows:
  -hwaccel qsv -c:v mpeg2_qsv -r 25 -i in.m2v -hwaccel qsv -c:v h264_qsv
  -i in.h264 -filter_complex
  "overlay_qsv=w=720:h=576:x=(W-w)/2:y=(H-h)/2" -b 2M -maxrate 3M -c:v
  h264_qsv -y out.h264

  Signed-off-by: ChaoX A Liu <chaox.a.liu@gmail.com>
  Signed-off-by: Zhengxu Huang <zhengxu.maxwell@gmail.com>
  Signed-off-by: Andrew Zhang <huazh407@gmail.com>
  Change-Id: I5c381febb0af6e2f9622c54ba00490ab99d48297
  Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2017-09-17 19:59:06 +02:00
Mark Thompson
52194f0bcb lavd: Add KMS screen grabber 2017-09-13 22:31:05 +01:00
Ilia Valiakhmetov
86eb50549a Changelog: add vp9 tile threading support
Signed-off-by: Ilia Valiakhmetov <zakne0ne@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-09-11 08:02:15 -04:00
Paul B Mahol
4d41db7a31 avfilter: add generic FFT video convolve filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-09-09 17:09:37 +02:00
Petri Hintukainen
7a6bd54152 Add SUP/PGS subtitle muxer
Fixes ticket #2208
2017-09-09 12:07:14 +02:00
Paul B Mahol
cf0eed2525 avfilter: add Haas stereo enhancer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-09-08 18:29:53 +02:00
Paul B Mahol
6faa1275a2 avfilter: add despill filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-09-05 08:46:48 +02:00
Clément Bœsch
ca7dc3ee90 lavd: drop QTKit indev
QTKit has been deprecated in favor of AVFoundation for years, and we
have an avfoundation input device.

See https://developer.apple.com/documentation/qtkit
2017-09-04 17:19:58 +02:00
Clément Bœsch
e3c1219c7c build: add --disable-autodetect switch 2017-09-02 16:14:15 +02:00
Paras Chadha
6e02f66f1b Add FITS Encoder
Signed-off-by: Paras Chadha <paraschadha18@gmail.com>
2017-08-30 12:13:01 +02:00
Paras Chadha
61e4db4bb7 Add FITS Decoder
Signed-off-by: Paras Chadha <paraschadha18@gmail.com>
2017-08-30 12:13:01 +02:00
Nicolas George
844bc0d89e doc/filters: document framesync options. 2017-08-29 10:19:38 +02:00
Maksym Veremeyenko
2634927fe3 lavd: implement NewTek NDI input/output device support
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-08-27 18:07:50 +02:00
Carl Eugen Hoyos
9d494c5e55 lavf/rawenc: Add little- and big-endian G.726 muxers. 2017-08-26 11:43:09 +02:00
Carl Eugen Hoyos
f61e2dcfc3 lavf/g726: Demuxer for raw G.726 streams, both left- and right-justified.
Compatible with the binary encoder attached to ticket #6596 (right-aligned)
and a sample from a SEG Mp3-Player (left-aligned).
2017-08-24 12:55:46 +02:00
Paul B Mahol
e3a4afca07 avfilter: add pseudocolor filter 2017-08-19 12:42:24 +02:00
Paul B Mahol
2cc56741b1 avfilter: add floodfill filter 2017-08-05 21:05:22 +02:00
Paul B Mahol
80bc648e77 avfilter: add tlut2 filter 2017-08-04 11:45:08 +02:00
Paul B Mahol
c79e753471 avfilter: add unpremultiply filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-08-02 11:13:49 +02:00
Anton Khirnov
b90fdb2c71 hevcdec: add a CUVID hwaccel 2017-07-28 14:12:56 +02:00
Anton Khirnov
b9129ec466 h264dec: add a CUVID hwaccel
Some parts of the code are based on a patch by
Timo Rothenpieler <timo@rothenpieler.org>
2017-07-26 23:24:34 +02:00
Huang, Zhengxu
2fd6e7d077 libavcodec/mjpeg_qsv: Add QSV MJPEG encoder
usage:
-hwaccel qsv -c:v h264_qsv -i in -c:v mjpeg_qsv -global_quality 80 -f
mjpeg out

Signed-off-by: ChaoX A Liu <chaox.a.liu@gmail.com>
Signed-off-by: Zhengxu Huang <zhengxu.maxwell@gmail.com>
Signed-off-by: Andrew Zhang <huazh407@gmail.com
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2017-07-25 13:27:43 +02:00
foo86
f04ef26816 avformat: add SMPTE 337M demuxer 2017-07-19 12:27:33 +02:00
Ashish Singh
615479d51c avfilter: add LIBVMAF filter
This one changes the previous vmaf patch to libvmaf to keep it separate from the
native implementation of vmaf inside ffmpeg later.

Signed-off-by: Ashish Singh <ashk43712@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-07-16 08:21:32 -04:00
Paul B Mahol
01e545d046 avfilter: add limiter filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-07-08 11:49:54 +02:00
Tomas Härdin
89e632de9b Add Cinepak encoder
With permission of Tomas Härdin applied by Rl aetey.se

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-07-05 13:05:54 +02:00
wm4
70143a3954 dxva: add support for new dxva2 and d3d11 hwaccel APIs
This also adds support to avconv (which is trivial due to the new
hwaccel API being generic enough).

The new decoder setup code in dxva2.c is significantly based on work by
Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites.

Merges Libav commit f9e7a2f95a.
Also adds untested VP9 support.
The check for DXVA2 COBJs is removed. Just update your MinGW to
something newer than a 5 year old release.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-06-27 18:05:02 +02:00
Hein-Pieter van Braam
c4cbaec6e3 Interplay MVE: Changelog entry for changes
Signed-off-by: Hein-Pieter van Braam <hp@tmm.cx>
2017-06-27 15:10:37 +02:00
Diego Biurrun
4f9297ac3b build: Prefer NASM assembler over YASM
NASM is more actively maintained and permits generating dependency information
as a sideeffect of assembling, thus cutting build times in half.

(Cherry-picked from libav commit 57b753b445)

Signed-off-by: James Almer <jamrial@gmail.com>
2017-06-21 17:00:30 -03:00
Paul B Mahol
b9d0a5fc21 avfilter: add roberts cross operator
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-19 14:04:44 +02:00
Paul B Mahol
ca5cf84655 avfilter: add superequalizer filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-19 14:03:54 +02:00
Paul B Mahol
d4d1fc823f avfilter: add native headphone spatialization filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-12 18:08:52 +02:00
Paul B Mahol
c948414876 avformat: add Gremlin Digital Video demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-11 10:00:39 +02:00
Paul B Mahol
2336c76b22 avfilter/af_sofalizer: switch to libmysofa
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-08 22:02:26 +02:00
wm4
f9e7a2f95a dxva: add support for new dxva2 and d3d11 hwaccel APIs
This also adds support to avconv (which is trivial due to the new
hwaccel API being generic enough).

The new decoder setup code in dxva2.c is significantly based on work by
Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-06-08 21:20:18 +02:00
Paul B Mahol
dc72d1dde9 avfilter: add audio surround upmixer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-01 21:25:36 +02:00
Rostislav Pehlivanov
220b24c7c9 lavc: remove libschroedinger encoding and decoding wrappers
The library has stopped being developed and Debian has removed it
from its repositories citing security issues.
The native Dirac decoder supports everything the library has and basic
encoding support is still provided via the native vc2 (Dirac Pro, intra
only version of Dirac) encoder. Hence, there's no reason to still support
linking to the library and potentially leading users into security issues.
2017-05-29 20:15:58 +01:00
Rostislav Pehlivanov
a3deeaade3 lavf: remove the libnut library wrapper
libnut is outdated and not developed anymore, all nut developments
happens in this repo, so users are getting mislead
2017-05-29 20:15:58 +01:00
James Almer
5ff31babfc avformat/movenc: remove experimental check for VP9 streams
The muxer has been updated and is now complaint with the v1.0 of the spec.
2017-05-17 20:52:50 -03:00
Paul B Mahol
deaab31d61 avfilter: add audio crossfeed filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-05-17 20:18:39 +02:00
Rostislav Pehlivanov
5fd4cffe32 lavc: add a librsvg rasterization library wrapper
Enables rendering of SVG images. This is possible since SVG images
still contain and specify the dimensions in pixels to which they've
been drawn to and thus enable browsers to display them without any
external data. Users can still override and generate images with
arbitrary resolutions.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-05-16 11:40:44 +01:00
Yogender Gupta
921bd9a2be avfilter/scale_cuda: add CUDA scale filter
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2017-05-15 11:46:50 +02:00
Paul B Mahol
65b7109105 Changelog: mention afir addition
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-05-09 23:29:51 +02:00
Timo Rothenpieler
ef390e348e Changelog: document updated Video Codec SDK 2017-05-09 18:38:30 +02:00
Clément Bœsch
e0beaff487 Merge commit 'e199a8099411d0992c3ed278287a81f1d791199c'
* commit 'e199a8099411d0992c3ed278287a81f1d791199c':
  Changelog: mention the new avbuild/ directory

Merged-by: Clément Bœsch <cboesch@gopro.com>
2017-05-05 11:29:45 +02:00
Paul B Mahol
399c7ab9c6 avfilter: add video oscilloscope filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-29 19:12:34 +02:00
Clément Bœsch
fe86fa7c0a Merge commit '1783d7ec03d730c5bd96c07bc5fa7aa566f85c66'
* commit '1783d7ec03d730c5bd96c07bc5fa7aa566f85c66':
  Changelog: add some missing entries

Merged-by: Clément Bœsch <u@pkh.me>
2017-04-29 12:43:37 +02:00
Kostya Shishkov
189157c3fc Add ClearVideo decoder
Only I-frames are decoded for now.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-04-25 15:39:10 +02:00
Paul B Mahol
dfc4ce5f5d avfilter: add lumakey filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-24 20:37:30 +02:00
Paul B Mahol
01729f77dd avfilter: add doubleweave filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-22 13:18:59 +02:00
Paul B Mahol
74acc1eec5 avfilter: add deflicker filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-04-20 22:53:00 +02:00
Paul B Mahol
95a8a03a19 Add FM Screen Capture Codec decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-04-13 12:35:35 +02:00
Mark Thompson
3cbf717425 Changelog: fix position of VAAPI MPEG-2/VP8 encode entry
This was merged in the wrong place.
2017-04-02 23:18:42 +01:00
James Almer
7ab9d3f341 Changelog: add missing entry for VP8 QSV decoder 2017-04-02 18:39:01 -03:00
James Almer
50e5949566 Changelog: add 3.3 2017-04-02 18:38:36 -03:00
Ronald S. Bultje
0cf949a011 vp9: Add bsf to merge superframes
From ffmpeg commit 2e6636aa87.
2017-04-02 17:54:05 +01:00
Rostislav Pehlivanov
487ca38e8b Changelog: reorder last entry
Entries are organized in descending chronological order.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-03-27 18:34:15 +01:00
Rostislav Pehlivanov
a8fe8d6b4a lavfi: remove af_asynts filter
Long overdue for removal, af_aresample should be used instead.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-03-27 14:06:16 +01:00
Gerion Entrup
5e3a418b60 add signature filter for MPEG7 video signature
This filter does not implement all features of MPEG7. Missing features:
- compression of signature files
- work only on (cropped) parts of the video

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-03-21 00:11:08 +01:00
Clément Bœsch
e514a1d404 Merge commit '80fc75d51e3312e1890591048eb6a3d499b6e49d'
* commit '80fc75d51e3312e1890591048eb6a3d499b6e49d':
  Changelog: Mention mov with multiple stsd

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-20 08:19:03 +01:00
Clément Bœsch
4a9c5f6bc5 Merge commit '4fef648d10bf3bcfd4b8fa5755c1128966a2427c'
* commit '4fef648d10bf3bcfd4b8fa5755c1128966a2427c':
  Remove the legacy X11 screen grabber

Merged-by: Clément Bœsch <u@pkh.me>
2017-03-15 22:07:47 +01:00
Paras Chadha
5dab7b91ad avcodec: add XPM decoder and demuxer
Signed-off-by: Paras Chadha <paraschadha18@gmail.com>
2017-03-12 18:24:49 +01:00
Mark Thompson
b9acc7fbd9 Merge commit 'ad71d3276fef0ee7e791e62bbfe9c4e540047417'
* commit 'ad71d3276fef0ee7e791e62bbfe9c4e540047417':
  lavfi: add a QSV deinterlacing filter

Minor fixup for lavfi differences.

Merged-by: Mark Thompson <sw@jkqxz.net>
2017-03-12 17:00:42 +00:00
Anton Khirnov
807a3b30d2 lavfi: add a QSV scaling filter
This merges libav commit ac7bfd6967,
which was previously skipped.

(cherry picked from commit ac7bfd6967)
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-03-12 15:02:33 +00:00
Kieran Kunhya
5f794aa165 Add Cineform HD Decoder
Decodes YUV 4:2:2 10-bit and RGB 12-bit files.
Older files with more subbands, skips, Bayer, alpha not supported.

Further fixes and refactorings by Anton Khirnov <anton@khirnov.net>,
Diego Biurrun <diego@biurrun.de>, Vittorio Giovara <vittorio.giovara@gmail.com>

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2017-03-09 18:37:29 +01:00
Diego Biurrun
57b753b445 build: Prefer NASM assembler over YASM
NASM is more actively maintained and permits generating dependency information
as a sideeffect of assembling, thus cutting build times in half.
2017-03-07 08:32:37 +01:00
Kostya Shishkov
a63496cc88 avcodec: add ClearVideo decoder
Only I-frames are decoded for now.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-03-02 11:39:54 +01:00
Paul B Mahol
aba5b94859 Add Apple Pixlet decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2017-03-01 11:52:29 -05:00
Paul B Mahol
039011b6b0 avcodec: add ScreenPressor decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-22 22:57:59 +01:00
Rostislav Pehlivanov
ada281dbe2 Changelog: add entry for the native Opus encoder
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2017-02-16 16:28:10 +00:00
Paul B Mahol
8259f8a720 avcodec: add FM Screen Capture Codec decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-12 10:43:45 +01:00
Mark Thompson
d1acab8293 vaapi_encode: Add VP8 support
Fixes ticket #6116.

(cherry picked from commit ca62236a89)
2017-02-08 19:14:05 +00:00
Mark Thompson
3b95c7c17d vaapi_encode: Add MPEG-2 support
(cherry picked from commit ca6ae3b77a)
2017-02-08 19:14:05 +00:00
Jerry Jiang
884506dfe2 Implement optimal huffman encoding for (M)JPEG.
> seems to break
> make fate-vsynth1-mjpeg-444

Fixed.
2017-02-08 13:59:53 +00:00
Paul B Mahol
012dd8c99a avfilter: add midequalizer filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-02-04 14:47:33 +01:00