ffmpeg.git
4 years agoavformat/mov: Change the type of the r/g/b variables
Michael Niedermayer [Thu, 3 Sep 2015 19:54:44 +0000 (21:54 +0200)]
avformat/mov: Change the type of the r/g/b variables

Fixes integer overflow
Fixes: unknown_unknown_31b_795_cov_1818643045_raybauduc.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/http: Remove superfluous parenthesis.
Stephan Holljes [Thu, 3 Sep 2015 13:56:12 +0000 (15:56 +0200)]
lavf/http: Remove superfluous parenthesis.

Signed-off-by: Stephan Holljes <klaxa1337@googlemail.com>
Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/avf_showwaves: Check max_samples
Michael Niedermayer [Thu, 3 Sep 2015 12:52:18 +0000 (14:52 +0200)]
avfilter/avf_showwaves: Check max_samples

Fixes potential division by zero
Fixes: CID1292295

Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/http: Fix incorrectly placed parenthesis.
Stephan Holljes [Thu, 3 Sep 2015 13:55:10 +0000 (15:55 +0200)]
lavf/http: Fix incorrectly placed parenthesis.

The assignment had incorrectly placed parentheses which resulted in ret
always being > 0.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/af_dynaudnorm: Fix typo in assert
Michael Niedermayer [Thu, 3 Sep 2015 12:42:40 +0000 (14:42 +0200)]
avfilter/af_dynaudnorm: Fix typo in assert

Fixes: CID1322303

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/avf_showfreqs: Use floating point division in WFUNC_BHANN
Michael Niedermayer [Thu, 3 Sep 2015 12:39:08 +0000 (14:39 +0200)]
avfilter/avf_showfreqs: Use floating point division in WFUNC_BHANN

Fixes: CID1322365

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/concatdec: Check file variable before dereferencing
Michael Niedermayer [Thu, 3 Sep 2015 11:35:37 +0000 (13:35 +0200)]
avformat/concatdec: Check file variable before dereferencing

Fixes CID1322328

Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoAAC: MIPS: Add missing codebooks in quantize funcs
Claudio Freire [Thu, 3 Sep 2015 13:49:17 +0000 (10:49 -0300)]
AAC: MIPS: Add missing codebooks in quantize funcs

Add entries on the quantize function tables for the missing
codebooks (which all behave like ZERO)

4 years agoAAC: Increase fuzziness of fate-aac tests
Claudio Freire [Thu, 3 Sep 2015 13:16:33 +0000 (10:16 -0300)]
AAC: Increase fuzziness of fate-aac tests

Needed to make them pass in mips

4 years agodoc: Explain how to use the fps and the fieldmatch filter together.
Carl Eugen Hoyos [Thu, 3 Sep 2015 12:36:34 +0000 (14:36 +0200)]
doc: Explain how to use the fps and the fieldmatch filter together.

Fixes ticket #3968.

4 years agoavformat/file: Fix copy and paste error
Michael Niedermayer [Thu, 3 Sep 2015 10:40:12 +0000 (12:40 +0200)]
avformat/file: Fix copy and paste error

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_sab: use the name 's' for the pointer to the private context
Ganesh Ajjanagadde [Tue, 1 Sep 2015 15:10:04 +0000 (08:10 -0700)]
avfilter/vf_sab: use the name 's' for the pointer to the private context

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
4 years agoavcodec/fraps: use init_get_bits8()
Paul B Mahol [Thu, 3 Sep 2015 09:40:49 +0000 (09:40 +0000)]
avcodec/fraps: use init_get_bits8()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavformat/hlsenc: Fix memleak of path
Michael Niedermayer [Thu, 3 Sep 2015 09:18:10 +0000 (11:18 +0200)]
avformat/hlsenc: Fix memleak of path

Fixes: CID1322343
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/hlsenc: Initialize vtt_oc to help static analyzers
Michael Niedermayer [Thu, 3 Sep 2015 09:14:48 +0000 (11:14 +0200)]
avformat/hlsenc: Initialize vtt_oc to help static analyzers

This is also more robust in case it ever is used

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/latmenc: Add assert to avoid coverity warning
Michael Niedermayer [Thu, 3 Sep 2015 08:37:13 +0000 (10:37 +0200)]
avformat/latmenc: Add assert to avoid coverity warning

Fixes CID1322323

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_drawgraph: add rscroll slide mode
Paul B Mahol [Wed, 2 Sep 2015 06:06:02 +0000 (06:06 +0000)]
avfilter/vf_drawgraph: add rscroll slide mode

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavcodec/vorbisdec: use init_get_bits8()
Paul B Mahol [Tue, 1 Sep 2015 15:53:56 +0000 (15:53 +0000)]
avcodec/vorbisdec: use init_get_bits8()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: constify more variables
Paul B Mahol [Wed, 2 Sep 2015 09:11:52 +0000 (09:11 +0000)]
avfilter/vf_vectorscope: constify more variables

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: support more formats for color4 mode in common case
Paul B Mahol [Wed, 2 Sep 2015 08:48:25 +0000 (08:48 +0000)]
avfilter/vf_vectorscope: support more formats for color4 mode in common case

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_elbg: make it possible to output to pal8 pixel format
Paul B Mahol [Mon, 31 Aug 2015 12:38:24 +0000 (12:38 +0000)]
avfilter/vf_elbg: make it possible to output to pal8 pixel format

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavformat/swfdec: Check return value of init_get_bits8()
Michael Niedermayer [Thu, 3 Sep 2015 07:47:39 +0000 (09:47 +0200)]
avformat/swfdec: Check return value of init_get_bits8()

Fixes: CID1322320

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoswresample/swresample: Fix integer overflow in seed calculation
Michael Niedermayer [Thu, 3 Sep 2015 07:22:31 +0000 (09:22 +0200)]
swresample/swresample: Fix integer overflow in seed calculation

Fixes CID1322333

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/mov: Fix integer overflow in FFABS
Michael Niedermayer [Thu, 3 Sep 2015 07:20:23 +0000 (09:20 +0200)]
avformat/mov: Fix integer overflow in FFABS

Fixes: unknown_unknown_19e_414_cov_764838672_bellhamlam.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavutil/common: Add FFNABS()
Michael Niedermayer [Thu, 3 Sep 2015 00:17:24 +0000 (02:17 +0200)]
avutil/common: Add FFNABS()

This macro avoids the undefined corner case with the *_MIN values

Previous version Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/dump: Fix integer overflow in aspect ratio calculation
Michael Niedermayer [Thu, 3 Sep 2015 00:49:44 +0000 (02:49 +0200)]
avformat/dump: Fix integer overflow in aspect ratio calculation

Fixes: unknown_unknown_19e_414_cov_764838672_bellhamlam.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavutil/common: Document FFABS() corner case
Michael Niedermayer [Thu, 3 Sep 2015 00:00:05 +0000 (02:00 +0200)]
avutil/common: Document FFABS() corner case

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf: add V as a video stream specifier which is not an attached picture
Marton Balint [Mon, 31 Aug 2015 19:22:46 +0000 (21:22 +0200)]
lavf: add V as a video stream specifier which is not an attached picture

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agoavcodec/mpeg12dec: Fix integer overflow
Michael Niedermayer [Wed, 2 Sep 2015 19:11:07 +0000 (21:11 +0200)]
avcodec/mpeg12dec: Fix integer overflow

Fixes: signal_sigabrt_7ffff6ac8cc9_686_cov_1897408623_microsoft_new_way_to_shove_mpeg2_in_asf.dvr_ms

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/mpegvideo: change bit_rate to 64bit
Michael Niedermayer [Wed, 2 Sep 2015 19:02:31 +0000 (21:02 +0200)]
avcodec/mpegvideo: change bit_rate to 64bit

32bit is not sufficient for all cases

Fixes: signal_sigabrt_7ffff6ac8cc9_686_cov_1897408623_microsoft_new_way_to_shove_mpeg2_in_asf.dvr_ms

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/mpegvideo_parser: Fix integer overflow
Michael Niedermayer [Wed, 2 Sep 2015 18:54:42 +0000 (20:54 +0200)]
avcodec/mpegvideo_parser: Fix integer overflow

Fixes: signal_sigabrt_7ffff6ac8cc9_686_cov_1897408623_microsoft_new_way_to_shove_mpeg2_in_asf.dvr_ms

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/truemotion1: Fix undefined behavior (left shift of negative value)
Michael Niedermayer [Wed, 2 Sep 2015 18:43:25 +0000 (20:43 +0200)]
avcodec/truemotion1: Fix undefined behavior (left shift of negative value)

Fixes: asan_heap-oob_26f6853_862_cov_585961513_sonic3dblast_intro-partial.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec: loongson optimize mpeg2 dct unquantize intra and denoise dct
周晓勇 [Wed, 2 Sep 2015 10:01:00 +0000 (18:01 +0800)]
avcodec: loongson optimize mpeg2 dct unquantize intra and denoise dct

Change-Id: I2f391ae912a079fb32f0703841dca86358aac72a
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavfi/colormatrix: Add a bt601 alias
Vittorio Giovara [Wed, 2 Sep 2015 13:05:29 +0000 (15:05 +0200)]
lavfi/colormatrix: Add a bt601 alias

Matches what av_get_colorspace_name() and av_color_space_name() report.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoffmpeg: Improve help text for -target.
Carl Eugen Hoyos [Wed, 2 Sep 2015 12:32:06 +0000 (14:32 +0200)]
ffmpeg: Improve help text for -target.

Fixes ticket #1057.

4 years agoavcodec/mips/aaccoder_mips: disable optimizatios which break fate-aac-pns-encode
Michael Niedermayer [Wed, 2 Sep 2015 10:39:38 +0000 (12:39 +0200)]
avcodec/mips/aaccoder_mips: disable optimizatios which break fate-aac-pns-encode

These should be re enabled once the issue is fixed

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate: increase fuzziness for the AAC encoder prediction test
Rostislav Pehlivanov [Wed, 2 Sep 2015 07:36:53 +0000 (08:36 +0100)]
fate: increase fuzziness for the AAC encoder prediction test

Fails on x86_64 using ICC 13.1.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agofate: add fuzziness to the AAC Encode prediction test
Rostislav Pehlivanov [Wed, 2 Sep 2015 06:15:42 +0000 (07:15 +0100)]
fate: add fuzziness to the AAC Encode prediction test

Fails on ppc64 architecture under Ubuntu.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agofate: update AAC encoder tests
Rostislav Pehlivanov [Wed, 2 Sep 2015 05:39:59 +0000 (06:39 +0100)]
fate: update AAC encoder tests

TNS had both IS and PNS switched on when it makes more sense
to have them both off.

Prediction had a redundant argument.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: reorder coding tools
Rostislav Pehlivanov [Wed, 2 Sep 2015 05:26:45 +0000 (06:26 +0100)]
aacenc: reorder coding tools

This commit reorders the coding tools such that they're doing what
the decoder does in reverse order. The very first thing the decoder
does is to decode M/S stereo if that's signalled, then prediction,
IS, and finally TNS and PNS in another function.
adjust_frame_information()'s application of IS and M/S was taken
out into two separate functions since prediction doesn't expect
to get the raw coefficients but rathe the coefficients at that
part of the encoding process.

The results show a much better PSNR when any combination of
Intensity Stereo, Mid/Side stereo and Prediction is used, which
is a sign of an increased encoder efficiency as well as the fact
that the decoder gets what it expects.

Otherwise, with only IS, PNS or prediction there are neither
regressions nor improvements except in the case of IS, which
now by itself (or with PNS) is less prone to artifacts. Enabling
M/S (using stereo_mode) as well will also reduce stereo artifacts
induced by IS, so in the very near future M/S may be enabled
by default.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoavformat/hlsenc: add a use_localtime option to expand the segment filename with localtime
LiuQi [Mon, 31 Aug 2015 20:10:15 +0000 (04:10 +0800)]
avformat/hlsenc: add a use_localtime option to expand the segment filename with localtime

test examples:

./ffmpeg -re -i ~/Movies/objectC/facebook.mp4 -v verbose -c copy -f hls -hls_segment_filename test-%s.ts -use_localtime 1 -bsf:v h264_mp4toannexb aaa.m3u8

[StevenLiu@localhost ffmpeg]$ cat aaa.m3u8;ll test-*.ts
test-1441052221.ts
test-1441052231.ts
test-1441052235.ts
test-1441052243.ts
test-1441052249.ts
-rw-r--r--  1 StevenLiu  staff  1310736  9  1 04:15 test-1441052131.ts
-rw-r--r--  1 StevenLiu  staff   495192  9  1 04:15 test-1441052141.ts
-rw-r--r--  1 StevenLiu  staff  1310736  9  1 04:17 test-1441052212.ts
-rw-r--r--  1 StevenLiu  staff  1067840  9  1 04:17 test-1441052221.ts
-rw-r--r--  1 StevenLiu  staff   235564  9  1 04:17 test-1441052231.ts
-rw-r--r--  1 StevenLiu  staff  1187220  9  1 04:17 test-1441052235.ts
-rw-r--r--  1 StevenLiu  staff   694848  9  1 04:17 test-1441052243.ts
-rw-r--r--  1 StevenLiu  staff   526588  9  1 04:17 test-1441052249.ts
[StevenLiu@localhost ffmpeg]$

./ffmpeg -re -i ~/Movies/objectC/facebook.mp4 -v verbose -c copy -f hls -hls_segment_filename test-%s.ts -use_localtime 1 -bsf:v h264_mp4toannexb aaa.m3u8

[StevenLiu@localhost ffmpeg]$ cat aaa.m3u8;ll aaa-*.ts
aaa-1441052417.ts
aaa-1441052427.ts
aaa-1441052437.ts
aaa-1441052440.ts
aaa-1441052449.ts
-rw-r--r--  1 StevenLiu  staff  1310736  9  1 04:19 aaa-1441052382.ts
-rw-r--r--  1 StevenLiu  staff   277300  9  1 04:19 aaa-1441052392.ts
-rw-r--r--  1 StevenLiu  staff  1310736  9  1 04:20 aaa-1441052417.ts
-rw-r--r--  1 StevenLiu  staff  1067840  9  1 04:20 aaa-1441052427.ts
-rw-r--r--  1 StevenLiu  staff   235564  9  1 04:20 aaa-1441052437.ts
-rw-r--r--  1 StevenLiu  staff  1187220  9  1 04:20 aaa-1441052440.ts
-rw-r--r--  1 StevenLiu  staff   338776  9  1 04:20 aaa-1441052449.ts
[StevenLiu@localhost ffmpeg]$

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/hevc_parser: fix split function of parser
Rainer Hochecker [Tue, 1 Sep 2015 14:27:02 +0000 (16:27 +0200)]
avcodec/hevc_parser: fix split function of parser

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/ffv1dec: Print CRCs at picture debug level
Michael Niedermayer [Wed, 2 Sep 2015 00:11:43 +0000 (02:11 +0200)]
avcodec/ffv1dec: Print CRCs at picture debug level

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/ffv1dec: Check that there is enough space for the CRC in the global header
Michael Niedermayer [Wed, 2 Sep 2015 00:10:31 +0000 (02:10 +0200)]
avcodec/ffv1dec: Check that there is enough space for the CRC in the global header

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/h264_slice: replace assert by normal error check
Michael Niedermayer [Tue, 1 Sep 2015 22:44:28 +0000 (00:44 +0200)]
avcodec/h264_slice: replace assert by normal error check

Fixes assertion failure
Fixes: c6075771557e4f3b7b74e63d2d24fb01/signal_sigabrt_7ffff6ac8cc9_133_cov_2853689970_CREDITS.FST

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/dv: Do not return EIO for every error (like EOF).
Carl Eugen Hoyos [Tue, 1 Sep 2015 22:58:13 +0000 (00:58 +0200)]
lavf/dv: Do not return EIO for every error (like EOF).

Fixes ticket #4818.

Reviewed-by: Ronald S. Bultje
Reviewed-by: Paul B Mahol
4 years agoavfilter/vf_subtitles: allow setting fonts directory
Ricardo Constantino [Sun, 30 Aug 2015 22:52:10 +0000 (23:52 +0100)]
avfilter/vf_subtitles: allow setting fonts directory

This is mostly useful if libass was compiled with a font provider
other than fontconfig, but is still useful in that case.

Signed-off-by: Ricardo Constantino <wiiaboo@gmail.com>
4 years agoavcodec/version: Minor version bump due to 5d12d7de2ce548a3c9f5c175a9d1c5bfbdbcbfa8
Michael Niedermayer [Tue, 1 Sep 2015 21:02:15 +0000 (23:02 +0200)]
avcodec/version: Minor version bump due to 5d12d7de2ce548a3c9f5c175a9d1c5bfbdbcbfa8

Found-by: ubitux
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/mxg: Use memmove()
Michael Niedermayer [Tue, 1 Sep 2015 20:45:07 +0000 (22:45 +0200)]
avformat/mxg: Use memmove()

Fixes undefined behavior
Fixes: 1700002963a49da13542e0726b7bb758/unknown_unknown_292_658_cov_2141972066_m1.mxg

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agompegts: demux BluRay text subtitles
Petri Hintukainen [Tue, 1 Sep 2015 08:56:21 +0000 (11:56 +0300)]
mpegts: demux BluRay text subtitles

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agompegts: fix demuxing PES private stream 2
Petri Hintukainen [Mon, 31 Aug 2015 09:06:16 +0000 (12:06 +0300)]
mpegts: fix demuxing PES private stream 2

PES header size is 6 bytes (00 00 01 bf XX XX), not 0.
BluRay text subtitles use private stream 2.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_spp: use the name 's' for the pointer to the private context
Ganesh Ajjanagadde [Mon, 31 Aug 2015 15:07:56 +0000 (08:07 -0700)]
avfilter/vf_spp: use the name 's' for the pointer to the private context

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
4 years agortmp: support the AMF_DATE tag
Andrew Stone [Tue, 1 Sep 2015 00:28:42 +0000 (20:28 -0400)]
rtmp: support the AMF_DATE tag

Instead of returning EINVAL, which can cause a stream to fail to load, this
allows the tag to be passed through to the flv demuxer, where it's summarily
ignored.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoaacenc: disable bandtype modifying extensions when coder != twoloop
Rostislav Pehlivanov [Tue, 1 Sep 2015 11:07:00 +0000 (12:07 +0100)]
aacenc: disable bandtype modifying extensions when coder != twoloop

If the selected coder isn't twoloop, this commit temporarily
disables IS and PNS.
The problem is in the encode_window_bands_info() being confused
and setting invalid band_types for non-marked (normal) bands.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoavfilter/vf_waveform: support envelope for all filters
Paul B Mahol [Mon, 31 Aug 2015 17:48:10 +0000 (17:48 +0000)]
avfilter/vf_waveform: support envelope for all filters

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_waveform: simplify memory allocations
Paul B Mahol [Mon, 31 Aug 2015 16:45:55 +0000 (16:45 +0000)]
avfilter/vf_waveform: simplify memory allocations

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_waveform: implement various filters
Paul B Mahol [Fri, 28 Aug 2015 18:45:53 +0000 (18:45 +0000)]
avfilter/vf_waveform: implement various filters

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agofate: adjust fuzz of AAC Encoder's TNS test
Rostislav Pehlivanov [Tue, 1 Sep 2015 08:08:31 +0000 (09:08 +0100)]
fate: adjust fuzz of AAC Encoder's TNS test

Have to adjust it again, this time because of --enable-small on
gcc 4.5 in Linaro.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agolavf: Remove probesize32 and max_analyze_duration32 on version bump.
Carl Eugen Hoyos [Tue, 1 Sep 2015 07:19:49 +0000 (09:19 +0200)]
lavf: Remove probesize32 and max_analyze_duration32 on version bump.

Add FF_API_PROBESIZE_32 to allow removing 32bit probesize and 32bit
max_analyze_duration after the next libavformat version bump.

4 years agolavfi/scale: Pass src_range and dst_range to libswscale.
Carl Eugen Hoyos [Tue, 1 Sep 2015 07:17:26 +0000 (09:17 +0200)]
lavfi/scale: Pass src_range and dst_range to libswscale.

Fixes ticket #4812.

4 years agofate: update AAC tests to the new defaults
Rostislav Pehlivanov [Tue, 1 Sep 2015 06:26:03 +0000 (07:26 +0100)]
fate: update AAC tests to the new defaults

IS and PNS increase quality a ton so as a result the PSNR changed.
Disable the extensions and keep the tests separate such that there
will be no red herrings if one test fails.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: Enable Intensity Stereo by default
Rostislav Pehlivanov [Tue, 1 Sep 2015 06:15:23 +0000 (07:15 +0100)]
aacenc: Enable Intensity Stereo by default

Since the changes made a few week ago (which were done more than a
month ago) the quality and stability of intensity stereo has been
notably good. There were some requests and wishes to have in on by
default and therefore it has been enabled. Should any regressions
arise changes will be made to preferably keep it operating rather
than just disabling it by default again.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: Enable Perceptual Noise Substitution by default
Rostislav Pehlivanov [Tue, 1 Sep 2015 06:13:33 +0000 (07:13 +0100)]
aacenc: Enable Perceptual Noise Substitution by default

It has been in the current encoder in its current implementation
for quite some time now, so enable it by default. Will increase
quality at all bitrates, especially at low ones.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agofate: update AAC Encoder TNS test for the new changes
Rostislav Pehlivanov [Tue, 1 Sep 2015 06:07:59 +0000 (07:07 +0100)]
fate: update AAC Encoder TNS test for the new changes

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: reorder resetting of cpe->common_window
Rostislav Pehlivanov [Tue, 1 Sep 2015 06:00:10 +0000 (07:00 +0100)]
aacenc: reorder resetting of cpe->common_window

Purely a cosmetic change, most of the zeroing of encoder resources
should happen at the top of the main loop.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc_tns: rework coefficient quantization and filter application
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:44:07 +0000 (06:44 +0100)]
aacenc_tns: rework coefficient quantization and filter application

This commit reworks the TNS implementation to a hybrid between what
the specifications say, what the decoder does and what's the best
thing to do.

The filter application function was copied from the decoder and
modified such that it applies the inverse AR filter to the
coefficients. The LPC coefficients themselves are fed into the
same quantization expression that the specifications say should
be used however further processing is not done, instead they're
converted to the form that the decoder expects them to be in
and are sent off to the compute_lpc_coeffs function exactly the
way the decoder does. This function does all conversions and will
return the exact coefficients that the decoder will generate, which
are then applied to the coefficients.
Having the exact same coefficients on both the encoder and decoder
is a must since otherwise the entire sfb's over which the filter
is applied will be attenuated.

Despite this major rework, TNS might not work fine on some audio
types at very low bitrates (e.g. sub 90kbps) as it can attenuate
some coefficients too much. Users are advised to experiment with
TNS at higher bitrates if they wish to use this tool or simply
wait for the implementation to be improved.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: allocate a larger buffer for the TNS LPC context
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:40:12 +0000 (06:40 +0100)]
aacenc: allocate a larger buffer for the TNS LPC context

Turns out autocorrelating more than 750 coefficients at once
will cause a segfault, despite there being enough space to
hold an entire frame of samples into the buffer.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agolpc: add ff_lpc_calc_ref_coefs_f() function
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:34:50 +0000 (06:34 +0100)]
lpc: add ff_lpc_calc_ref_coefs_f() function

This commit adds a function to get the reflection coefficients on
floating point samples. It's functionally identical to
ff_lpc_calc_ref_coefs() except it works on float samples and will
return the global prediction gain. The Welch window implementation
which is more optimized works only on int32_t samples so a slower
generic expression was used.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agolpc: remove unused ff_lpc_calc_levinson() function
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:32:35 +0000 (06:32 +0100)]
lpc: remove unused ff_lpc_calc_levinson() function

Not needed anymore, it was only used by the AAC TNS
encoder and was replaced with a more suitable function
in the following commit.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenctab: add tns_min_sfb[] to the encoder tables header
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:30:08 +0000 (06:30 +0100)]
aacenctab: add tns_min_sfb[] to the encoder tables header

Needed for following commits. Contains the starting sfb for
every samplerate and window type.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoaacenc: populate tns_max_bands
Rostislav Pehlivanov [Tue, 1 Sep 2015 05:20:24 +0000 (06:20 +0100)]
aacenc: populate tns_max_bands

Needed for the following commits.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoavcodec/truemotion1: Check for even width
Michael Niedermayer [Tue, 1 Sep 2015 02:57:22 +0000 (04:57 +0200)]
avcodec/truemotion1: Check for even width

Fixes out of array access
Fixes: 87196d8bbc633629fc9dd851fce73e70/asan_heap-oob_26f6853_862_cov_585961513_sonic3dblast_intro-partial.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/mpeg12dec: Set dimensions in mpeg1_decode_sequence() only in absence of errors
Michael Niedermayer [Tue, 1 Sep 2015 00:45:10 +0000 (02:45 +0200)]
avcodec/mpeg12dec: Set dimensions in mpeg1_decode_sequence() only in absence of errors

Fixes assertion failure
Fixes: 56dcafde14a8397161bb61a16c511179/signal_sigabrt_7ffff6ac8cc9_686_cov_1897408623_microsoft_new_way_to_shove_mpeg2_in_asf.dvr_ms

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/movtextdec: Free ftab_temp
Michael Niedermayer [Mon, 31 Aug 2015 21:43:43 +0000 (23:43 +0200)]
avcodec/movtextdec: Free ftab_temp

Fixes memleak
Fixes: efe937780e95574250dabe07151bdc23/unknown_unknown_351_849_cov_3187578556_shellymanne.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/movtextdec: Make tx3g_ptr unsigned
Michael Niedermayer [Mon, 31 Aug 2015 21:01:23 +0000 (23:01 +0200)]
avcodec/movtextdec: Make tx3g_ptr unsigned

Fixes integer overflow
Fixes: efe937780e95574250dabe07151bdc23/unknown_unknown_351_849_cov_3187578556_shellymanne.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agotests: Renamed pix_fmts wording in ffv1 test target name to match pix_fmt parameter.
Peter B [Mon, 31 Aug 2015 01:02:36 +0000 (03:02 +0200)]
tests: Renamed pix_fmts wording in ffv1 test target name to match pix_fmt parameter.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate: use 'c' for setting the channel_layout
Andreas Cadhalpun [Sat, 8 Aug 2015 18:01:50 +0000 (20:01 +0200)]
fate: use 'c' for setting the channel_layout

Without this fate-filter-join failes with
FF_API_GET_CHANNEL_LAYOUT_COMPAT disabled.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavcodec/pngdec: fully support the tRNS chunk
Donny Yang [Fri, 28 Aug 2015 13:53:07 +0000 (13:53 +0000)]
avcodec/pngdec: fully support the tRNS chunk

Signed-off-by: Donny Yang <work@kota.moe>
4 years agoMerge commit 'c457bdebe7af643b380aa0f6add3cb4335d218dc'
Hendrik Leppkes [Mon, 31 Aug 2015 08:08:18 +0000 (10:08 +0200)]
Merge commit 'c457bdebe7af643b380aa0f6add3cb4335d218dc'

* commit 'c457bdebe7af643b380aa0f6add3cb4335d218dc':
  checkasm: Fix floating point arguments on 64-bit Windows

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'b1abd2aaf91be249f24cb74db9c205d9e4ca9da6'
Hendrik Leppkes [Mon, 31 Aug 2015 08:07:34 +0000 (10:07 +0200)]
Merge commit 'b1abd2aaf91be249f24cb74db9c205d9e4ca9da6'

* commit 'b1abd2aaf91be249f24cb74db9c205d9e4ca9da6':
  vf_scale: Add an option to pass the scaler params

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'c23999be134bde0a0554261a9043be7dbc01de0c'
Hendrik Leppkes [Mon, 31 Aug 2015 08:01:58 +0000 (10:01 +0200)]
Merge commit 'c23999be134bde0a0554261a9043be7dbc01de0c'

* commit 'c23999be134bde0a0554261a9043be7dbc01de0c':
  avconv_opt: Add an option that lists all supported hwaccels

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit '629d4c5b4deee08bf3a4f3ab45fd4f8b76d7aff3'
Hendrik Leppkes [Mon, 31 Aug 2015 08:00:07 +0000 (10:00 +0200)]
Merge commit '629d4c5b4deee08bf3a4f3ab45fd4f8b76d7aff3'

* commit '629d4c5b4deee08bf3a4f3ab45fd4f8b76d7aff3':
  avconv_opt: Add missing comma

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoswscale/utils: If cascaded contexts are used forward sws_setColorspaceDetails() to...
Michael Niedermayer [Sun, 30 Aug 2015 22:34:55 +0000 (00:34 +0200)]
swscale/utils: If cascaded contexts are used forward sws_setColorspaceDetails() to the first context

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoswscale/utils: Split scaling if possible and yuv->yuv with different matrixes is...
Michael Niedermayer [Sun, 30 Aug 2015 21:58:37 +0000 (23:58 +0200)]
swscale/utils: Split scaling if possible and yuv->yuv with different matrixes is requested

This uses a RGB intermediate, a more optimal solution would be to perform the rematrixing
directly in subsampled YUV, this is quite a bit more complicated though

Fixes Ticket4805

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_scale: If no output color matrix is specified, use the input
Michael Niedermayer [Sun, 30 Aug 2015 22:17:50 +0000 (00:17 +0200)]
avfilter/vf_scale: If no output color matrix is specified, use the input

This should only affect yuv->yuv, and not change behavior

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_scale: Do not skip scale if the color matrix mismatches
Michael Niedermayer [Sun, 30 Aug 2015 21:49:04 +0000 (23:49 +0200)]
avfilter/vf_scale: Do not skip scale if the color matrix mismatches

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_scale: Do not skip scale if range mismatches
Carl Eugen Hoyos [Sun, 30 Aug 2015 21:46:11 +0000 (23:46 +0200)]
avfilter/vf_scale: Do not skip scale if range mismatches

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate: add -fflags +bitexact to the relevant targets
Andreas Cadhalpun [Sat, 22 Aug 2015 13:34:28 +0000 (15:34 +0200)]
fate: add -fflags +bitexact to the relevant targets

This fixes fate with FF_API_LAVF_BITEXACT disabled.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agomux: warn if the encoders bitexact flag is set, but not the muxers
Andreas Cadhalpun [Mon, 24 Aug 2015 22:37:04 +0000 (00:37 +0200)]
mux: warn if the encoders bitexact flag is set, but not the muxers

Based-on-patch-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavfilter: add missing FF_API_AVFILTERBUFFER guards
Andreas Cadhalpun [Sun, 16 Aug 2015 22:34:58 +0000 (00:34 +0200)]
avfilter: add missing FF_API_AVFILTERBUFFER guards

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavfilter/vf_separatefields: use the name 's' for the pointer to the private context
Ganesh Ajjanagadde [Sun, 30 Aug 2015 15:46:08 +0000 (08:46 -0700)]
avfilter/vf_separatefields: use the name 's' for the pointer to the private context

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
4 years agoavcodec/qsv : Added look ahead rate control mode
Sven Dueking [Fri, 21 Aug 2015 08:17:35 +0000 (09:17 +0100)]
avcodec/qsv : Added look ahead rate control mode

Reviewed-by: Ivan Uskov <ivan.uskov@nablet.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_vectorscope: make color mode more useful
Paul B Mahol [Sun, 30 Aug 2015 13:34:17 +0000 (13:34 +0000)]
avfilter/vf_vectorscope: make color mode more useful

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoswresample/swresample-test: Make layouts static const
Michael Niedermayer [Sun, 30 Aug 2015 10:45:53 +0000 (12:45 +0200)]
swresample/swresample-test: Make layouts static const

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavdevice/libdc1394: Make dc1394_frame_format and dc1394_frame_rate, static
Michael Niedermayer [Sun, 30 Aug 2015 10:42:42 +0000 (12:42 +0200)]
avdevice/libdc1394: Make dc1394_frame_format and dc1394_frame_rate, static

These are not used outside nor are in installed headers

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/options: Make dummy_v?_encoder static
Michael Niedermayer [Sun, 30 Aug 2015 09:56:41 +0000 (11:56 +0200)]
avcodec/options: Make dummy_v?_encoder static

It does not need to be non static

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agodoc/filters: mention all short names for vectorscope options
Paul B Mahol [Sun, 30 Aug 2015 08:35:02 +0000 (08:35 +0000)]
doc/filters: mention all short names for vectorscope options

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: implement envelope support
Paul B Mahol [Sat, 29 Aug 2015 21:18:53 +0000 (21:18 +0000)]
avfilter/vf_vectorscope: implement envelope support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavcodec/snowenc: Support setting the iterative dia size separately
Michael Niedermayer [Fri, 24 Jul 2015 18:50:55 +0000 (20:50 +0200)]
avcodec/snowenc: Support setting the iterative dia size separately

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoaacenc_tns: do not limit the filter size
Rostislav Pehlivanov [Sat, 29 Aug 2015 20:59:38 +0000 (21:59 +0100)]
aacenc_tns: do not limit the filter size

This was copied from the decoder, but is unneeded for the encoder.
tns_max_bands is unused and set to zero which zeroed out start, end
and size and thus no filter was actually applied.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>