Paul B Mahol [Sun, 15 Apr 2018 10:48:12 +0000 (12:48 +0200)]
avfilter/af_headphone: add single hrir multichannel stream mode
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Timo Rothenpieler [Fri, 13 Apr 2018 17:39:24 +0000 (19:39 +0200)]
avcodec/nvdec: correctly set intra_pic_flag for h264/hevc
Hendrik Leppkes [Thu, 5 Apr 2018 15:09:35 +0000 (17:09 +0200)]
avcodec/aac_ac3_parser: account for data already in the parsing buffer
If a frame starts very close to a packet boundary, the start code may
already have been added to the parsing buffer, indicated by a small
negative value of "i", while the header is still being tracked in the
"state" variable.
Reduce the remaining size accordingly, otherwise trying to find the next
frame could skip over the frame header and lump two frames together as
one.
Paul B Mahol [Thu, 5 Apr 2018 14:44:28 +0000 (16:44 +0200)]
avcodec/dxv: add support for "high" quality mode
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Steve Lhomme [Tue, 3 Apr 2018 09:44:25 +0000 (11:44 +0200)]
avutil/random_seed: use bcrypt instead of the old wincrypt API
Remove the wincrypt API calls since we don't support XP anymore and bcrypt is
available since Vista, even on Windows Store builds.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
Paul B Mahol [Sat, 14 Apr 2018 17:42:16 +0000 (19:42 +0200)]
avfilter/af_headphone: fix memory leak and overread
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Paul B Mahol [Sat, 14 Apr 2018 16:38:54 +0000 (18:38 +0200)]
avfilter/af_headphone: do not output invalid samples when flushing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Paul B Mahol [Sat, 14 Apr 2018 15:49:54 +0000 (17:49 +0200)]
avfilter/af_headphone: fix flushing
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Paul B Mahol [Sat, 14 Apr 2018 15:25:06 +0000 (17:25 +0200)]
avfilter/af_headphone: improve performance and reduce latency
Remove not needed code.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Michael Niedermayer [Fri, 13 Apr 2018 00:34:01 +0000 (02:34 +0200)]
tests/checkasm/checkasm: Provide verbose failure information on float_near_abs_eps() failures
This will make understanding failures and adjusting EPS easier
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
James Almer [Thu, 12 Apr 2018 03:06:30 +0000 (00:06 -0300)]
avformat/utils: use the existing packet reference when parsing complete frames
If the parser returns full frames, then the output pointer retured by
av_parser_parse2() is guaranteed to point to data contained in the
input packet's buffer.
Create a new reference to said buffer in that case, to avoid
unnecessary data copy when queueing the packet later in the function.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:59:12 +0000 (20:59 -0300)]
Merge commit '
8f144d9e3d5cb2ca92e5bdf7cc9f72effa1bd2ce'
* commit '
8f144d9e3d5cb2ca92e5bdf7cc9f72effa1bd2ce':
Drop Windows XP support remnants
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:53:31 +0000 (20:53 -0300)]
Merge commit '
c7ab6aff66cba2f265f656ce8d56aa428d4ada76'
* commit '
c7ab6aff66cba2f265f656ce8d56aa428d4ada76':
w32pthreads: always use Vista+ API, drop XP support
This commit is a noop, see
9b121dfc32810250938021952aab4172a988cb56
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:44:56 +0000 (20:44 -0300)]
Merge commit '
c31f6b1d61759436ef50c094e7f4c8005e97614a'
* commit '
c31f6b1d61759436ef50c094e7f4c8005e97614a':
avprobe: Print a user-friendly version of the display matrix
avprobe: Support printing strings with empty keys
This commit is a noop. ffprobe is considerably different than avprobe
and is already printing display matrix values in a user readable way.
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:41:00 +0000 (20:41 -0300)]
Merge commit '
cc06f7bd10c236539b4f6f87b795c459dd873770'
* commit '
cc06f7bd10c236539b4f6f87b795c459dd873770':
libx265: Support tiny video sizes
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:38:46 +0000 (20:38 -0300)]
Merge commit '
54307b35311e9a871b3d8ecb2b2eecfc16de0163'
* commit '
54307b35311e9a871b3d8ecb2b2eecfc16de0163':
lavc/qsvdec: set complete_frame flags for progressive picture
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 23:34:23 +0000 (20:34 -0300)]
Merge commit '
cca5e4f040971db6de0bfe6968f00c021d8a9c42'
* commit '
cca5e4f040971db6de0bfe6968f00c021d8a9c42':
qsv: adding Multi Frame Encode support
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 22:58:47 +0000 (19:58 -0300)]
Merge commit '
29a8ed766354c45c9be4b8512c5b2eb25a450cdc'
* commit '
29a8ed766354c45c9be4b8512c5b2eb25a450cdc':
lavf/qsvvpp: bypass vpp if not needed.
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 22:58:05 +0000 (19:58 -0300)]
Merge commit '
52ed83fa1a7f5170447eff6fad0b6c57119596e9'
* commit '
52ed83fa1a7f5170447eff6fad0b6c57119596e9':
lavc/qsvdec: expose frame pic_type and key_frame
Merged-by: James Almer <jamrial@gmail.com>
James Almer [Fri, 13 Apr 2018 22:54:29 +0000 (19:54 -0300)]
Merge commit '
b0958698ea2b976063cb1d683becc213040c709b'
* commit '
b0958698ea2b976063cb1d683becc213040c709b':
libaom: remove references to RGB pixfmts
libaom: remove references to yuv440p pixfmt
This commit is a noop, see
d039d7d4a4a56861e210761902bcf0617e0800fa
Merged-by: James Almer <jamrial@gmail.com>
Michael Niedermayer [Fri, 13 Apr 2018 09:38:48 +0000 (11:38 +0200)]
avformat/utils: Check cur_dts in update_initial_timestamps() more
Fixes: runtime error: signed integer overflow:
18133149658382192 - -
9223090561878065151 cannot be represented in type 'long long'
Fixes: crbug 831552
Reported-by: Matt Wolenetz <wolenetz@google.com>
Reviewed-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Wed, 11 Apr 2018 17:50:52 +0000 (19:50 +0200)]
avcodec/utils: Enforce minimum width also for VP5/6
Fixes: out of array access
Fixes: poc_0411
Found-by: GwanYeong Kim <gy741.kim@gmail.com>
Tested-by: GwanYeong Kim <gy741.kim@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Tue, 10 Apr 2018 20:24:03 +0000 (22:24 +0200)]
avcodec/truemotion2: Propagate out of bounds error from GET_TOK()
Fixes: Timeout
Fixes: 6389/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEMOTION2_fuzzer-
5695918121680896
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Wed, 11 Apr 2018 16:55:57 +0000 (18:55 +0200)]
avformat/utils: Fix integer overflow in end time calculation in update_stream_timings()
Fixes: crbug 829153
Reported-by: Matt Wolenetz <wolenetz@google.com>
Reviewed-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Fri, 13 Apr 2018 13:50:54 +0000 (15:50 +0200)]
tests/fate/filter-video: Use a bitexact/lossless input sample for fate-filter-metadata-silencedetect
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Bela Bodecs [Fri, 13 Apr 2018 10:11:32 +0000 (12:11 +0200)]
avformat/utils: Stream specifier enhancement 2.
In some cases, mainly working with multiprogram mpeg-ts containers as
input, it would be handy to select sub stream of a specific program by
their metadata.
This patch makes it possible to narrow the stream selection among
streams of the specified program by stream metadata.
Examples:
p:601:m:language:hun will select all sub streams of program with id 601
where sub streams have metadata key named 'language' with value 'hun'.
p:602:m:guide will select all sub streams of program with id 602 where
sub streams have metadata key named 'guide'.
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Gyan Doshi [Wed, 11 Apr 2018 16:16:03 +0000 (21:46 +0530)]
MAINTAINERS: add myself to documentation section
Signed-off-by: Lou Logan <lou@lrcd.com>
Michael Niedermayer [Fri, 13 Apr 2018 14:04:40 +0000 (11:04 -0300)]
configure: make the C11 atomics check more robust
C11 atomics allow direct access. This check should prevent the usage
of bogus stdatomic.h available on some systems.
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Sat, 7 Apr 2018 21:52:02 +0000 (18:52 -0300)]
configure: disable direct stripping in OpenBSD
It appears strip -o creates new files without preserving permissions
from the source binary, resulting in non executable files.
Signed-off-by: James Almer <jamrial@gmail.com>
Paul B Mahol [Fri, 13 Apr 2018 11:33:44 +0000 (13:33 +0200)]
avcodec/magicyuvenc: mark as experimental
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Hendrik Leppkes [Mon, 29 May 2017 10:09:47 +0000 (12:09 +0200)]
avcodec/vp9: add profile 2 10-bit DXVA2/D3D11 decoding support
Fixes trac ticket #7099.
Hendrik Leppkes [Wed, 11 Apr 2018 11:59:36 +0000 (13:59 +0200)]
avcodec/dxva2: add VP9 10-bit Profile2 mode mappings
Timo Rothenpieler [Fri, 13 Apr 2018 07:36:49 +0000 (09:36 +0200)]
avcodec/nv{enc,dec}: use sane version checking macro
For some odd reason, the Nvidia version macros puts the minor version in
the msb, so comparing against it is impossible.
Steven Liu [Fri, 13 Apr 2018 07:39:49 +0000 (15:39 +0800)]
avformat/hlsenc: add option hls_delete_threshold
When using hls_list_size with hls_flags delete_segments, currently
hls_list_size * 2 +- segments remain on disk. With this new option,
the amount of disk space used can be controlled by the user.
fix ticket: #7131
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: Aman Gupta <aman@tmm1.net>
Timo Rothenpieler [Wed, 11 Apr 2018 11:47:27 +0000 (13:47 +0200)]
avcodec/nvdec_hevc: add support for new extended sps/pps flags from SDK 8.1
Paul B Mahol [Wed, 20 Dec 2017 13:15:02 +0000 (14:15 +0100)]
avfilter: add vfrdet filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Michael Niedermayer [Tue, 10 Apr 2018 14:12:15 +0000 (16:12 +0200)]
avcodec/mjpegdec: Check input buffer size.
Fixes: Timeout
Fixes: 6381/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEGLS_fuzzer-
5665032743419904
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Fri, 6 Apr 2018 22:34:25 +0000 (00:34 +0200)]
avcodec/h264_slice: Fix integer overflow with last_poc
Fixes: signed integer overflow:
2147483646 - -2816 cannot be represented in type 'int'
Fixes: crbug 823145
Reported-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Fri, 6 Apr 2018 21:56:57 +0000 (23:56 +0200)]
avformat/mov: Fix extradata memleak
Fixes: crbug 822705
Reported-by: Matt Wolenetz <wolenetz@google.com>
Reviewed-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Bela Bodecs [Wed, 11 Apr 2018 20:33:02 +0000 (22:33 +0200)]
fate: to test program sub stream selection by its type in mpegts
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Bela Bodecs [Sun, 1 Apr 2018 21:29:14 +0000 (23:29 +0200)]
avformat/utils: Stream specifier enhancement
Currently when specifying the program id you can only decide to select
all stream of the specified program (e.g. p:103 will select all streams
of program 103) or narrow the selection to a specific stream sub index
(e.g. p:145:1 will select 2nd stream of program 145.) But you can not
specify like all audio streams of program 145 or 3rd video stream of
program 311.
In some case, mainly working with multiprogram mpeg-ts containers as
input, this feature would be handy.
This patch makes it possible to narrow the stream selection among
streams of the specified program by stream type and optionally its
index. Handled types: a, v, s, d.
Examples: p:601:a will select all audio streams of program 601,
p:603:a:1 will select 2nd audio streams of program 603,
p:604:v:0 will select first video stream of program 604.
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Lou Logan [Thu, 12 Apr 2018 20:44:49 +0000 (12:44 -0800)]
doc/filters: fix lenscorrection k1 & k2 typo
0 means no correction, not 0.5.
Also document ranges and defaults for options.
Signed-off-by: Lou Logan <lou@lrcd.com>
Jun Zhao [Mon, 9 Apr 2018 15:13:03 +0000 (23:13 +0800)]
lavf/hlsproto: use ff_get_chomp_line
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Jun Zhao [Mon, 9 Apr 2018 15:12:16 +0000 (23:12 +0800)]
lavf/hlsenc: use ff_get_chomp_line
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Jun Zhao [Mon, 9 Apr 2018 15:11:02 +0000 (23:11 +0800)]
lavf/hls: use ff_get_chomp_line
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Jun Zhao [Mon, 9 Apr 2018 15:05:42 +0000 (23:05 +0800)]
lavf/aviobuf: add ff_get_chomp_line
Same as ff_get_line but strip the white-space characters in the
string tail.
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Tobias Rapp [Tue, 3 Apr 2018 07:24:21 +0000 (09:24 +0200)]
doc: update loglevel option documentation
Updates documentation after the changes to loglevel flag prefix parsing
in
4b736bc921ed96ad6d312ce0cbe0de29b9e3fe81.
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
Mattias Amnefelt [Mon, 2 Apr 2018 09:30:40 +0000 (11:30 +0200)]
libavformat/aac: Parse all ID3 tags present between ADTS frames
Some ADTS streams can have multiple ID3 tags between frames. This
change parses all of them, rather than just the first one.
Signed-off-by: Mattias Amnefelt <mattiasa@avm.se>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Jérôme Martinez [Tue, 10 Apr 2018 16:20:23 +0000 (18:20 +0200)]
avcodec/dpx: Support for RGB 12-bit packed decoding
Limited to widths multiple of 8 (RGB) due to lack of test files for such corner case
This partially fixes ticket #5639
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Carl Eugen Hoyos [Thu, 12 Apr 2018 00:30:21 +0000 (02:30 +0200)]
configure: Disable direct stripping for AIX.
AIX strip doesn't know the option -o.
Aman Gupta [Tue, 10 Apr 2018 17:17:52 +0000 (10:17 -0700)]
avcodec/mpegpicture: fix "stride changed" failures in gray mode
Before adding uvlinesize check, I was seeing failures decoding
some video with ffmpeg compiled with --enable-gray and using AV_CODEC_FLAG_GRAY.
[mpeg2video @ 0x7fa193818c00] get_buffer() failed (stride changed: linesize=1280/1280 uvlinesize=0/640)
[mpeg2video @ 0x7fa193818c00] get_buffer() failed (stride changed: linesize=1280/1280 uvlinesize=0/640)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Timo Rothenpieler [Wed, 11 Apr 2018 12:28:36 +0000 (14:28 +0200)]
avcodec/nvenc: update required driver versions for nvenc
Timo Rothenpieler [Wed, 11 Apr 2018 12:22:20 +0000 (14:22 +0200)]
avcodec/nvenc: add support for B frames as ref
Hendrik Leppkes [Tue, 3 Apr 2018 10:35:27 +0000 (12:35 +0200)]
spdifenc: support ac3 core+eac3 dependent streams
Such streams are found on Blu-ray, and identified as EAC3 type in
avformat, while the bitstream of the core stream is actually a pure AC3
frame.
Adjust the parsing accordingly, since AC3 frames always hold 6 blocks
and the numblkscod syntax element is not present.
Bela Bodecs [Wed, 11 Apr 2018 03:15:54 +0000 (11:15 +0800)]
avformat/hlsenc: fix handling of delete_segments when %v is present
When var_stream_map option is used, %v must appear either in segment
name template or in the directory path. This latter case currently is
not handled and delete_segments flag of hls_flags is broken now. This
patch fix this. The root cause of the bug was that HLSSegment struct
only stores the final filename part, but not the final directory path.
Most of the cases, final path info is unneded, It only necessary when
you want to delete old segments (e.g in case of live streaming).
Without variant streams it was unnecessary to store the final directory
path, because all segment were stored into the same directory. But
introducing %v in directory names either require to store the final
directory path into HLSSegment or associate segments with their variant
streams to be able deleting them later. I have choosen the second
solution and introduced a variant index data member into the segment
struct.
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Steven Liu <lq@onvideo.cn>
Timo Teräs [Tue, 3 Apr 2018 06:05:18 +0000 (09:05 +0300)]
avformat/movenc: use correct iTunes copyright atom
Support for writing copyright metadata was added in commit
bed4fc54c9
for 3GP, MOV and iTunes metadata. 3GP and MOV cases are formally
specified. However, iTunes format does not have specification, and
it seems to have been assumed that it would use the same atom as
MOV (both being Apple formats).
However, Apple uses 'cprt' atom for iTunes metadata (do note that
the iTunes 'cprt' encoding is generic iTunes ItemList atom, not
the 3GP 'cprt' encoding. These are also inside different parent
atoms).
Most references trying to document iTunes atoms mention only
the 'cprt' tag. See:
- http://atomicparsley.sourceforge.net/mpeg-4files.html
- http://mutagen.readthedocs.io/en/latest/api/mp4.html
Same applies to other software supporting this tag. Most of them
encode and decode only the 'cprt' atom.
ffmpeg mov demuxer supports both atoms in this context. There are
few pieces of other software that support similarly both 'cprt' and
the incorrect '\251cpy' atom in this context. I believe they do it in
order to read the ffmpeg encoded incorrect copyright atom.
In light of the above this changes the copyright atom to 'cprt' as
it seems to be supported univerally and is the correct atom to use.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Matt Wolenetz [Tue, 10 Apr 2018 20:59:25 +0000 (13:59 -0700)]
lavc/libopusdec: Allow avcodec_open2 to call .close
If there is a decoder initialization failure detected in avcodec_open2
after .init is called, allow graceful decoder .close to prevent leaking
libopus decoder allocations.
BUG=828526
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
James Almer [Sun, 8 Apr 2018 17:00:47 +0000 (14:00 -0300)]
configure: check for INIT_ONCE before enabling w32threads
Should fix compilation wiht some old mingw-w64 builds that
don't seem to define it.
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Sun, 8 Apr 2018 16:30:19 +0000 (13:30 -0300)]
configure: check that the required header for Linux Perf is available
Should fix compilation on targets like some old Android NDK versions.
Signed-off-by: James Almer <jamrial@gmail.com>
Alexander Kravchenko [Mon, 9 Apr 2018 16:48:33 +0000 (19:48 +0300)]
lavc/amfenc: Retain a reference to D3D frames used as input during the encoding process
Fixes ticket #6990.
Tested-by: James Almer <jamrial@gmail.com>
Reviewed-by: Mark Thompson <sw@jkqxz.net>
Rodger Combs [Thu, 29 Mar 2018 04:19:28 +0000 (23:19 -0500)]
lavc/videotoolbox: fix failure to decode PAFF
Signed-off-by: Aman Gupta <aman@tmm1.net>
Misty De Meo [Mon, 9 Apr 2018 01:27:25 +0000 (18:27 -0700)]
Sega FILM: set dts and duration when demuxing
Reviewed-by: Kyle Swanson <k@ylo.ph>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Jun Zhao [Mon, 2 Apr 2018 23:14:46 +0000 (07:14 +0800)]
MAINTAINERS: add myself to the general developers list
Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Gyan Doshi [Mon, 9 Apr 2018 08:58:06 +0000 (14:28 +0530)]
doc/filters: correct range for length in astats filter
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Carl Eugen Hoyos [Mon, 9 Apr 2018 22:50:01 +0000 (00:50 +0200)]
lavf/segafilmenc: Do not mix variable declaration and code.
Fixes two warnings: ISO C90 forbids mixed declarations and code
Diego Biurrun [Sun, 1 Apr 2018 23:06:18 +0000 (01:06 +0200)]
Drop Windows XP support remnants
wm4 [Thu, 21 Dec 2017 19:23:14 +0000 (20:23 +0100)]
w32pthreads: always use Vista+ API, drop XP support
This removes the XP compatibility code, and switches entirely to SRW
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.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Vittorio Giovara [Wed, 4 Apr 2018 15:29:35 +0000 (17:29 +0200)]
avprobe: Print a user-friendly version of the display matrix
Shift fixed point numbers to be actual decimal numbers.
Vittorio Giovara [Fri, 16 Mar 2018 15:34:25 +0000 (11:34 -0400)]
libx265: Support tiny video sizes
Where tiny is less than the default CTU size.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Wed, 4 Apr 2018 15:29:34 +0000 (17:29 +0200)]
avprobe: Support printing strings with empty keys
Meng Wang [Tue, 27 Mar 2018 12:43:06 +0000 (20:43 +0800)]
avcodec/arm/hevcdsp_sao : add NEON optimization for sao
Signed-off-by: Meng Wang <wangmeng.kids@bytedance.com>
Reviewed-by: Shengbin Meng <shengbinmeng@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Sun, 8 Apr 2018 01:29:44 +0000 (03:29 +0200)]
avcodec/movtextdec: Check style_start/end
Limits based on 3GPP TS 26.245 V14.0.0
Fixes: Timeout
Fixes: 6377/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MOVTEXT_fuzzer-
5175929115508736
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Zhong Li [Sat, 7 Apr 2018 17:38:55 +0000 (19:38 +0200)]
lavc/qsvdec: set complete_frame flags for progressive picture
Set the flag MFX_BITSTREAM_COMPLETE_FRAME when it is a progressive picture.
This can fix vc1 decoding segment fault issues because can't set the start
code correctly.
See: ./avconv -hwaccel qsv -c:v vc1_qsv -i /fate-suite/vc1/SA00040.vc1
-vf "hwdownload, format=nv12" -f rawvideo /dev/null
v2: fix some h264 interlaced clips regression
a. field_order of some h264 interlaced video (e.g: cama3_vtc_b.avc) is marked as AV_FIELD_UNKNOWN
in h264_parser.c. This is not a completed frames.
So only set the MFX_BITSTREAM_COMPLETE_FRAME when it is progressive.
b. some clips have both progressive and interlaced frames (e.g.CAPAMA3_Sand_F.264),
the parsed field_order maybe changed druing the decoding progress.
This patch has been verified for other codecs(mpeg2/hevc/vp8).
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
Maxym Dmytrychenko [Mon, 2 Apr 2018 13:17:23 +0000 (15:17 +0200)]
qsv: adding Multi Frame Encode support
Starting from API 1.25 helps to improve performance of the simultaneous
encode, 1:N scenario, like:
./avconv -y -hwaccel qsv -c:v h264_qsv -r 30000/1001 -i
~/bbb_sunflower_1080p_60fps_normal.mp4 -vframes 600 -an \
-filter_complex "split=2[s1][s2]; [s1]scale_qsv=1280:720[o1];
[s2]scale_qsv=960:540[o2]" \
-map [o1] -c:v h264_qsv -b:v 3200k -minrate 3200k -maxrate 3200k -f
rawvideo /tmp/3200a.264 \
-map [o2] -c:v h264_qsv -b:v 1750k -minrate 1750k -maxrate 1750k -f
rawvideo /tmp/1750a.264
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
Zhong Li [Wed, 4 Apr 2018 09:51:30 +0000 (17:51 +0800)]
lavf/qsvvpp: bypass vpp if not needed.
Currently vpp pipeline is always created, even for the unnecessary
cases such as setting the option "vpp_qsv=w=1280:h=720" for an input
with native resolution 1280x720. Thus introduces unnecessary performance
dropping, so bypass vpp if not needed.
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
Zhong Li [Wed, 4 Apr 2018 09:51:29 +0000 (17:51 +0800)]
lavc/qsvdec: expose frame pic_type and key_frame
Currently pict_type and key_frame are unset.
Add an extra param to fetch the picture type from qsv decoder
The judgement “key frame is equal to IDR frame” only suitable for H264.
For HEVC, all IRAP frames are key frames, and other codecs have no IDR
frame.
Signed-off-by: ChaoX A Liu <chaox.a.liu@intel.com>
Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
Michael Niedermayer [Sat, 7 Apr 2018 19:55:06 +0000 (21:55 +0200)]
avcodec/aacsbr_fixed: Fix integer overflow in sbr_hf_assemble()
Fixes: runtime error: signed integer overflow:
2052929346 +
204817098 cannot be represented in type 'int'
This was missed in
b1bef755f617af9685b592d866b3eb7f3c4b02b1
Fixes: 5275/clusterfuzz-testcase-minimized-
5367635958038528
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Carl Eugen Hoyos [Sat, 7 Apr 2018 19:30:45 +0000 (21:30 +0200)]
lavc/clearvideo: Allow decoding without extradata.
Michael Niedermayer [Mon, 2 Apr 2018 18:01:07 +0000 (20:01 +0200)]
libavcodec/rv34: error out earlier on missing references
Fixes visual corruption on seeking
Fixes: downloadTest_clip_24M.rmvb
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Michael Niedermayer [Fri, 23 Mar 2018 17:58:33 +0000 (18:58 +0100)]
avcodec/get_bits: Document skip_bits_long()
Found-by: Kieran
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
James Almer [Wed, 4 Apr 2018 21:12:53 +0000 (18:12 -0300)]
avformat/matroskadec: reference the existing data buffer when creating packets
Newly allocated data buffers (wavpack, prores, compressed buffers)
are padded to meet the requirements of AVPacket.
About 10x speed up in matroska_parse_frame().
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Wed, 4 Apr 2018 19:07:36 +0000 (16:07 -0300)]
avformat/matroskadec: factor the prores packet parsing code out
Simplifies code in matroska_parse_frame(). This is in preparation for
the following patch.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Wed, 4 Apr 2018 17:12:54 +0000 (14:12 -0300)]
avformat/matroskadec: use refcounted buffers in EbmlBin
Data in EbmlBin objects is never changed after being read from the
input file (save for two specific cases with encoded CodePrivate), so
using AVBufferRef we can prevent unnecessary copy of data by instead
creating new references to said constant data.
Signed-off-by: James Almer <jamrial@gmail.com>
Hendrik Schreiber [Thu, 5 Apr 2018 11:58:37 +0000 (13:58 +0200)]
swresample/swresample: Fix for seg fault in swr_convert_internal() -> sum2_float during dithering.
Removed +len1 in call to s->mix_2_1_f() as I found no logical explanation for it. After removal, problem was gone.
Signed-off-by: Hendrik Schreiber <hs@tagtraum.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Lou Logan [Thu, 5 Apr 2018 18:10:37 +0000 (10:10 -0800)]
doc/developer: remove merge request method of contributing
This seems to confuse Github users into thinking that we may accept pull
requests. We do not accept pull requests.
Sending patches to the ffmpeg-devel mailing list is our preferred method
for users to contribute code.
Signed-off-by: Lou Logan <lou@lrcd.com>
Bela Bodecs [Tue, 3 Apr 2018 14:18:02 +0000 (16:18 +0200)]
doc/filters: some more details and modified example to zmq/azmq
Info about default value of bind_address option and its abbreviated
version (b). Example modified to have named instanced filter and to show
its use.
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Lou Logan <lou@lrcd.com>
Carl Eugen Hoyos [Wed, 4 Apr 2018 22:41:55 +0000 (00:41 +0200)]
lavf/amr: Stricter heuristic for auto-detection.
Fixes ticket #7125.
Josh de Kock [Thu, 5 Apr 2018 21:08:50 +0000 (22:08 +0100)]
lavfi,lavd: add gitignore for generated static component lists
Signed-off-by: Josh de Kock <josh@itanimul.li>
Misty De Meo [Mon, 2 Apr 2018 17:53:30 +0000 (10:53 -0700)]
Add Sega FILM muxer
Signed-off-by: Josh de Kock <josh@itanimul.li>
Martin Vignali [Thu, 5 Apr 2018 20:04:35 +0000 (22:04 +0200)]
avcodec/prores_ks : do not call estimate_alpha at each quantification step
also remove unused arg in estimate_alpha_plane
Improve quality of Prores 4444 encoding
Martin Vignali [Sat, 17 Mar 2018 18:37:46 +0000 (19:37 +0100)]
checkasm/vf_blend : add test for 16 bit version of
grainextract
grainmerge
average
extremity
negation
Martin Vignali [Sat, 17 Mar 2018 18:37:06 +0000 (19:37 +0100)]
avfilter/x86/vf_blend : add SIMD for 16 bit version of
grainextract
grainmerge
average
extremity
negation
Martin Vignali [Sat, 17 Mar 2018 18:24:49 +0000 (19:24 +0100)]
avfilter/x86/vf_blend : reorganize DIFFERENCE macro to reduce line duplication between 8bit and 16 bit version
Valery Kot [Fri, 16 Mar 2018 13:50:34 +0000 (14:50 +0100)]
avcodec/openh264enc.c: generate IDR frame in response to I frame pict_type
Signed-off-by: Valery Kot <valery.kot@gmail.com>
Jacob Trimble [Wed, 4 Apr 2018 19:30:56 +0000 (12:30 -0700)]
avformat/mov: Fix parsing of tfdt when using sample descriptors.
Signed-off-by: Jacob Trimble <modmaker@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Lou Logan [Thu, 5 Apr 2018 18:00:42 +0000 (10:00 -0800)]
doc/developer: update link to "sign-off" info
Found by Hendrik Schreiber.
Signed-off-by: Lou Logan <lou@lrcd.com>
wm4 [Wed, 4 Apr 2018 16:07:03 +0000 (18:07 +0200)]
avcodec/decode: fix warning when decoding pseudo paletted formats
The pseudo palette allocation is optional now. But if it's still
allocated (like the internal get_buffer2 implementation does, for
compatibility), it shouldn't print a warning.
James Almer [Wed, 4 Apr 2018 23:12:41 +0000 (20:12 -0300)]
libaom: remove references to RGB pixfmts
Support for it was apparently never in the codebase, and the enum
values were recently removed from the public headers [1]
Fixes build with latest libaom build.
[1] https://aomedia.googlesource.com/aom/+/
3f29cc20e3a4c348cb41a797c68de856ddb84e12
Signed-off-by: James Almer <jamrial@gmail.com>
Timo Teräs [Mon, 2 Apr 2018 08:36:57 +0000 (11:36 +0300)]
avformat/movenc: add rtp_hinting_needed() helper function
This is shared test and this simplifies code a bit. Follow up
commit will have additional tests for this function.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Timo Teräs [Mon, 2 Apr 2018 08:36:56 +0000 (11:36 +0300)]
ffmpeg: allow setting attached_pic disposition
This is used to signal that image should be stored in metadata
as cover image.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>