ffmpeg.git
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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

4 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.

4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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.

4 years agoavformat/asfdec_f: Fix memleak
Michael Niedermayer [Thu, 2 Jul 2015 07:23:35 +0000 (09:23 +0200)]
avformat/asfdec_f: Fix memleak

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec_f: Add ASFDataType, use named types for metadata
John Adlum [Wed, 1 Jul 2015 22:15:13 +0000 (00:15 +0200)]
avformat/asfdec_f: Add ASFDataType, use named types for metadata

This is based on asfdec_o.c, but uses a proper type instead of defines

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec_f: Use dynamic allocation in asf_read_metadata() instead of a fixed...
John Adlum [Wed, 1 Jul 2015 21:46:30 +0000 (23:46 +0200)]
avformat/asfdec_f: Use dynamic allocation in asf_read_metadata() instead of a fixed size buffer

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec_f: factor error checking out of main header parsing loop
John Adlum [Wed, 1 Jul 2015 21:21:53 +0000 (23:21 +0200)]
avformat/asfdec_f: factor error checking out of main header parsing loop

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoffmpeg_filter: log more information on failure to init simple filter graph
rogerdpack [Wed, 1 Jul 2015 19:23:55 +0000 (13:23 -0600)]
ffmpeg_filter: log more information on failure to init simple filter graph

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'a31c4b2cbef9aee15910fc3df52519aef46760de'
Michael Niedermayer [Wed, 1 Jul 2015 22:34:24 +0000 (00:34 +0200)]
Merge commit 'a31c4b2cbef9aee15910fc3df52519aef46760de'

* commit 'a31c4b2cbef9aee15910fc3df52519aef46760de':
  fate-g2m3: disable the audio stream

Conflicts:
tests/ref/fate/g2m3

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/utils: Redesign scoring in av_find_default_stream_index()
Michael Niedermayer [Wed, 1 Jul 2015 20:35:07 +0000 (22:35 +0200)]
avformat/utils: Redesign scoring in av_find_default_stream_index()

This avoids empty streams from being selected if a equivalent non empty one is available
The new system is also clearer and more systematic
This may need finetuning, which should be easy to do ...

Fixes Ticket2687

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoffmpeg_opt: Favor streams that had packets
Michael Niedermayer [Wed, 1 Jul 2015 20:19:53 +0000 (22:19 +0200)]
ffmpeg_opt: Favor streams that had packets

Fixes Thailand-Wave.wmv without explicitly specifying a stream

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/rtmpproto: increase hardcoded url/path lengths
Paul B Mahol [Wed, 1 Jul 2015 16:26:53 +0000 (16:26 +0000)]
avformat/rtmpproto: increase hardcoded url/path lengths

Fixes #4103.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agofate-g2m3: disable the audio stream
Janne Grunau [Wed, 1 Jul 2015 15:35:51 +0000 (17:35 +0200)]
fate-g2m3: disable the audio stream

The audio decoder is not in fate-g2m3 dependencies and the wma2 decoder
is probably not bit-exact since it it float based.

4 years agolavu: Makefile: skip atomic.c if native atomics are available
Rodger Combs [Wed, 1 Jul 2015 19:20:08 +0000 (14:20 -0500)]
lavu: Makefile: skip atomic.c if native atomics are available

This prevents a linker warning and skips a useless compilation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h264dsp_template: Fix undefined shifts
Michael Niedermayer [Wed, 1 Jul 2015 18:38:57 +0000 (20:38 +0200)]
avcodec/h264dsp_template: Fix undefined shifts

Fixes: asan_heap-oob_17212bc_2243_cov_594210248_h264_TTA.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/mss2: Fix integer overflow
Michael Niedermayer [Wed, 1 Jul 2015 18:29:44 +0000 (20:29 +0200)]
avcodec/mss2: Fix integer overflow

This also simplifies the code
Fixes: signal_sigabrt_7ffff6ac8cc9_2943_cov_3588637614_mss2_speech.wmv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '4e0819310e2d2eff60be2d6df28335f0739712b9'
Michael Niedermayer [Wed, 1 Jul 2015 17:44:30 +0000 (19:44 +0200)]
Merge commit '4e0819310e2d2eff60be2d6df28335f0739712b9'

* commit '4e0819310e2d2eff60be2d6df28335f0739712b9':
  elsdec: Replace EOVERFLOW with INVALIDDATA

See: dec728888f8826e3f2032aec463c3dd1e26ec2a4
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'f91fe24e9bd6912c29bbb03d8afe878e045f9721'
Michael Niedermayer [Wed, 1 Jul 2015 17:18:04 +0000 (19:18 +0200)]
Merge commit 'f91fe24e9bd6912c29bbb03d8afe878e045f9721'

* commit 'f91fe24e9bd6912c29bbb03d8afe878e045f9721':
  g2meet: force simple idct for identical results over all fate configs

Conflicts:
tests/ref/fate/g2m3
tests/ref/fate/g2m4

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavfilter/vf_extractplanes: use faster path for input formats with only one component
Paul B Mahol [Wed, 1 Jul 2015 17:12:07 +0000 (17:12 +0000)]
avfilter/vf_extractplanes: use faster path for input formats with only one component

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_extractplanes: rename misleading variable
Paul B Mahol [Wed, 1 Jul 2015 17:09:19 +0000 (17:09 +0000)]
avfilter/vf_extractplanes: rename misleading variable

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_extractplanes: support more pixel formats
Paul B Mahol [Wed, 1 Jul 2015 17:01:34 +0000 (17:01 +0000)]
avfilter/vf_extractplanes: support more pixel formats

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoMerge commit '9eec23b8a7fd0f91827bbc3ed0792c39a8cc9a8a'
Michael Niedermayer [Wed, 1 Jul 2015 17:09:49 +0000 (19:09 +0200)]
Merge commit '9eec23b8a7fd0f91827bbc3ed0792c39a8cc9a8a'

* commit '9eec23b8a7fd0f91827bbc3ed0792c39a8cc9a8a':
  g2meet: use av_ceil_log2 instead of a custom function

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '4ccccd6c40a6d0ce85e96a6e37f558236e2a6a75'
Michael Niedermayer [Wed, 1 Jul 2015 17:09:06 +0000 (19:09 +0200)]
Merge commit '4ccccd6c40a6d0ce85e96a6e37f558236e2a6a75'

* commit '4ccccd6c40a6d0ce85e96a6e37f558236e2a6a75':
  g2meet: use an unsigned type for the djb hash

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '007e27d363ba7d994019dc897dc9c39071bb204a'
Michael Niedermayer [Wed, 1 Jul 2015 16:58:01 +0000 (18:58 +0200)]
Merge commit '007e27d363ba7d994019dc897dc9c39071bb204a'

* commit '007e27d363ba7d994019dc897dc9c39071bb204a':
  avcodec: add missing CODEC_CAP_DR1 to codecs using get_buffer()

Conflicts:
libavcodec/atrac3plusdec.c
libavcodec/sp5xdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec_f: Assert that packet positions match in asf_read_pts()
John Adlum [Wed, 1 Jul 2015 14:41:26 +0000 (16:41 +0200)]
avformat/asfdec_f: Assert that packet positions match in asf_read_pts()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/asfdec_f: Correct skip to key code
John Adlum [Wed, 1 Jul 2015 14:08:05 +0000 (16:08 +0200)]
avformat/asfdec_f: Correct skip to key code

Fixes Ticket3978

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/pthread_frame: Correcting typo of "occurred"
John Adlum [Wed, 1 Jul 2015 15:12:49 +0000 (17:12 +0200)]
avcodec/pthread_frame: Correcting typo of "occurred"

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

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

Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoelsdec: Replace EOVERFLOW with INVALIDDATA
Michael Niedermayer [Wed, 1 Jul 2015 14:38:19 +0000 (15:38 +0100)]
elsdec: Replace EOVERFLOW with INVALIDDATA

EOVERFLOW is not available on all platforms.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h264_mvpred: Fix undefined shifts in MAP_F2F
Michael Niedermayer [Wed, 1 Jul 2015 13:43:50 +0000 (15:43 +0200)]
avcodec/h264_mvpred: Fix undefined shifts in MAP_F2F

Fixes: asan_heap-oob_17301a3_2100_cov_3226131691_ff_add_pixels_clamped_mmx.m2ts

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/motion_est: Fix some undefined shifts
Michael Niedermayer [Wed, 1 Jul 2015 13:41:29 +0000 (15:41 +0200)]
avcodec/motion_est: Fix some undefined shifts

Fixes: asan_heap-oob_1dd60fd_1049_cov_4200102444_P4250048.MOV

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agog2meet: force simple idct for identical results over all fate configs
Janne Grunau [Wed, 1 Jul 2015 13:33:20 +0000 (15:33 +0200)]
g2meet: force simple idct for identical results over all fate configs

4 years agolavu: add an API function to return the FFmpeg version string
wm4 [Tue, 30 Jun 2015 21:57:53 +0000 (23:57 +0200)]
lavu: add an API function to return the FFmpeg version string

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

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/concatdec: copy stream metadata when using concat
Vadim Belov [Wed, 1 Jul 2015 10:49:06 +0000 (13:49 +0300)]
avformat/concatdec: copy stream metadata when using concat

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/nutdec: Check ff_gen_search() for failure
Michael Niedermayer [Wed, 1 Jul 2015 12:28:41 +0000 (14:28 +0200)]
avformat/nutdec: Check ff_gen_search() for failure

Fixes assertion failure

Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agog2meet: use av_ceil_log2 instead of a custom function
Janne Grunau [Wed, 1 Jul 2015 11:58:34 +0000 (13:58 +0200)]
g2meet: use av_ceil_log2 instead of a custom function

4 years agoavcodec/motion_est: Fix undefined shifts in cmp_inline()
Michael Niedermayer [Wed, 1 Jul 2015 11:41:26 +0000 (13:41 +0200)]
avcodec/motion_est: Fix undefined shifts in cmp_inline()

Fixes: signal_sigsegv_35eac16_2762_cov_2704249783_missing_frames.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/mpegvideo_enc: fix undefined shifts in ff_dct_quantize_c()
Michael Niedermayer [Wed, 1 Jul 2015 11:39:43 +0000 (13:39 +0200)]
avcodec/mpegvideo_enc: fix undefined shifts in ff_dct_quantize_c()

Fixes: signal_sigsegv_35eac16_2762_cov_2704249783_missing_frames.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agog2meet: use an unsigned type for the djb hash
Janne Grunau [Wed, 1 Jul 2015 11:34:50 +0000 (13:34 +0200)]
g2meet: use an unsigned type for the djb hash

4 years agoavcodec/motion_est_template: Fix undefined shifts in CHECK_MV_DIR()
Michael Niedermayer [Wed, 1 Jul 2015 10:16:37 +0000 (12:16 +0200)]
avcodec/motion_est_template: Fix undefined shifts in CHECK_MV_DIR()

Fixes: signal_sigsegv_2e64ee0_2762_cov_4170502227_missing_frames.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec: add missing CODEC_CAP_DR1 to codecs using get_buffer()
Janne Grunau [Sun, 28 Jun 2015 12:58:47 +0000 (14:58 +0200)]
avcodec: add missing CODEC_CAP_DR1 to codecs using get_buffer()

4 years agoavformat/matroskadec: Fix undefined shift in read_sint()
Michael Niedermayer [Wed, 1 Jul 2015 09:59:57 +0000 (11:59 +0200)]
avformat/matroskadec: Fix undefined shift in read_sint()

Fixes: asan_heap-oob_17212bc_2243_cov_594210248_h264_TTA.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoffmpeg_opt: Fix forcing fourccs
Michael Niedermayer [Wed, 1 Jul 2015 03:10:51 +0000 (05:10 +0200)]
ffmpeg_opt: Fix forcing fourccs

Fixes Ticket4682

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/elsdec: Remove EOVERFLOW
Michael Niedermayer [Wed, 1 Jul 2015 02:24:58 +0000 (04:24 +0200)]
avcodec/elsdec: Remove EOVERFLOW

EOVERFLOW is not available on all platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'a1e2caa93e4f8102666a21222f01b74838b6497f'
Michael Niedermayer [Wed, 1 Jul 2015 02:15:27 +0000 (04:15 +0200)]
Merge commit 'a1e2caa93e4f8102666a21222f01b74838b6497f'

* commit 'a1e2caa93e4f8102666a21222f01b74838b6497f':
  mov: Log format rather than fourcc in stsd in trace mode

Conflicts:
libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '2eef75fd7e1ac96ab9ca63bb4523078c908bc9b1'
Michael Niedermayer [Wed, 1 Jul 2015 02:05:45 +0000 (04:05 +0200)]
Merge commit '2eef75fd7e1ac96ab9ca63bb4523078c908bc9b1'

* commit '2eef75fd7e1ac96ab9ca63bb4523078c908bc9b1':
  mov: Adjust variable types to fix format warnings

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'df22e30172b09cda4d6f7d4f43508284be65848a'
Michael Niedermayer [Wed, 1 Jul 2015 01:49:52 +0000 (03:49 +0200)]
Merge commit 'df22e30172b09cda4d6f7d4f43508284be65848a'

* commit 'df22e30172b09cda4d6f7d4f43508284be65848a':
  dump: Use the correct abs() version

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '0d449c81b3dd25835ae6ac849cdd150f35b9c5c6'
Michael Niedermayer [Wed, 1 Jul 2015 01:40:45 +0000 (03:40 +0200)]
Merge commit '0d449c81b3dd25835ae6ac849cdd150f35b9c5c6'

* commit '0d449c81b3dd25835ae6ac849cdd150f35b9c5c6':
  lavfi: Add library identifier

Conflicts:
libavfilter/version.h

See: a70b4935f1867797b62312c20035025fad8b1f94
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '0f87f9b4fceee854f09da2d1ef329245196775f8'
Michael Niedermayer [Wed, 1 Jul 2015 01:37:59 +0000 (03:37 +0200)]
Merge commit '0f87f9b4fceee854f09da2d1ef329245196775f8'

* commit '0f87f9b4fceee854f09da2d1ef329245196775f8':
  lavd: Add library identifier

Conflicts:
libavdevice/version.h

See: a70b4935f1867797b62312c20035025fad8b1f94
Merged-by: Michael Niedermayer <michaelni@gmx.at>