libav.git
23 months agoconfigure: make jack depend on pthreads release/9 github/release/9 gitlab/release/9 videolan/release/9
Anton Khirnov [Fri, 17 May 2013 06:13:58 +0000 (08:13 +0200)]
configure: make jack depend on pthreads

(cherry picked from commit a3fc62e89e1aa09c44e918726ec556210471d56e)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoUpdate Changelog for v9.21 v9.21
Sean McGovern [Sun, 15 Jan 2017 16:55:15 +0000 (11:55 -0500)]
Update Changelog for v9.21

2 years agocmdutils: update copyright year to 2017
Sean McGovern [Sun, 1 Jan 2017 21:31:15 +0000 (16:31 -0500)]
cmdutils: update copyright year to 2017

CC: libav-stable@libav.org
(cherry picked from commit d31f46e1999fab31be46f0cbce0546a5aa49fe48)
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2 years agompeg12: move setting first_field to mpeg_field_start()
Anton Khirnov [Sat, 17 Dec 2016 16:04:55 +0000 (17:04 +0100)]
mpeg12: move setting first_field to mpeg_field_start()

For field picture, the first_field is set based on its previous value.
Before this commit, first_field is set when reading the picture
coding extension. However, in corrupted files there may be multiple
picture coding extension headers, so the final value of first_field that
is actually used during decoding can be wrong. That can lead to various
undefined behaviour, like predicting from a non-existing field.

Fix this problem, by setting first_field in mpeg_field_start(), which
should be called exactly once per field.

CC: libav-stable@libav.org
Bug-ID: 999
(cherry picked from commit c2fa6bb0e8703a7a6aa10e11f9ab36094416d83f)
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2 years agompeg12: avoid signed overflow in bitrate calculation
Anton Khirnov [Sat, 17 Dec 2016 14:07:51 +0000 (15:07 +0100)]
mpeg12: avoid signed overflow in bitrate calculation

CC: libav-stable@libav.org
Bug-Id: 981
Found-By: Agostino Sarubbo
(cherry picked from commit e807491fc6a336e4becc0cbc981274a8fde18aba)
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2 years agompegvideo_parser: avoid signed overflow in bitrate calculation
Anton Khirnov [Sat, 17 Dec 2016 14:07:51 +0000 (15:07 +0100)]
mpegvideo_parser: avoid signed overflow in bitrate calculation

CC: libav-stable@libav.org
Bug-Id: 981
Found-By: Agostino Sarubbo
(cherry picked from commit 58405de0951a843765625159402870c1eea3c3b1)
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2 years agoavformat/output-example: Declare link dependency on libswscale in the Makefile
Diego Biurrun [Tue, 1 Oct 2013 11:34:02 +0000 (13:34 +0200)]
avformat/output-example: Declare link dependency on libswscale in the Makefile

(cherry picked from commit 47b6cfc2a0333fb24f074d27830bf35ae5007050)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agobuild: output-example: Add avutil to ELIBS in link command
Diego Biurrun [Sat, 27 Apr 2013 12:51:27 +0000 (14:51 +0200)]
build: output-example: Add avutil to ELIBS in link command

output-example links against swscale, which depends on avutil.  In standard
configurations, by pure good luck, the libs before swscale pull in all of
swscale's dependencies and linking succeeds.  However, in some configurations
like --disable-asm this is not the case and linking fails.

Hardcode the dependency to avoid a more general Makefile refactoring.

(cherry picked from commit 4d7ed3e73541983459a7913c2034eba69ebc113d)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoUpdate Changelog for v9.20 v9.20
Sean McGovern [Mon, 5 Sep 2016 18:49:14 +0000 (14:49 -0400)]
Update Changelog for v9.20

2 years agoavcodec: bump micro version
Sean McGovern [Mon, 5 Sep 2016 18:44:55 +0000 (14:44 -0400)]
avcodec: bump micro version

2 years agoUpdate Changelog for v9.19 v9.19
Sean McGovern [Sun, 4 Sep 2016 09:16:49 +0000 (05:16 -0400)]
Update Changelog for v9.19

2 years agoh264: deMpegEncContextize origin/release/9
Anton Khirnov [Sun, 3 Feb 2013 10:10:05 +0000 (11:10 +0100)]
h264: deMpegEncContextize

Most of the changes are just trivial are just trivial replacements of
fields from MpegEncContext with equivalent fields in H264Context.
Everything in h264* other than h264.c are those trivial changes.

The nontrivial parts are:
1) extracting a simplified version of the frame management code from
   mpegvideo.c. We don't need last/next_picture anymore, since h264 uses
   its own more complex system already and those were set only to appease
   the mpegvideo parts.
2) some tables that need to be allocated/freed in appropriate places.
3) hwaccels -- mostly trivial replacements.
   for dxva, the draw_horiz_band() call is moved from
   ff_dxva2_common_end_frame() to per-codec end_frame() callbacks,
   because it's now different for h264 and MpegEncContext-based
   decoders.
4) svq3 -- it does not use h264 complex reference system, so I just
   added some very simplistic frame management instead and dropped the
   use of ff_h264_frame_start(). Because of this I also had to move some
   initialization code to svq3.

Additional fixes for chroma format and bit depth changes by
Janne Grunau <janne-libav@jannau.net>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 2c541554076cc8a72e7145d4da30389ca763f32f)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoh264: remove silly macros
Anton Khirnov [Mon, 4 Feb 2013 13:46:55 +0000 (14:46 +0100)]
h264: remove silly macros

They serve no useful purpose and wreak all kind of havoc when h264.h is
included elsewhere.

(cherry picked from commit 9782c778a205dc63443d47142dfeea602f697b55)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agompegvideo: split ff_draw_horiz_band().
Anton Khirnov [Sun, 3 Feb 2013 13:26:34 +0000 (14:26 +0100)]
mpegvideo: split ff_draw_horiz_band().

Split out dependency on MpegEncContext.

(cherry picked from commit 1d0feb5d1ac04d187b335f0e8d411c9f40b3a885)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoerror_resilience: add required headers.
Anton Khirnov [Sat, 16 Feb 2013 19:58:18 +0000 (20:58 +0100)]
error_resilience: add required headers.

(cherry picked from commit 1f8f43a5b5e9b966d364d1d2d6ed741f07dcceaa)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoerror_resilience: decouple ER from MpegEncContext
Anton Khirnov [Sat, 2 Feb 2013 19:42:07 +0000 (20:42 +0100)]
error_resilience: decouple ER from MpegEncContext

(cherry picked from commit 54974c62982ae827becdbdb9b620b7ba75d079a0)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoh264: remove a pointless if()
Anton Khirnov [Sun, 3 Feb 2013 09:21:39 +0000 (10:21 +0100)]
h264: remove a pointless if()

!encoding is always true, we do not have a H.264 encoder

(cherry picked from commit 2491f9ee29ae510b2b0e9765c646698d1bd68088)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agoh264: simplify calls to ff_er_add_slice().
Anton Khirnov [Sat, 2 Feb 2013 14:18:00 +0000 (15:18 +0100)]
h264: simplify calls to ff_er_add_slice().

partitioned_frame is never set for h264 (as easily seen from git grep).

(cherry picked from commit 68f930d2188aba5b32624887dcbf688c23482834)
Signed-off-by: Jean-Yves Avenard <jyavenard@mozilla.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2 years agotls: Use the right return value for breaking out due to the interrupt callback
Martin Storsjö [Thu, 24 Mar 2016 09:27:49 +0000 (11:27 +0200)]
tls: Use the right return value for breaking out due to the interrupt callback

The retry_transfer_wrapper function higher up in the call chain
ignores AVERROR(EINTR), which only means "interrupted by system call".

This makes sure that returning due to the interrupt callback
works as intended.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
3 years agortmpcrypt: Do the xtea decryption in little endian mode
Martin Storsjö [Wed, 11 Nov 2015 19:42:02 +0000 (21:42 +0200)]
rtmpcrypt: Do the xtea decryption in little endian mode

The XTEA algorithm operates on 32 bit numbers, not on byte sequences.
The XTEA implementation in libavutil is written assuming big endian
numbers, while the rtmpe signature encryption assumes little endian.

This fixes rtmpe communication with rtmpe servers that use signature
type 8 (XTEA), e.g. crunchyroll.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agodoc: More changelog updates for v9.18 gitorious/release/9 v9.18
Reinhard Tartler [Mon, 9 Mar 2015 02:22:28 +0000 (22:22 -0400)]
doc: More changelog updates for v9.18

4 years agotiff: Check that there is no aliasing in pixel format selection
Anton Khirnov [Sat, 7 Mar 2015 21:06:59 +0000 (22:06 +0100)]
tiff: Check that there is no aliasing in pixel format selection

Fixes possible issues with unexpected bpp/bppcount values.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Bug-Id: CVE-2014-8544
(cherry picked from commit ae5e1f3d663a8c9a532d89e588cbc61f171c9186)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit eb9041403d820634c45ed4ee98570246a252507a)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
4 years agoutvideodec: Handle slice_height being zero
Michael Niedermayer [Wed, 4 Mar 2015 17:36:14 +0000 (17:36 +0000)]
utvideodec: Handle slice_height being zero

Fixes out of array accesses.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Bug-Id: CVE-2014-9604
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit 0ce3a0f9d9523a9bcad4c6d451ca5bbd7a4f420d)
(cherry picked from commit 3a417a86b330b7c1acf9db4f729be7d619caaded)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
(cherry picked from commit e032e647dd79e7748145792dfee0358eccb1982e)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
4 years agormenc: limit packet size
Andreas Cadhalpun [Mon, 2 Mar 2015 15:52:26 +0000 (16:52 +0100)]
rmenc: limit packet size

The chunk size is limited to UINT16_MAX (written by avio_wb16), so make
sure that the packet size is not too large.

Such large frames need to be split into slices smaller than 64 kB, but
that is currently supported neither by the rv10/rv20 encoders nor the rm
muxer.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agorv10: check size of s->mb_width * s->mb_height
Andreas Cadhalpun [Tue, 3 Mar 2015 20:31:15 +0000 (21:31 +0100)]
rv10: check size of s->mb_width * s->mb_height

If it doesn't fit into 12 bits it triggers an assertion.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agoeamad: check for out of bounds read
Federico Tomassetti [Wed, 18 Feb 2015 12:11:44 +0000 (12:11 +0000)]
eamad: check for out of bounds read

Bug-Id: CID 1257500
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoarm: Suppress tags about used cpu arch and extensions
Martin Storsjö [Thu, 5 Mar 2015 21:38:00 +0000 (23:38 +0200)]
arm: Suppress tags about used cpu arch and extensions

When all the codepaths using manually set .arch/.fpu code is
behind runtime detection, the elf attributes should be suppressed.

This allows tools to know that the final built binary doesn't
strictly require these extensions.

Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit dcae2e32f7d8a1ca5fb8c1e4aa81313be854dd73
and b77e335e441040a40fc6156b8e4a134745d10233)
Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agoPrepare for 9.18 Release
Reinhard Tartler [Sun, 8 Mar 2015 15:25:19 +0000 (11:25 -0400)]
Prepare for 9.18 Release

4 years agoUpdate Changelog for v9.18
Reinhard Tartler [Sun, 8 Mar 2015 15:24:45 +0000 (11:24 -0400)]
Update Changelog for v9.18

4 years agoimg2dec: correctly use the parsed value from -start_number
Vittorio Giovara [Tue, 6 Jan 2015 15:47:18 +0000 (16:47 +0100)]
img2dec: correctly use the parsed value from -start_number

Previously the image sequence was always starting from the minimum
number rather than the requested one.

CC: libav-stable@libav.org
4 years agoh264_cabac: Break infinite loops
Michael Niedermayer [Thu, 31 Jan 2013 03:20:24 +0000 (04:20 +0100)]
h264_cabac: Break infinite loops

This fixes out of array reads and/or infinite loops.

30 is the maximum number of bits that can be read into
coeff_abs below.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agomatroskadec: Fix read-after-free in matroska_read_seek()
Xiaohan Wang [Thu, 6 Nov 2014 20:59:54 +0000 (12:59 -0800)]
matroskadec: Fix read-after-free in matroska_read_seek()

In matroska_read_seek(), |tracks| is assigned at the begining of the
function. However, functions like matroska_parse_cues() could reallocate
the tracks and invalidate |tracks|.

This assigns |tracks| only before using it, so that it will not get
invalidated elsewhere.

Bug-Id: chromium/427266

4 years agosmc: fix the bounds check
Michael Niedermayer [Fri, 3 Oct 2014 20:50:45 +0000 (22:50 +0200)]
smc: fix the bounds check

Fixes invalid writes when there are more blocks in a run than total
remaining blocks.

CC: libav-stable@libav.org
Bug-ID: CVE-2014-8548
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit d423dd72be451462c6fb1cbbe313bed0194001ab)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 58dc526ebf722d33bf09275c1241674e0e6b9ef1)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit f249e9889155599ee3ad0172832d38f68b0c625d)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agogifdec: refactor interleave end handling
Michael Niedermayer [Fri, 3 Oct 2014 18:15:52 +0000 (20:15 +0200)]
gifdec: refactor interleave end handling

Fixes invalid writes with very small image heights.

CC: libav-stable@libav.org
Bug-ID: CVE-2014-8547
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 0b39ac6f54505a538c21fe49a626de94c518c903)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit eac49477aa95cf727d87d2741ee8e60be59d394b)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 92888e9ed4ea4e761ae953bbe28c85cc658abc8f)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agommvideo: check frame dimensions
Anton Khirnov [Sun, 14 Dec 2014 20:01:59 +0000 (21:01 +0100)]
mmvideo: check frame dimensions

The frame size must be set by the caller and each dimension must be a
multiple of 2.

CC: libav-stable@libav.org
Bug-ID: CVE-2014-8543
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
(cherry picked from commit 17ba719d9ba30c970f65747f42d5fbb1e447ca28)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 69a930b988ff4f88ae27e4fc24ff6ed116840b5e)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 3f10a779b465fd22d3aec1b744ca8544bc2da970)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Conflicts:
libavcodec/mmvideo.c

4 years agojvdec: check frame dimensions
Anton Khirnov [Sun, 14 Dec 2014 20:01:59 +0000 (21:01 +0100)]
jvdec: check frame dimensions

The frame size must be set by the caller and each dimension must be a
multiple of 8.

CC: libav-stable@libav.org
Bug-ID: CVE-2014-8542
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
(cherry picked from commit 88626e5af8d006e67189bf10b96b982502a7e8ad)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 55788572ea7b89cdd77bab1cf4bf06d14ead34f5)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 8f238dd9bdd9eba569fcaa564a07fbdd89412a14)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Conflicts:
libavcodec/jvdec.c

4 years agomov: avoid a memleak when multiple stss boxes are present
Anton Khirnov [Tue, 12 Aug 2014 14:39:10 +0000 (14:39 +0000)]
mov: avoid a memleak when multiple stss boxes are present

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
(cherry picked from commit 64f7575fbd64e5b65d5c644347408588c776f1fe)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 577f1feb3fd1e51fd14af7ce6d79d468faa3b929)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 931f5b235112f1c2a09dead36f0a228061d23942)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agomp3enc: fix a triggerable assert
Anton Khirnov [Fri, 14 Nov 2014 19:20:50 +0000 (20:20 +0100)]
mp3enc: fix a triggerable assert

We have to check against the number of bytes actually needed, not the
theoretical maximum size.

(cherry picked from commit 12700b0219521a5f20c8ba47b3ad7857ea9e0554)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 871d99ef77336069e5a8ece947c8160d9bc4d5ea)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoAdd some bug references to the changelog
Diego Biurrun [Tue, 16 Sep 2014 10:36:36 +0000 (03:36 -0700)]
Add some bug references to the changelog

4 years agoapetag: Fix APE tag size check
Katerina Barone-Adesi [Mon, 15 Sep 2014 23:40:24 +0000 (01:40 +0200)]
apetag: Fix APE tag size check

The size variable is (correctly) unsigned, but is passed to several functions
which take signed parameters, such as avio_read, sometimes after having
numbers added to it. So ensure that size remains within the bounds that
these functions can handle.

(cherry picked from commit d14696c99ccac12a052ce10e70859ffc0293ed6a)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agoUpdate Changelog for v9.17 v9.17
Diego Biurrun [Wed, 10 Sep 2014 19:58:33 +0000 (12:58 -0700)]
Update Changelog for v9.17

4 years agoPrepare for 9.17 release
Diego Biurrun [Wed, 10 Sep 2014 19:58:01 +0000 (12:58 -0700)]
Prepare for 9.17 release

4 years agodoc: Fix syntax and logical errors in avconv stream combination example
Diego Biurrun [Wed, 10 Sep 2014 16:38:15 +0000 (18:38 +0200)]
doc: Fix syntax and logical errors in avconv stream combination example

Bug-Id: 661
CC: libav-stable@libav.org
(cherry picked from commit 775a0b04f0cf8102fe322b2ee03fe1a0633dea04)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agopulse: Add a wallclock option to be compatible with other other captures
Luca Barbato [Sat, 23 Aug 2014 17:03:21 +0000 (19:03 +0200)]
pulse: Add a wallclock option to be compatible with other other captures

alsa and x11grab use av_gettime() to report timestamps.

Have it on by default.

Bug-Id: 647
(cherry picked from commit 424b929b5cb9ca4094099f25179829260d4b0fa3)
(cherry picked from commit 404731bd20e1df5880e6fe381e975ba48afc75b2)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoavconv: fix parsing the AVOptions for -target
Anton Khirnov [Tue, 26 Aug 2014 06:26:35 +0000 (06:26 +0000)]
avconv: fix parsing the AVOptions for -target

CC: libav-stable@libav.org
(cherry picked from commit f5245a9c6206878b892adf3ccbccc9311c202af5)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit f7395926f204051af9ad459a6d876b96ee6179ee)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoavconv: fix the muxrate values for -target
Anton Khirnov [Mon, 25 Aug 2014 21:24:35 +0000 (21:24 +0000)]
avconv: fix the muxrate values for -target

The mpegenc private option values are in 50-byte units.

CC: libav-stable@libav.org
(cherry picked from commit 1688eef25385089026aba55da1885f70a57815ab)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 7bc37641e3e6c24d472ae06fcbecaba4c863829b)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agompegenc: limit the maximum muxrate
Anton Khirnov [Mon, 25 Aug 2014 21:21:57 +0000 (21:21 +0000)]
mpegenc: limit the maximum muxrate

It is written to the file as a 22-bit value.

CC: libav-stable@libav.org
(cherry picked from commit 75bbaf2493a71ee66eaabe3c21fadd84d07888de)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Conflicts:
libavformat/mpegenc.c

(cherry picked from commit 3ac0638d573fc483ba6be3444858b26711c5d67d)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoffv1dec: check that global parameters do not change in version 0/1
Michael Niedermayer [Fri, 30 Aug 2013 02:51:09 +0000 (04:51 +0200)]
ffv1dec: check that global parameters do not change in version 0/1

Such changes are neither allowed nor supported

Found-by: ami_stuff
Bug-Id: CVE-2013-7020
CC: libav-stable@libav.org
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit da7d839a0d3ec40423a665dc85e0cfaed3f92eb8)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoRe-release 9.15 as 9.16 v9.16
Reinhard Tartler [Sat, 9 Aug 2014 12:55:45 +0000 (08:55 -0400)]
Re-release 9.15 as 9.16

This is a clean fixup of the tagging mistake in the v9.15 release

4 years agoPrepare for 9.15 Release v9.15.1
Reinhard Tartler [Sat, 9 Aug 2014 01:57:46 +0000 (21:57 -0400)]
Prepare for 9.15 Release

4 years agoUpdate Changelog for v9.15 v9.15
Reinhard Tartler [Sat, 9 Aug 2014 00:46:15 +0000 (20:46 -0400)]
Update Changelog for v9.15

4 years agovp3: Copy all 3 frames for thread updates
Michael Niedermayer [Mon, 4 Aug 2014 00:12:47 +0000 (01:12 +0100)]
vp3: Copy all 3 frames for thread updates

Fixes a double release of the current frame on deinit.

Bug-Id: CVE-2011-3934
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agompegts: Do not try to write a PMT larger than SECTION_SIZE
Luca Barbato [Thu, 7 Aug 2014 15:10:32 +0000 (17:10 +0200)]
mpegts: Do not try to write a PMT larger than SECTION_SIZE

Prevent out of array write.

Similar to what Michael Niedermayer did to address the same issue.

Bug-Id: CVE-2014-2263
CC: libav-stable@libav.org
4 years agompegts: Define the section length with a constant
Luca Barbato [Sun, 3 Aug 2014 17:27:07 +0000 (19:27 +0200)]
mpegts: Define the section length with a constant

The specification says the value is expressed in 10 bits including
the 4-byte CRC.

4 years agoUpdate Changelog for v9.15
Reinhard Tartler [Thu, 7 Aug 2014 00:07:33 +0000 (20:07 -0400)]
Update Changelog for v9.15

4 years agoerror_concealment: avoid using the picture if not fully setup
Michael Niedermayer [Wed, 6 Aug 2014 17:19:57 +0000 (18:19 +0100)]
error_concealment: avoid using the picture if not fully setup

Fixes state becoming inconsistent and a null pointer dereference.

CC: libav-stable@libav.org
Bug-Id: CVE-2013-0860
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agosvq1: do not modify the input packet
Anton Khirnov [Sun, 3 Aug 2014 08:14:48 +0000 (10:14 +0200)]
svq1: do not modify the input packet

The input data must remain constant, make a copy instead. This is in
theory a performance hit, but since I failed to find any samples
using this feature, this should not matter in practice.

Also, check the size of the header, avoiding invalid reads on truncated
data.

CC:libav-stable@libav.org
(cherry picked from commit 7b588bb691644e1b3c168b99accf74248a24e3cf)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Conflicts:
libavcodec/svq1dec.c

4 years agocdgraphics: do not return 0 from the decode function
Anton Khirnov [Wed, 6 Aug 2014 10:56:34 +0000 (10:56 +0000)]
cdgraphics: do not return 0 from the decode function

0 means no data consumed, so it can trigger an infinite loop in the
caller.

CC:libav-stable@libav.org
(cherry picked from commit c7d9b473e28238d4a4ef1b7e8b42c1cca256da36)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Conflicts:
libavcodec/cdgraphics.c

4 years agocdgraphics: switch to bytestream2
Anton Khirnov [Wed, 6 Aug 2014 10:46:50 +0000 (10:46 +0000)]
cdgraphics: switch to bytestream2

Fixes possible invalid memory accesses on corrupted data.

CC:libav-stable@libav.org
Bug-ID: CVE-2013-3674
(cherry picked from commit a1599f3f7ea8478d1f6a95e59e3bc6bc86d5f812)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agohuffyuvdec: check width size for yuv422p
Michael Niedermayer [Sat, 2 Aug 2014 23:54:33 +0000 (00:54 +0100)]
huffyuvdec: check width size for yuv422p

Avoid out of array accesses.

CC: libav-stable@libav.org
Bug-Id: CVE-2013-0848
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit a7153444df9040bf6ae103e0bbf6104b66f974cb)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agommvideo: check horizontal coordinate too
Michael Niedermayer [Sun, 3 Aug 2014 18:24:18 +0000 (19:24 +0100)]
mmvideo: check horizontal coordinate too

Fixes out of array accesses.

Bug-Id: CVE-2013-3672
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 70cd3b8e659c3522eea5c16a65d14b8658894a94)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agowmalosslessdec: fix mclms_coeffs* array size
Michael Niedermayer [Fri, 7 Feb 2014 14:07:23 +0000 (15:07 +0100)]
wmalosslessdec: fix mclms_coeffs* array size

Fixes corruption of context

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Bug-Id: CVE-2014-2098
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 849b9d34c7ef70b370c53e7af3940f51cbc07d0f)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agolavc: Check the image size before calling get_buffer
Luca Barbato [Mon, 4 Aug 2014 12:15:45 +0000 (14:15 +0200)]
lavc: Check the image size before calling get_buffer

Bug-Id: CVE-2011-3935
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
4 years agohuffyuv: Check and propagate function return values
Diego Biurrun [Sun, 3 Aug 2014 19:19:10 +0000 (12:19 -0700)]
huffyuv: Check and propagate function return values

Bug-Id: CVE-2013-0868

inspired by a patch from Michael Niedermayer <michaelni@gmx.at>
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
(cherry picked from commit 744b406ff3474e77543bcf86125a2f7bc7deaa18)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Conflicts:
libavcodec/huffyuvdec.c

4 years agoh264: prevent theoretical infinite loop in SEI parsing
Vittorio Giovara [Wed, 30 Jul 2014 18:33:36 +0000 (19:33 +0100)]
h264: prevent theoretical infinite loop in SEI parsing

Properly address CVE-2011-3946 and parse bitstream as described in the spec.

CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
4 years agoh264_sei: check SEI size
Michael Niedermayer [Thu, 19 Sep 2013 14:26:25 +0000 (16:26 +0200)]
h264_sei: check SEI size

Signed-off-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agopgssubdec: Check RLE size before copying
Michael Niedermayer [Thu, 31 Jul 2014 01:31:19 +0000 (21:31 -0400)]
pgssubdec: Check RLE size before copying

Make sure the buffer size does not exceed the expected
RLE size.

Prevent an out of array bound write.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Bug-Id: CVE-2013-0852

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit a1f7844a11010d8552c75424d1a831b37a0ae5d9)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agofate: Add dependencies for dct/fft/mdct/rdft tests
Diego Biurrun [Thu, 26 Jun 2014 00:09:13 +0000 (17:09 -0700)]
fate: Add dependencies for dct/fft/mdct/rdft tests

(cherry picked from commit d396987c303bdc4eea7d1a1ff6776475d9bbd9ea)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Conflicts:
libavcodec/fft-test.c

4 years agovideo4linux2: Avoid a floating point exception
Bernhard Übelacker [Sun, 27 Jul 2014 15:38:59 +0000 (08:38 -0700)]
video4linux2: Avoid a floating point exception

This avoids a segfault in avconv_opt.c:opt_target when trying to
determine the norm.

(cherry picked from commit dc71f1958846bb1d96de43a4603983dc8450cfcc)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agovf_select: Drop a debug av_log with an unchecked double to enum conversion
Diego Biurrun [Tue, 29 Jul 2014 12:43:04 +0000 (05:43 -0700)]
vf_select: Drop a debug av_log with an unchecked double to enum conversion

CC: libav-stable@libav.org
(cherry picked from commit a8d803a320fb08b3ad5db4fffc79abd401206905)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agoeamad: use the bytestream2 API instead of AV_RL
Anton Khirnov [Sun, 20 Jul 2014 12:06:47 +0000 (12:06 +0000)]
eamad: use the bytestream2 API instead of AV_RL

This is safer and possibly fixes invalid reads on truncated data.
(cherry-picked from commit 541427ab4d5b4b6f5a90a687a06decdb78e7bc3c)

CC:libav-stable@libav.org

Conflicts:
libavcodec/eamad.c

(cherry picked from commit f9204ec56a4cf73843d1e5b8563d3584c2c05b47)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
4 years agoUpdate Changelog for v9.14 v9.14
Reinhard Tartler [Fri, 27 Jun 2014 01:27:56 +0000 (21:27 -0400)]
Update Changelog for v9.14

4 years agoPrepare for 9.14 Release
Reinhard Tartler [Fri, 27 Jun 2014 01:23:39 +0000 (21:23 -0400)]
Prepare for 9.14 Release

4 years agoadpcm: Write the proper predictor in trellis mode in IMA QT
Martin Storsjö [Thu, 5 Jun 2014 11:49:14 +0000 (14:49 +0300)]
adpcm: Write the proper predictor in trellis mode in IMA QT

The actual predictor value, set by the trellis code, never
was written back into the variable that was written into
the block header. This was accidentally removed in b304244b.

This significantly improves the audio quality of the trellis
case, which was plain broken since b304244b.

Encoding IMA QT with trellis still actually gives a slightly
worse quality than without trellis, since the trellis encoder
doesn't use the exact same way of rounding as in
adpcm_ima_qt_compress_sample and adpcm_ima_qt_expand_nibble.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 0776e0ef6ba4160281ef3fabea43e670f3792b4a)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoadpcm: Avoid reading out of bounds in the IMA QT trellis encoder
Martin Storsjö [Thu, 5 Jun 2014 08:48:53 +0000 (11:48 +0300)]
adpcm: Avoid reading out of bounds in the IMA QT trellis encoder

This was broken in 095be4fb - samples+ch (for the previous
non-planar case) equals &samples_p[ch][0]. The confusion
probably stemmed from the IMA WAV case where it originally
was &samples[avctx->channels + ch], which was correctly
changed into &samples_p[ch][1].

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 3d79d0c93e5b37a35b1b22d6c18699c233aad1ba)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoCheck mp3 header before calling avpriv_mpegaudio_decode_header().
Justin Ruggles [Sun, 22 Jun 2014 17:19:36 +0000 (13:19 -0400)]
Check mp3 header before calling avpriv_mpegaudio_decode_header().

As indicated in the function documentation, the header MUST be
checked prior to calling it because no consistency check is done
there.

CC:libav-stable@libav.org
(cherry picked from commit f2f2e7627f0c878d13275af5d166ec5932665e28)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoCheck if an mp3 header is using a reserved sample rate.
Justin Ruggles [Sun, 22 Jun 2014 17:11:32 +0000 (13:11 -0400)]
Check if an mp3 header is using a reserved sample rate.

Fixes an invalid read past the end of avpriv_mpa_freq_tab.
Fixes divide-by-zero due to sample_rate being set to 0.

Bug-Id: 705

CC:libav-stable@libav.org

Conflicts:
libavcodec/mpegaudiodecheader.c

4 years agolzo: Handle integer overflow
Luca Barbato [Thu, 19 Jun 2014 21:26:58 +0000 (23:26 +0200)]
lzo: Handle integer overflow

get_len can overflow for specially crafted payload.

Reported-By: Don A. Baley <donb@securitymouse.com>
CC: libav-stable@libav.org
(cherry picked from commit ccda51b14c0fcae2fad73a24872dce75a7964996)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agosgidec: fix an incorrect backport
Sean McGovern [Mon, 2 Jun 2014 21:42:17 +0000 (17:42 -0400)]
sgidec: fix an incorrect backport

Bug-Id: 691

Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoavconv: do not send non-monotonous DTS to the muxers.
Anton Khirnov [Wed, 24 Apr 2013 06:34:44 +0000 (08:34 +0200)]
avconv: do not send non-monotonous DTS to the muxers.

Hack partially based on a commit by Michael Niedermayer <michaelni@gmx.at>
Should fix (or work around) bug 458.
(cherry picked from commit 76d23f40314fc1dcd74a3d470b17782cc0ee5a3a)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoavconv: make -shortest work with streamcopy
Anton Khirnov [Tue, 10 Jun 2014 15:41:57 +0000 (17:41 +0200)]
avconv: make -shortest work with streamcopy

CC: libav-stable@libav.org
(cherry picked from commit 48e50921337984ba4ec2c1cafe45d43787f84498)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agomatroskaenc: do not write negative timestamps
Anton Khirnov [Sun, 1 Jun 2014 10:40:20 +0000 (12:40 +0200)]
matroskaenc: do not write negative timestamps

Bug-Id: 597, 341

4 years agoupdate Changelog v9.13
Rafaël Carré [Tue, 27 Aug 2013 15:35:49 +0000 (17:35 +0200)]
update Changelog

4 years agoUpdate Changelog for v9.13
Reinhard Tartler [Sun, 4 May 2014 14:37:49 +0000 (10:37 -0400)]
Update Changelog for v9.13

4 years agoswscale: Fix an undefined behaviour
Luca Barbato [Thu, 1 May 2014 22:21:23 +0000 (00:21 +0200)]
swscale: Fix an undefined behaviour

Prevent a division by zero down the codepath.

Sample-Id: 00001721-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
(cherry picked from commit 3a177a9cca924e097265b32f9282814f6b653e08)
(cherry picked from commit 0499f7809c1fcc33ed710cdf771a18b374702135)

4 years agomatroska: add the Opus mapping
Anton Khirnov [Sun, 27 Apr 2014 11:40:11 +0000 (13:40 +0200)]
matroska: add the Opus mapping

(cherry picked from commit 141fdc763c2841b572d29a2ad78513e8d5325870)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
(cherry picked from commit 79041d92ee7421853ee8c57fc13891cb0c272e0e)

4 years agomp3enc: Properly write bitrate value in XING header
Michael Niedermayer [Wed, 9 Apr 2014 16:22:53 +0000 (18:22 +0200)]
mp3enc: Properly write bitrate value in XING header

Instead of using a fixed bitrate_idx, calculate a matching bitrate for
the XING header.

Using a fixed bitrate_idx causes tools such as file(1) and mediainfo(1)
to report wrong bitrate and bitrate mode when using CBR.

Bug-Id: https://bugs.debian.org/736088

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit 617a1a98a6be3e59db6fbfc21afab2fb9a049c03)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
(cherry picked from commit 0f6e309b97e3da83a0fa75fbf1c4b50cd72047eb)

4 years agooggdec: add support for Opus in Ogg demuxing
Nicolas George [Sun, 24 Jun 2012 09:38:18 +0000 (11:38 +0200)]
oggdec: add support for Opus in Ogg demuxing

Fixes: https://bugzilla.libav.org/show_bug.cgi?id=603
Fixes: http://bugs.debian.org/720563

(cherry picked from commit ecab1c77410f023b437c6ed3a3281be8f039e574)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
4 years agoapedec: do not buffer decoded samples over AVPackets
Rafaël Carré [Tue, 27 Aug 2013 15:35:49 +0000 (17:35 +0200)]
apedec: do not buffer decoded samples over AVPackets

Only consume an AVPacket when all the samples have been read.

When the rate of samples output is limited (by the default value
of max_samples), consuming the first packet immediately will cause
timing problems:

- The first packet with PTS 0 will output 4608 samples and be
consumed entirely
- The second packet with PTS 64 will output the remaining samples
(typically, a lot, that's why max_samples exist) until the decoded
samples of the first packet have been exhausted, at which point the
samples of the second packet will be decoded and output when
av_decode_frame is called with the next packet).

That means there's a PTS jump since the first packet is 'decoded'
immediately, which can be seen with avplay or mplayer: the timing
jumps immediately to 6.2s (which is the size of a packet).

Sample: http://streams.videolan.org/issues/6348/Goldwave-MAClib.ape

Bug-Debian: http://bugs.debian.org/744901
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
(cherry picked from commit 91d4cfb8127f1de6c4ad173a30fffe584700046d)
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
4 years agoisom: lpcm in mov default to big endian
Mark Himsley [Fri, 1 Nov 2013 11:22:53 +0000 (11:22 +0000)]
isom: lpcm in mov default to big endian

It is my understanding that "Unless otherwise stated, all data in a
QuickTime movie is stored in big-endian byte ordering" [1] in MOV files.

I have a couple of thousand files, which technically are invalid because
their sound sample description element 4CC is 'lpcm' but its version is
0 - and "Version 0 supports only uncompressed audio in raw ('raw ') or
twos-complement ('twos') format" [2]

Because isom.c only contains a mapping for 4CC 'lpcm' to
AV_CODEC_ID_PCM_S16LE, these files have their audio decoded as LE when
it is actually BE.

This commit adds AV_CODEC_ID_PCM_S16BE as the first match for 4CC 'lpcm'.

[1]
https://developer.apple.com/library/mac/documentation/quicktime/QTFF/qtff.pdf
page 21
[2]
https://developer.apple.com/library/mac/documentation/quicktime/QTFF/qtff.pdf
page 178

Reviewed-by: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
(cherry picked from commit 360022bd3b894cc01ea112b275fa4c8f53881808)
(cherry picked from commit d37fac6dbbdddb76225aa691b83ffd9a0c7dae6b)

4 years agomovdec: handle 0x7fff langcode as macintosh per the specs
Baptiste Coudurier [Wed, 21 Mar 2012 21:18:16 +0000 (14:18 -0700)]
movdec: handle 0x7fff langcode as macintosh per the specs

The correct point that seperates ISO and MAC language codes is 0x400
according to the current QT spec. Old QT specs did not list where this
seperation is but apparently only defined the meaning of the first 137.

(cherry picked from commit 9e71cc81f3655cacf0f91860fba3043f13b64059)
(cherry picked from commit 7940306a47df602be4f57a62175706265bbfd0aa)

4 years agoh264: reset next_output_pic earlier in start_frame()
Anton Khirnov [Wed, 23 Apr 2014 20:26:40 +0000 (22:26 +0200)]
h264: reset next_output_pic earlier in start_frame()

In case start_frame() fails, this potentially invalid frame can still be
output to the caller.

Bug-Id: 672
Bug-Id: debian/741240
Bug-Id: ubuntu/1288206

4 years agoRevert "pthread: flush all threads on flush, not just the first one"
Anton Khirnov [Thu, 24 Apr 2014 05:40:34 +0000 (07:40 +0200)]
Revert "pthread: flush all threads on flush, not just the first one"

This reverts commit 2eb15cdeef29eb8a0a32658154decba94b4b89cb.

It does not work correctly in pre-refcounting threading code.

4 years agoconfigure: Support older version of openjpeg1
Luca Barbato [Wed, 12 Mar 2014 09:30:07 +0000 (09:30 +0000)]
configure: Support older version of openjpeg1

It should work best for debian stable and people not installing the .pc
file.
(cherry picked from commit aa807425395caa17a85ed2833133278e8bd44a76)

Conflicts:
configure

Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agoconfigure: Use the right pkgconf file for openjpeg
Luca Barbato [Mon, 10 Mar 2014 10:48:04 +0000 (11:48 +0100)]
configure: Use the right pkgconf file for openjpeg

The current release of version 1 uses libopenjpeg1.
(cherry picked from commit 4a8562394b685e83ae4a38a93eef43625755a231)

Conflicts:
configure

Signed-off-by: Anton Khirnov <anton@khirnov.net>
4 years agortmpproto: Make sure to pass on the error code if read_connect failed
Martin Storsjö [Sun, 13 Apr 2014 10:44:03 +0000 (13:44 +0300)]
rtmpproto: Make sure to pass on the error code if read_connect failed

Previously, if read_connect failed, the ret variable was unmodified
and had the value 0, indicating success, which then was returned from
the rtmp_open function, even though it actually failed.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 6477139721f559b26eafd415e23e13ea2b0c27e1)

4 years agolavr: allocate the resampling buffer with a positive size
Anton Khirnov [Thu, 20 Mar 2014 19:40:24 +0000 (20:40 +0100)]
lavr: allocate the resampling buffer with a positive size

This fixes cases where very few input samples (fewer than needed for one
output sample) are passed to lavr at the beginning.
CC:libav-stable@libav.org
(cherry picked from commit ac976ed91e323754e9a84509873ebdb437372797)

4 years agotiffdec: use bytestream2 to simplify overread/overwrite protection
Justin Ruggles [Sun, 29 Sep 2013 23:47:55 +0000 (19:47 -0400)]
tiffdec: use bytestream2 to simplify overread/overwrite protection

Based on a patch by Paul B Mahol <onemda@gmail.com>

CC:libav-stable@libav.org

4 years agobytestream: add bytestream2_copy_buffer() functions
Justin Ruggles [Sun, 29 Sep 2013 23:45:57 +0000 (19:45 -0400)]
bytestream: add bytestream2_copy_buffer() functions

This is basically an overread/overwrite-safe memcpy between a
GetByteContext and a PutByteContext.

CC:libav-stable@libav.org
(cherry picked from commit 5748faf291fec297ef25d81962b52b3438f54278)

4 years agobytestream: add functions for accessing size of buffer
Paul B Mahol [Wed, 21 Mar 2012 00:10:18 +0000 (00:10 +0000)]
bytestream: add functions for accessing size of buffer

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org
(cherry picked from commit de9d2705f61ef569487ec5f8974a9c7ce34ec783)