avfilter/vf_format: check that the format list is not empty

Fixes Ticket3210

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ee16e0cacc16ea60c35a66796410012755263c3c)
avcodec: move end zeroing code from av_packet_split_side_data() to avcodec_decode_subtitle2()

This code changes the input packet, which is read only and can in
rare circumstances lead to decoder errors. (i run into one of these in
the audio decoder, which corrupted the packet during av_find_stream_info()
so that actual decoding that single packet failed later)
Until a better fix is implemented, this commit limits the problem.
A better fix might be to make the subtitle decoders not depend on
data[size] = 0 or to copy their input when this is not the case.
(cherry picked from commit 01923bab98506b1e98b4cbf08419364ce6ffea6d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/jpeg2000dec: Check precno before using it in JPEG2000_PGOD_CPRL

Fixes out of array reads
Fixes: asan_heap-oob_f0de57_6823_mjp2.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 3d5a5e86be2a65e33c34ab3ad7923f54e8e49c1d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
lavf/matroska*: add support for signed integers

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d03eea36b2c329241f63c8aca2d6adbb6ea81d9c)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avformat/matroska: simplify signed int access code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cddd15ba5c9cd2e92d2f2942e0fc40bf3bf56115)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
lavf/matroska*: DiscardPadding is a signed integer

according to the Matriska Specification
 http://matroska.org/technical/specs/index.html
DiscardPadding is a signed integer.

Tested-by: Jan Gerber <j@v2v.cc>
Tested-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit f4b1ca99ff86c6ba78e1b4730c85eac0d5a5817a)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
lavf/matroskadec ReferenceBlock is a signed integer

according to the Matroska Specification
ReferenceBlock is a signed integer too.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 8cc59ec881b8706fb3036a2a83f7ededa468dedb)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/libopusenc: change default frame duration to 20 ms

20 ms is used by libopus encoder.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit 74906d3727ec3bd9b7b28dfa7a98ff6e8cf8b6d7)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avcodec/g2meet: fix stride calculation, use correct format field

Fixes out of array accesses
Fixes: asan_heap-oob_ae5f63_5415_g2m4.wmv
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 83f7bd6dcf00875725c5f3b7e1bedac5a6b3c77d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
do O(1) instead of O(n) atomic operations in register functions

about 1ms faster startup time

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 133fbfc7811ffae7b97dd129fcd0b5e646742362)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avutil/log: skip IO calls on empty strings

These occur when no context is set for example, thus they are common

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a044a183a3fb90b20a8deaa3ea1158510bcdd420)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
swscale/utils: fill xyz tables only when they will be used

makes the first call to sws_getContext() 1ms faster

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 4d18060e56aac9d7248854ba75d5fc19f5cd3db8)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
configure: support raising major version in soname

this allows seperate installation of shared libs that should not conflict with
whatever is already installed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 102b794e09482fec881e7ec903e57914895f9b74)

Conflicts:

	libavcodec/utils.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
h264: Clear ERContext.cur_pic when unref'ing current picture.

Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
(cherry picked from commit 4feca2214a0b69dcbe4d1c7cd145c3881459e867)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '6139f481ac9feb1bee4e7d04789fb15d7f24ebbf'

* commit '6139f481ac9feb1bee4e7d04789fb15d7f24ebbf':
  asvenc: use the AVFrame API properly.
  a64multienc: use the AVFrame API properly.

Conflicts:
	libavcodec/vaapi_mpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cc4a6435638fa2a471fef048a3e68eaf7e6e306c)

Author of the merged code: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'cec5ce49229d61e4eb1f331a6d0dff3aa24f6655'

* commit 'cec5ce49229d61e4eb1f331a6d0dff3aa24f6655':
  cdxl: remove an unused variable
  c93: use the AVFrame API properly.
  bethsoftvid: use the AVFrame API properly.
  avs: use the AVFrame API properly.

Conflicts:
	libavcodec/bethsoftvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 21c41e76d7c1ddaadafc9da50e99db51358f3754)

Conflicts:

	libavcodec/avs.c
Author of the merged code: Anton Khirnov
Merge commit 'a639ea7f4bc44bf6bfa452675558a342924a66a9'

* commit 'a639ea7f4bc44bf6bfa452675558a342924a66a9':
  escape124: use the AVFrame API properly.
  qtrle: use the AVFrame API properly.
  cljr: use the AVFrame API properly.
  cinepak: use the AVFrame API properly.

Conflicts:
	libavcodec/cinepak.c
	libavcodec/cljr.c
	libavcodec/qtrle.c

See: 80e9e63c libavcodec/cinepak.c
See: 71c378984b0bd5470f67c424a79a4750f84d2d3e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit bfb1f44d246f4ed97d5cad9c1eace8a20951ff76)

Author of the merged code: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '2d2a92f72199823a92e4e226c32e42a27ec801c0'

* commit '2d2a92f72199823a92e4e226c32e42a27ec801c0':
  dxa: use the AVFrame API properly.
  qpeg: use the AVFrame API properly.
  cin video: use the AVFrame API properly.
  msvideo1: use the AVFrame API properly.

Conflicts:
	libavcodec/dsicinav.c
	libavcodec/dxa.c
	libavcodec/msvideo1.c
	libavcodec/qpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 5219afc09d8e97e18917738cbc052f903df9a619)

Author of the merged code: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit 'b7462a3904d71ff799584faf5b875cad59ca2f31'

* commit 'b7462a3904d71ff799584faf5b875cad59ca2f31':
  jvdec: use the AVFrame API properly.

Conflicts:
	libavcodec/jvdec.c

See: 678431d3f2c5f35fe48b02d5035604ace742be2e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ddfdcd2b5ecce0914c1eefa6269060bdbc879b17)

Author of the merged code: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '2e09096da912f563c4dd889a8f25c314529bbaa6'

* commit '2e09096da912f563c4dd889a8f25c314529bbaa6':
  kgv1: use the AVFrame API properly.
  indeo2: use the AVFrame API properly.
  iff: use the AVFrame API properly.
  msrle: use the AVFrame API properly.

Conflicts:
	libavcodec/iff.c
	libavcodec/indeo2.c
	libavcodec/kgv1dec.c
	libavcodec/msrle.c

See: 451b2ca1b4349f9b60416cc057eaf5518d81025c
See: 80e9e63c946660304fc65fa8141ccfdbe4d196d1
See: 057dce5f21cd70db1ef6e3b67644a39f0d51aba5
Merged-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 9f890a165666a73376c73b3c2bd920345b5c3b79)

Author of the merged code: Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>