]> git.sesse.net Git - ffmpeg/log
ffmpeg
8 years agoMerge commit '1761ab838c75223a6b97d8c0720d09275374c53d'
Michael Niedermayer [Wed, 8 Jul 2015 23:17:49 +0000 (01:17 +0200)]
Merge commit '1761ab838c75223a6b97d8c0720d09275374c53d'

* commit '1761ab838c75223a6b97d8c0720d09275374c53d':
  lavc: Deprecate avctx.rc_strategy

Conflicts:
libavcodec/mpegvideo.h
libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20'
Michael Niedermayer [Wed, 8 Jul 2015 22:49:20 +0000 (00:49 +0200)]
Merge commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20'

* commit '02b7c630875c0bc63cee5ec597aa33baf9bf4e20':
  h261: Signal freeze picture release for intra frames

Conflicts:
tests/ref/vsynth/vsynth1-h261
tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'dc1de0b958836545339611e9c050a1d4fdded263'
Michael Niedermayer [Wed, 8 Jul 2015 22:33:52 +0000 (00:33 +0200)]
Merge commit 'dc1de0b958836545339611e9c050a1d4fdded263'

* commit 'dc1de0b958836545339611e9c050a1d4fdded263':
  h261: Set 'still image mode off' in picture header

Conflicts:
tests/ref/vsynth/vsynth1-h261
tests/ref/vsynth/vsynth2-h261

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'c8b8271379b200c5c6fa89ca995f90f97f55c2c5'
Michael Niedermayer [Wed, 8 Jul 2015 22:20:10 +0000 (00:20 +0200)]
Merge commit 'c8b8271379b200c5c6fa89ca995f90f97f55c2c5'

* commit 'c8b8271379b200c5c6fa89ca995f90f97f55c2c5':
  xcbgrab: Explicitly include xcb/shape.h

See: 54170a33c2c97b0f50347f57e8f0f2ea681dca1d
Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '161a301d44274645c2272855dac3e4664f935603'
Michael Niedermayer [Wed, 8 Jul 2015 22:10:20 +0000 (00:10 +0200)]
Merge commit '161a301d44274645c2272855dac3e4664f935603'

* commit '161a301d44274645c2272855dac3e4664f935603':
  mpjpeg: Write the Content-length

Conflicts:
libavformat/mpjpeg.c

See: 0d2f4eedc8a46892471c51cbc7a78cd9a489771a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'd09b4cce21cdad5ef2855698395ffd6e37445212'
Michael Niedermayer [Wed, 8 Jul 2015 21:53:08 +0000 (23:53 +0200)]
Merge commit 'd09b4cce21cdad5ef2855698395ffd6e37445212'

* commit 'd09b4cce21cdad5ef2855698395ffd6e37445212':
  mpjpeg: Simplify using avio_printf

Conflicts:
libavformat/mpjpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavfilter: add removegrain
Paul B Mahol [Sat, 4 Jul 2015 20:19:05 +0000 (20:19 +0000)]
avfilter: add removegrain

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoavcodec/h264_slice: Fix container cropping
Michael Niedermayer [Wed, 8 Jul 2015 15:49:00 +0000 (17:49 +0200)]
avcodec/h264_slice: Fix container cropping

Fixes out of array read
Fixes: asan_heap-oob_394322e_138_cov_4265020547_CVPCMNL1_SVA_C.264
Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc: Deprecate avctx.rc_strategy
Vittorio Giovara [Fri, 3 Jul 2015 15:46:44 +0000 (16:46 +0100)]
lavc: Deprecate avctx.rc_strategy

Only used by libxvid in ratecontrol module, so move it to a codec
private option.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
8 years agoavcodec/g2meet: Clear pointers after deallocation
Michael Niedermayer [Wed, 8 Jul 2015 13:38:37 +0000 (15:38 +0200)]
avcodec/g2meet: Clear pointers after deallocation

Fixes double free

Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agobuild: add LDLIBFLAGS
Ganesh Ajjanagadde [Sat, 27 Jun 2015 16:27:59 +0000 (12:27 -0400)]
build: add LDLIBFLAGS

Fixes Ticket4673

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec/utils: Check values in apply_param_change()
Michael Niedermayer [Wed, 8 Jul 2015 02:23:45 +0000 (04:23 +0200)]
avcodec/utils: Check values in apply_param_change()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavformat/swfdec: Fix "}else" style
Michael Niedermayer [Wed, 8 Jul 2015 09:30:21 +0000 (11:30 +0200)]
avformat/swfdec: Fix "}else" style

Found-by: durandal_170
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavfilter/vf_colormatrix: add yuv444p support
Paul B Mahol [Mon, 6 Jul 2015 14:07:52 +0000 (14:07 +0000)]
avfilter/vf_colormatrix: add yuv444p support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoavformat/swfdec: Do not error out on pixel format changes
Michael Niedermayer [Wed, 8 Jul 2015 00:43:02 +0000 (02:43 +0200)]
avformat/swfdec: Do not error out on pixel format changes

Instead print an error and continue

Fixes Ticket4702

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agovideodsp: assert that linesize is larger than width
Michael Niedermayer [Tue, 7 Jul 2015 22:49:04 +0000 (00:49 +0200)]
videodsp: assert that linesize is larger than width

Suggested-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agowmalosslessdec: reset frame->nb_samples on packet loss
Andreas Cadhalpun [Thu, 2 Jul 2015 22:02:44 +0000 (00:02 +0200)]
wmalosslessdec: reset frame->nb_samples on packet loss

Otherwise a frame with non-zero nb_samples but without any data can be
returned.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
8 years agowmalosslessdec: avoid reading 0 bits with get_bits
Andreas Cadhalpun [Thu, 2 Jul 2015 22:01:56 +0000 (00:01 +0200)]
wmalosslessdec: avoid reading 0 bits with get_bits

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
8 years agoaacenc: fix option descriptions
Rostislav Pehlivanov [Sun, 5 Jul 2015 15:48:19 +0000 (16:48 +0100)]
aacenc: fix option descriptions

Since the new PNS implementation has been merged and is no longer considered
proof of concept (as it's much more complex and better than the previous), change
the comments to reflect that. We need people testing it (since all AAC profiles
require it to be on by default) and having it tagged as proof of concept might drive some away.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec/libdcadec: export matrix encoding side data
James Almer [Tue, 7 Jul 2015 17:29:08 +0000 (14:29 -0300)]
avcodec/libdcadec: export matrix encoding side data

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
8 years agoPut a space between string literals and macros.
Chris Watkins [Tue, 7 Jul 2015 17:40:27 +0000 (10:40 -0700)]
Put a space between string literals and macros.

When compiling libavutil/internal.h as C++11, clang warns that a space
is required between a string literal and an identifier. Put spaces
in concatenations of string literals and EXTERN_PREFIX.

Signed-off-by: Chris Watkins <watk@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoconfigure: loongson enabled local aligned 32
周晓勇 [Mon, 6 Jul 2015 09:16:49 +0000 (17:16 +0800)]
configure: loongson enabled local aligned 32

Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoh261: Signal freeze picture release for intra frames
Stian Selnes [Tue, 2 Dec 2014 17:55:13 +0000 (18:55 +0100)]
h261: Signal freeze picture release for intra frames

Freeze picture release should be set to 1 when we're responding to a
fast update request. For simplicity we set it for all intra frames,
including those that starts a GOP.

Fixes issue where Tandberg MXP1700 does not recover from packet loss
state since it's waiting for the freeze picture relase indication.

Bug-Id: 873
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
8 years agoh261: Set 'still image mode off' in picture header
Stian Selnes [Fri, 12 Dec 2014 15:08:19 +0000 (16:08 +0100)]
h261: Set 'still image mode off' in picture header

Ref H.261 recommendation section 4.2.1.3, setting the still image flag
to 1 disables still image mode. Some decoders require this in order to
decode the bitstream as normal video.

Fixes H.261 calls to Cisco E20.

Also, reserved (aka spare) bits should be set to 1 unless specified
otherwise.

Bug-Id: 872
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
8 years agoavcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for idctdsp functions
Shivraj Patil [Mon, 29 Jun 2015 15:27:15 +0000 (20:57 +0530)]
avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for idctdsp functions

This patch adds MSA (MIPS-SIMD-Arch) optimizations for idctdsp functions in new file idctdsp_msa.c and simple_idct_msa.c

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolibavcodec/qsv.c: Linux-only code part has been moved to separate function in order...
Ivan Uskov [Mon, 6 Jul 2015 15:04:13 +0000 (18:04 +0300)]
libavcodec/qsv.c: Linux-only code part has been moved to separate function in order to avoid the "ISO C90 forbids mixed declarations and code" compiler warning.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavf/mpegtsenc: Only fail aac muxing if the first frame is invalid.
Carl Eugen Hoyos [Tue, 7 Jul 2015 08:44:46 +0000 (10:44 +0200)]
lavf/mpegtsenc: Only fail aac muxing if the first frame is invalid.

Fixes ticket #3957.

8 years agoconfigure: add loongson2 cpu support
周晓勇 [Fri, 3 Jul 2015 10:12:07 +0000 (18:12 +0800)]
configure: add loongson2 cpu support

Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agouse mmi instead of loongson3 as simd-optimization flag
周晓勇 [Fri, 3 Jul 2015 10:11:27 +0000 (18:11 +0800)]
use mmi instead of loongson3 as simd-optimization flag

Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec: loongson remove useless macros in mipsfpu optimization
周晓勇 [Fri, 3 Jul 2015 10:10:41 +0000 (18:10 +0800)]
avcodec: loongson remove useless macros in mipsfpu optimization

Loongson has disabled all mipsfpu optimization as fate-test faild.

Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoxcbgrab: Explicitly include xcb/shape.h
Luca Barbato [Mon, 6 Jul 2015 18:00:27 +0000 (20:00 +0200)]
xcbgrab: Explicitly include xcb/shape.h

Found-By: Cheristheus
8 years agoavcodec/lpc: Fix lpc_apply_welch_window_c() for odd len
Michael Niedermayer [Mon, 6 Jul 2015 17:11:42 +0000 (19:11 +0200)]
avcodec/lpc: Fix lpc_apply_welch_window_c() for odd len

Also removes assert
this fixes an assertion failure on non-x86

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for me_cmp functions
Shivraj Patil [Mon, 29 Jun 2015 15:27:14 +0000 (20:57 +0530)]
avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for me_cmp functions

This patch adds MSA (MIPS-SIMD-Arch) optimizations for me_cmp functions in new file me_cmp_msa.c

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for mpegvideoencdsp functions
Shivraj Patil [Mon, 29 Jun 2015 15:27:13 +0000 (20:57 +0530)]
avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for mpegvideoencdsp functions

This patch adds MSA (MIPS-SIMD-Arch) optimizations for mpegvideoencdsp functions in new file mpegvideoencdsp_msa.c

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolibavcodec/qsvenc.c: A warning message when library will work at partial hardware...
Ivan Uskov [Mon, 6 Jul 2015 13:58:33 +0000 (16:58 +0300)]
libavcodec/qsvenc.c: A warning message when library will work at partial hardware acceleration.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoffmpeg_opt: allow the user to ignore unused stream maps
Rodger Combs [Wed, 1 Jul 2015 19:14:26 +0000 (14:14 -0500)]
ffmpeg_opt: allow the user to ignore unused stream maps

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec: Add support for Closed Caption export in h264
Kieran Kunhya [Mon, 6 Jul 2015 00:05:01 +0000 (01:05 +0100)]
avcodec: Add support for Closed Caption export in h264

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolibavcodec/qsvenc.c: More correct selection of alignment of a frame height depending...
Ivan Uskov [Sat, 4 Jul 2015 12:33:26 +0000 (15:33 +0300)]
libavcodec/qsvenc.c: More correct selection of alignment of a frame height depending whether an encoded sequence progressive or not.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc/utils: get rid of add_metadata_from_side_data forward declaration
Marton Balint [Sun, 5 Jul 2015 17:02:04 +0000 (19:02 +0200)]
lavc/utils: get rid of add_metadata_from_side_data forward declaration

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc/utils: call add_metadata_from_side_data in ff_init_buffer_info
Marton Balint [Sun, 5 Jul 2015 17:02:03 +0000 (19:02 +0200)]
lavc/utils: call add_metadata_from_side_data in ff_init_buffer_info

This should ensure that each frame get its metadata from its proper packet
regardless of frame delays caused by reordering or threading.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc/utils: change add_metadata_from_side_data to accept avpacket
Marton Balint [Sun, 5 Jul 2015 17:02:02 +0000 (19:02 +0200)]
lavc/utils: change add_metadata_from_side_data to accept avpacket

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc/utils: remove redundant call to ff_init_buffer_info
Marton Balint [Sun, 5 Jul 2015 17:02:01 +0000 (19:02 +0200)]
lavc/utils: remove redundant call to ff_init_buffer_info

It does the same as calling ff_decode_frame_props.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc/j2kenc: Enable yuv42x and yuv41x encoding.
Carl Eugen Hoyos [Sun, 5 Jul 2015 21:49:17 +0000 (23:49 +0200)]
lavc/j2kenc: Enable yuv42x and yuv41x encoding.

Fixes ticket #535.
Fixes ticket #4524.

8 years agodoc/texi2pod: fix an unescaped left brace
James Almer [Wed, 1 Jul 2015 21:28:52 +0000 (18:28 -0300)]
doc/texi2pod: fix an unescaped left brace

This silences some deprecation warnings

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
8 years agoavcodec/avuienc: Use ff_alloc_packet()
Michael Niedermayer [Sun, 5 Jul 2015 19:56:48 +0000 (21:56 +0200)]
avcodec/avuienc: Use ff_alloc_packet()

This should be faster in theory for AVUI, no speed difference
meassurable though

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoavcodec/avuienc: Initialize output data
Michael Niedermayer [Sun, 5 Jul 2015 20:32:35 +0000 (22:32 +0200)]
avcodec/avuienc: Initialize output data

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/rawenc: Use ff_alloc_packet() instead of ff_alloc_packet2()
Michael Niedermayer [Sun, 5 Jul 2015 18:00:15 +0000 (20:00 +0200)]
avcodec/rawenc: Use ff_alloc_packet() instead of ff_alloc_packet2()

the later is not optimal when the buffer size is well known at allocation time

This avoids a memcpy()
Overall 2.5% speedup with a random 1920x1080 video

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaacenc: implement Intensity Stereo encoding support
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:07 +0000 (19:13 +0100)]
aacenc: implement Intensity Stereo encoding support

This commit implements intensity stereo coding support
to the native aac encoder. This is a way to increase the efficiency
of the encoder by zeroing the right channel's spectral coefficients
(in a channel pair) and rederiving them in the decoder using information
from the scalefactor indices of special band types. This commit
confomrs to the official ISO 13818-7 specifications, although due to
their ambiguity certain deviations have been taken to ensure maximum
sound quality. This commit has been extensively tested and has shown
to not result in audiable audio artifacts unless in extreme cases.
This commit also adds an option, aac_is, which has the value of
0 by default. Intensity Stereo is part of the scalable aac profile
and is thus non-default.

The way IS coding works is that it rederives the right channel's
spectral coefficients from the left channel via the scalefactor
index values left in the right channel. Since an entire band's
spectral coefficients do not need to be coded, the encoder's
efficiency jumps up and it unzeroes some high frequency values
which it previously did not have enough bits to encode. That way
less information is lost than the information lost by rederiving
the spectral coefficients with some error. This is why the
filesize of files encoded with IS do not decrease significantly.
Users wishing that IS coding should reduce filesize are expected
to reduce their encoding bitrates appropriately.

This is V2 of the commit. The old version did not mark ms_mask as
0 since M/S and IS coding are incompactible, which resulted in
distortions with M/S coding enabled. This version also improves
phase detection by measuring it for every spectral coefficient in
the band and using a simple majority rule to determine whether the
coefficients are in or out of phase. Also, the energy values per
spectral coefficient were changed as to reflect the
official specifications.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaacenc: add support for coding of IS spectral coefficients
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:06 +0000 (19:13 +0100)]
aacenc: add support for coding of IS spectral coefficients

This commit adds support for the coding of intensity stereo spectral
coefficients. It also fixes the Mid/Side coding of band_types higher
than RESERVED_BT (M/S must not be applied to their spectral coefficients,
but marking M/S as present in encode_ms_info() is okay). Much
of the changes here were taken from the decoder and inverted.
This commit does not change the functionality of the decoder as the
previous patch in this series zeroes ms_mask and is_mask.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaaccoder: add a new perceptual noise substitution implementation
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:05 +0000 (19:13 +0100)]
aaccoder: add a new perceptual noise substitution implementation

This commit finalizes the PNS implementation previously added to the encoder
by moving it to a seperate function search_for_pns() and thus making it
coder-generic. This new implementation makes use of the spread field of
the psy bands and the lambda quality feedback paremeter. The spread of the
spectrum in a band prevents PNS from being used excessively and thus preserve
more phase information in high frequencies.  The lambda parameter allows
the number of PNS-marked bands to vary based on the lambda parameter and the
amount of bits available, making better choices on which bands are to be marked
as noise. Comparisons with the previous PNS implementation can be found
here: https://trac.ffmpeg.org/attachment/wiki/Encode/AAC/

This is V2 of the patch, the changes from the previous version being that this
version uses the new band->spread metric from aacpsy and normalizes the
energy using the group size. These changes were suggested by Claudio Freire
on the mailing list. Another change is the use of lambda to alter the
frequency threshold. This change makes the actual threshold frequencies
vary between +-2Khz of what's specified, depending on frame encoding performance.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaaccoder: remove previous PNS implementation from twoloop
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:01 +0000 (19:13 +0100)]
aaccoder: remove previous PNS implementation from twoloop

This commit undoes commit c5d4f87e81111427c0952278ec247fa8ab1e6e52
and removes PNS band marking from the twoloop coder, which has
been reimplemented in a better way in this series of patches.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaacenc: use the new function for setting special band scalefactor indices
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:04 +0000 (19:13 +0100)]
aacenc: use the new function for setting special band scalefactor indices

This commit enables the function added with commit 7c10b87 and uses that
new function for setting any special scalefactor indices. This commit does
not change the behaviour of the encoder since no bands are being marked as
either NOISE_BT(due to the previous PNS implementation removed in the
previous commit) or INTENSITY_BT2/INTENSITY_BT.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/nvenc: Add support for H.264 High 444 Predictive encoding
Philip Langdale [Thu, 2 Jul 2015 04:09:57 +0000 (21:09 -0700)]
avcodec/nvenc: Add support for H.264 High 444 Predictive encoding

Newer versions of the nvenc hardware support The High 444 Predictive profile
of H.264, and can also do lossless encoding under this profile if desired.

This change introduces support for the profile, and exposes the appropriate
presets for requesting lossless encoding.

I tested lossless by generating a baseline sample with testsrc converted
to raw yuv444p, then encoded the sample with nvenc, then did a framemd5
comparision of both the raw video and the nvenc encode. The framemd5
reports were identical.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
9 years agompjpeg: Write the Content-length
Frank Heckenbach [Fri, 3 Jul 2015 22:48:47 +0000 (00:48 +0200)]
mpjpeg: Write the Content-length

9 years agompjpeg: Simplify using avio_printf
Luca Barbato [Fri, 3 Jul 2015 22:46:44 +0000 (00:46 +0200)]
mpjpeg: Simplify using avio_printf

9 years agolavc: Move deprecation warning disabling to files including the table
Vittorio Giovara [Fri, 3 Jul 2015 18:25:30 +0000 (19:25 +0100)]
lavc: Move deprecation warning disabling to files including the table

Unbreak build from 7a5902c556d84a367dd64a003a4e7244fc3a73d1.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoavformat/yuv4mpegenc: use avio_printf()
Paul B Mahol [Fri, 3 Jul 2015 18:36:29 +0000 (18:36 +0000)]
avformat/yuv4mpegenc: use avio_printf()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavfilter/avf_showvolume: make it possible to use current channel number in color...
Paul B Mahol [Fri, 3 Jul 2015 18:30:27 +0000 (18:30 +0000)]
avfilter/avf_showvolume: make it possible to use current channel number in color expression

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agolavfi: add (a)drawgraph filter
Paul B Mahol [Wed, 24 Jun 2015 15:48:57 +0000 (15:48 +0000)]
lavfi: add (a)drawgraph filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agofate/api-tests: Tests that need samples should only run if SAMPLES is set
George Boyle [Thu, 2 Jul 2015 23:38:26 +0000 (00:38 +0100)]
fate/api-tests: Tests that need samples should only run if SAMPLES is set

This change fixes a bug where a test that required a sample was being included
in the suite when SAMPLES was not set. It also improves the consistency of
variable names relating to the API tests.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoYUV->BGR32 MMX support
Kevin Coyle [Fri, 3 Jul 2015 18:16:42 +0000 (11:16 -0700)]
YUV->BGR32 MMX support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoswscale/output: fix input indexing in yuv2ya8_2_c()
Michael Niedermayer [Fri, 3 Jul 2015 22:03:18 +0000 (00:03 +0200)]
swscale/output: fix input indexing in yuv2ya8_2_c()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoswscale/output: fix null pointer dereference in yuv2ya8_2_c()
Michael Niedermayer [Fri, 3 Jul 2015 21:03:25 +0000 (23:03 +0200)]
swscale/output: fix null pointer dereference in yuv2ya8_2_c()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit 'f046c3b5ac36848cce824b008e0347c621523041'
Michael Niedermayer [Fri, 3 Jul 2015 19:40:41 +0000 (21:40 +0200)]
Merge commit 'f046c3b5ac36848cce824b008e0347c621523041'

* commit 'f046c3b5ac36848cce824b008e0347c621523041':
  lavc: Move deprecation warning disabling to files including the table
  lavc: Disable deprectation warnings coming from options table

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '832129431fd5c693b12c32a1563944c631feaf36'
Michael Niedermayer [Fri, 3 Jul 2015 19:06:23 +0000 (21:06 +0200)]
Merge commit '832129431fd5c693b12c32a1563944c631feaf36'

* commit '832129431fd5c693b12c32a1563944c631feaf36':
  lavu: Add version information for av_version_info()

Conflicts:
doc/APIchanges
libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavfilter/vf_lut: fix oversight
Paul B Mahol [Fri, 3 Jul 2015 16:58:56 +0000 (16:58 +0000)]
avfilter/vf_lut: fix oversight

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavcodec/shorten: use init_get_bits8()
Paul B Mahol [Fri, 3 Jul 2015 16:57:11 +0000 (16:57 +0000)]
avcodec/shorten: use init_get_bits8()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavfilter/af_astats: implement recalculation of stats after each X frames
Paul B Mahol [Wed, 1 Jul 2015 08:03:19 +0000 (08:03 +0000)]
avfilter/af_astats: implement recalculation of stats after each X frames

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavfilter/af_astats: export metadata
Paul B Mahol [Mon, 29 Jun 2015 21:14:53 +0000 (21:14 +0000)]
avfilter/af_astats: export metadata

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavcodec/j2kenc: Support user specified tile dimensions
Michael Niedermayer [Fri, 3 Jul 2015 16:23:08 +0000 (18:23 +0200)]
avcodec/j2kenc: Support user specified tile dimensions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/jpeg2000dec: Fix decoding of subsampled multi tile images
Michael Niedermayer [Fri, 3 Jul 2015 16:04:47 +0000 (18:04 +0200)]
avcodec/jpeg2000dec: Fix decoding of subsampled multi tile images

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaacenc: reset marked IS and M/S bands upon frame encoding
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:03 +0000 (19:13 +0100)]
aacenc: reset marked IS and M/S bands upon frame encoding

This commit resets any bands marked as M/S or IS upon encoding a frame.
This is needed because the arrays may contain some residual information
upon allocation on startup and because there isn't any mechanism to
reset the arrays once the frame has been encoded.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agolavc: Disable deprectation warnings coming from options table
Vittorio Giovara [Thu, 2 Jul 2015 22:28:46 +0000 (23:28 +0100)]
lavc: Disable deprectation warnings coming from options table

9 years agolavu: Add version information for av_version_info()
Vittorio Giovara [Thu, 2 Jul 2015 22:28:45 +0000 (23:28 +0100)]
lavu: Add version information for av_version_info()

Move the APIchange entry at the top.

9 years agoaaccoder: fix M/S coding
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:02 +0000 (19:13 +0100)]
aaccoder: fix M/S coding

There were some mistakes in the code for M/S stereo, this commit fixes them.
The start variable was not being reset for every window and every access to
the coefficients was incorrect as well. This fixes that by properly
addressing the coefficients using both windows and setting the start on every window to zero.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoaacpsy: use a different metric for the spread of a band
Rostislav Pehlivanov [Thu, 2 Jul 2015 18:13:00 +0000 (19:13 +0100)]
aacpsy: use a different metric for the spread of a band

This commit modifies 02dbed6 to use band->active_lines to better gauge how much information is contained within a single band and thus allow the perceptual noise subsitution to more accurately determine which bands to code as noise. The spread[w+g] used before this patch behaved more like a low-pass filter for PNS band_types, which could mistakingly mark some low frequency bands as noise.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavutil: add missing bswap include
Michael Niedermayer [Fri, 3 Jul 2015 11:11:16 +0000 (13:11 +0200)]
avutil: add missing bswap include

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavfilter/vf_lut: >8 bit depth planar yuv support
Paul B Mahol [Wed, 1 Jul 2015 09:39:24 +0000 (09:39 +0000)]
avfilter/vf_lut: >8 bit depth planar yuv support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoMerge commit '80f955c90867561dcce769216bc497e13281eb38'
Michael Niedermayer [Fri, 3 Jul 2015 02:14:58 +0000 (04:14 +0200)]
Merge commit '80f955c90867561dcce769216bc497e13281eb38'

* commit '80f955c90867561dcce769216bc497e13281eb38':
  vda: Check the correct pointer for buffer allocation

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '76d4c62734fbb8a9f497712812f30ff5c27e787f'
Michael Niedermayer [Fri, 3 Jul 2015 02:06:56 +0000 (04:06 +0200)]
Merge commit '76d4c62734fbb8a9f497712812f30ff5c27e787f'

* commit '76d4c62734fbb8a9f497712812f30ff5c27e787f':
  webp: Make sure enough bytes are available

Conflicts:
libavcodec/webp.c

See: 0762152f7af6cd93bc8f504d5503723500c3f369
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agowebp: fix infinite loop in webp_decode_frame
Andreas Cadhalpun [Thu, 2 Jul 2015 21:45:46 +0000 (23:45 +0200)]
webp: fix infinite loop in webp_decode_frame

The loop always needs at least 8 bytes for chunk_type and chunk_size.
If fewer are left, bytestream2_get_le32 just returns 0 without
reading any bytes, leading to an infinite loop.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '016cac75c6061a1c03f812ddf258b8baefe70b00'
Michael Niedermayer [Fri, 3 Jul 2015 01:58:29 +0000 (03:58 +0200)]
Merge commit '016cac75c6061a1c03f812ddf258b8baefe70b00'

* commit '016cac75c6061a1c03f812ddf258b8baefe70b00':
  asfdec: prevent the infinite loop in detect unknown_subobject

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '9752d2e6cc9b9e8070ec515db8ed8374683d0856'
Michael Niedermayer [Fri, 3 Jul 2015 01:50:38 +0000 (03:50 +0200)]
Merge commit '9752d2e6cc9b9e8070ec515db8ed8374683d0856'

* commit '9752d2e6cc9b9e8070ec515db8ed8374683d0856':
  asfdec: prevent possible memory leak in the asf_read_metadata_obj

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '910247f1720c6aae422723c05dac6d0b19f20bec'
Michael Niedermayer [Fri, 3 Jul 2015 01:40:22 +0000 (03:40 +0200)]
Merge commit '910247f1720c6aae422723c05dac6d0b19f20bec'

* commit '910247f1720c6aae422723c05dac6d0b19f20bec':
  lavc: Deprecate avctx.{inter,intra}_quant_bias

Conflicts:
libavcodec/mpegvideo_enc.c
libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoMerge commit '1316df7aa98c4784f190d107206d0bb12c590b89'
Michael Niedermayer [Fri, 3 Jul 2015 01:20:09 +0000 (03:20 +0200)]
Merge commit '1316df7aa98c4784f190d107206d0bb12c590b89'

* commit '1316df7aa98c4784f190d107206d0bb12c590b89':
  lavu: add an API function to return the Libav version string

Conflicts:
.gitignore
Makefile
cmdutils.c
doc/APIchanges
libavutil/avutil.h
libavutil/utils.c

See: f91126643a91c2d3f8d8e210c8facaf259951b03
Merged-by: Michael Niedermayer <michaelni@gmx.at>
9 years agovda: Check the correct pointer for buffer allocation
Luca Barbato [Thu, 2 Jul 2015 23:56:16 +0000 (01:56 +0200)]
vda: Check the correct pointer for buffer allocation

CC: libav-stable@libav.org
Found-By: kropping
9 years agowebp: Make sure enough bytes are available
Andreas Cadhalpun [Thu, 2 Jul 2015 23:14:51 +0000 (01:14 +0200)]
webp: Make sure enough bytes are available

Every chunk needs at least 8 bytes for chunk_type and chunk_size.
Prevent a possible infinite loop.

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoasfdec: prevent the infinite loop in detect unknown_subobject
Alexandra Hájková [Thu, 2 Jul 2015 12:17:20 +0000 (14:17 +0200)]
asfdec: prevent the infinite loop in detect unknown_subobject

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoasfdec: prevent possible memory leak in the asf_read_metadata_obj
Alexandra Hájková [Thu, 2 Jul 2015 10:26:19 +0000 (12:26 +0200)]
asfdec: prevent possible memory leak in the asf_read_metadata_obj

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agolavc: Deprecate avctx.{inter,intra}_quant_bias
Vittorio Giovara [Thu, 2 Jul 2015 11:14:22 +0000 (12:14 +0100)]
lavc: Deprecate avctx.{inter,intra}_quant_bias

They are used by dnxhd and mpegvideo_enc exclusively, move them to codec
private options instead.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavu: add an API function to return the Libav version string
wm4 [Thu, 2 Jul 2015 17:04:59 +0000 (19:04 +0200)]
lavu: add an API function to return the Libav version string

This returns something like "v12_dev0-1332-g333a27c". This is much more
useful than the individual library versions, of which there are too
many, and which are very hard to map back to releases or git commits.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
9 years agoswscale: implement YA8 output
Paul B Mahol [Wed, 1 Jul 2015 19:40:26 +0000 (19:40 +0000)]
swscale: implement YA8 output

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agowavpack: limit extra_bits to 32 and use get_bits_long
Andreas Cadhalpun [Thu, 2 Jul 2015 21:05:05 +0000 (23:05 +0200)]
wavpack: limit extra_bits to 32 and use get_bits_long

More than 32 bits can't be stored in an integer and get_bits should not
be used with more than 25 bits.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
9 years agoavfilter/vf_mpdecimate: remove packed formats
Paul B Mahol [Thu, 2 Jul 2015 10:33:52 +0000 (10:33 +0000)]
avfilter/vf_mpdecimate: remove packed formats

Packed formats are not supported.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavfilter: use AVFILTER_DEFINE_CLASS()
Paul B Mahol [Thu, 2 Jul 2015 09:49:26 +0000 (09:49 +0000)]
avfilter: use AVFILTER_DEFINE_CLASS()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
9 years agoavcodec/qsvenc_h264: Change the set of performance presets to match with the MFX...
Ivan Uskov [Thu, 2 Jul 2015 16:09:12 +0000 (19:09 +0300)]
avcodec/qsvenc_h264: Change the set of performance presets to match with the MFX library constants.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/mjpegdec: Reorder operations to avoid undefined behavior
Michael Niedermayer [Thu, 2 Jul 2015 16:53:17 +0000 (18:53 +0200)]
avcodec/mjpegdec: Reorder operations to avoid undefined behavior

Fixes: asan_heap-oob_1dd60fd_267_cov_2954683513_5baad44ca4702949724234e35c5bb341.jpg
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/motion_est_template: Fix undefined shifts in CHECK_MV()
Michael Niedermayer [Thu, 2 Jul 2015 16:42:05 +0000 (18:42 +0200)]
avcodec/motion_est_template: Fix undefined shifts in CHECK_MV()

Fixes:asan_heap-oob_4d5bb0_2295_cov_3374722539_hotel_california_ra5.1_640x480_30s.rmvb

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agoavcodec/qsv: Extending QSV/MFX session initialization for the linux platform where...
Ivan Uskov [Tue, 30 Jun 2015 17:13:09 +0000 (20:13 +0300)]
avcodec/qsv: Extending QSV/MFX session initialization for the linux platform where a display handle is required.

Now ff_qsv_init_internal_session() is able
to find appropriate display handle under linux using VAAPI.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
9 years agodoc/muxers/segment: fix formatting of segment_list_type option
Stefano Sabatini [Thu, 2 Jul 2015 09:00:18 +0000 (11:00 +0200)]
doc/muxers/segment: fix formatting of segment_list_type option

Place @item entry at the right point, remove duplicated description.