Commit Graph

41920 Commits

Author SHA1 Message Date
Vittorio Giovara
c6aa0554b0 mpegvideo: Drop release_unused_pictures() function
It is only used in one place, and it is small enough that it might be
called directly.
2015-06-10 14:05:53 +01:00
Vittorio Giovara
7061bf0925 mpegvideo: Move Picture-related functions to a separate file 2015-06-10 14:05:32 +01:00
Janne Grunau
529c05698e movenc: fixes a questionable valgrind uninitialized value warning
display_matrix_size is only initialized when av_stream_get_side_data()
returns a side data pointer. The code is safe since the only effect this
has is setting the display_matrix pointer to NULL which it was already
anyway.
2015-06-10 14:32:11 +02:00
Luca Barbato
b14086ca38 mkv: Correctly report the latest packet had been flushed
Bug-Id: 865
CC: libav-stable@libav.org
2015-06-09 14:27:54 +02:00
James Almer
b380337020 mpjpegdec: don't try to alloc an AVIOContext when probe is guaranteed to fail
The first check is done without the AVIOContext, so alloc it only if said check succeeds

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2015-06-09 10:07:11 +02:00
Janne Grunau
210921722b imc: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
fate-imc.

CC: libav-stable@libav.org
2015-06-09 10:07:04 +02:00
Janne Grunau
09447f2b0f ac3_parser: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
various fate tests.

CC: libav-stable@libav.org
2015-06-09 10:06:59 +02:00
Janne Grunau
fb14730802 aac_parser: add required padding for GetBitContext buffer
Fixes stack buffer overflow errors detected by address sanitizer in
various fate tests.

CC: libav-stable@libav.org
2015-06-09 10:05:54 +02:00
Vittorio Giovara
4733a12dd1 rtpdec_asf: Check memory allocation and free memory on error
CC: libav-stable@libav.org
Bug-Id: CID 1257774
2015-06-08 13:04:29 +01:00
Vittorio Giovara
6308cd4868 mov: Check memory allocation
CC: libav-stable@libav.org
Bug-Id: CID 1292518
2015-06-08 13:03:39 +01:00
Vittorio Giovara
bc1eace1b3 jack: Check memory allocation
CC: libav-stable@libav.org
Bug-Id: CID 1292520
2015-06-08 13:03:27 +01:00
Vittorio Giovara
f7e9324733 audiointerleave: Always initialize new_pkt
CC: libav-stable@libav.org
Bug-Id: CID 609333
2015-06-08 13:03:10 +01:00
Vittorio Giovara
8ef98855d2 sctp: Always initialize outmsg struct
CC: libav-stable@libav.org
Bug-Id: CID 1302711
2015-06-08 13:01:33 +01:00
Janne Grunau
caf7be30b1 mpjpgdec: free AVIOContext leak on early probe fail 2015-06-08 13:55:26 +02:00
Vittorio Giovara
925b80d640 mpegvideo: Move OutFormat enum to mpegutils.h
It is necessary to avoid circular header dependencies.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
9bb11be0e5 mpegvideo: Split picture allocation for encoding and decoding
The main ff_alloc_picture() function is made more generic with all the
parameters necessary as arguments. This will allows to move most of the
related functions to a separate file later.

Right now wrappers are provided to try and minimize the number of
changes in the code.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
f8716a1408 mpegvideo: Rework frame_size_alloc function
Use more generic arguments and remove its static attribute since it will
be moved to a separate file.
2015-06-08 12:39:42 +01:00
Vittorio Giovara
da0c8664b4 mpegvideo: Move various temporary buffers to a separate context 2015-06-08 12:39:42 +01:00
Luca Barbato
a6f19d6a9f configure: Support MSVC 2015
The C runtime C99 compatibility had been improved a lot and it now
rejects some of the compatibility defines provided for the older
versions.

Many thanks to Ray for the time spent testing.

Bug-Id: 864
CC: libav-stable@libav.org
2015-06-08 13:27:49 +02:00
Luca Barbato
bc76c46943 aac: Wait to know the channels before allocating frame
The channel configuration can be delivered only by the PCE,
try to parse it first and not try to decode until a channel
configuration is set.

CC: libav-stable@libav.org
2015-06-07 10:14:46 +02:00
Sebastian Dröge
a188108ebf aac: Support channel configurations 11 and 12
These are defined in ISO/IEC 14496-3:2009/PDAM 4 for 6.1 and 7.1.
It also defines another 7.1 layout with configuration 14, that one
is not added here for now.

11: 3/3.1    FC FL+FR BL+BR BC LFE
12: 3/2/2.1  FC FL+FR SiL+SiR BL+BR LFE

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-07 10:14:46 +02:00
nu774
677c804aa3 aac: correctly map 7.1ch-wide AAC from FDK AAC encoder
FDK AAC encoder outputs SCE(front)+CPE(front)+CPE(back)+CPE(back) on
MODE_7_1_REAR_SURROUND configuration.
Since decoder couldn't properly map 4 back channels, decoding failed
unless -request_channel_layout 0x8000000000000000 has been specified.
Now we treat first CPE(back) as CPE(side) on channel mapping.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-07 10:14:45 +02:00
Luca Barbato
252d6200c3 avio: Add avio_put_str16be 2015-06-07 10:14:45 +02:00
Luca Barbato
9b56ac74b1 mpjpeg: Initial implementation
Support only streams with Content-Length.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-07 10:14:45 +02:00
nu774
0289f81241 aac: Correctly map multichannel ADTS AAC with non-zero channel_config + PCE
The decoder assigns channels using default channel configuration
for 5.1ch when it parses an ADTS frame header using consecutive
channel ids.

When a PCE comes, it reassigns channels using PCE configuration
using directly the ids provided. They can be arbitrary.

Always use consecutive channel ids to avoid decoding glitches due
spurious reconfigurations due the channel ids mismatch between the
two otherwise-identical channel maps.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-03 14:40:10 +02:00
Luca Barbato
7f596368a4 bink: Factorize bink put_pixel
And make sure to check INTER_BLOCK as had been fixed by Michael
Niedermayer.

Reported-By: Andreas Cadhalpun
CC: libav-stable@libav.org
2015-06-03 14:39:03 +02:00
Martin Storsjö
e97446e600 configure: Check for DXVA2_ConfigPictureDecode instead of LPDIRECT3DSURFACE9
Checking this struct is a bit more natural for this dependency.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-03 15:29:54 +03:00
Martin Storsjö
b9875b497a configure: Remove unnecessary tests for d3d11va
These are only necessary once/if avconv gets support for this hwaccel.
While that obviously is desireable, we don't have it yet, and they
currently only are a distraction.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-03 15:28:25 +03:00
Martin Storsjö
76eb0950b8 configure: Don't run "export $e" for an empty string
This fixes the side effect of printing the whole environment,
if no --env parameter was provided.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-03 15:27:42 +03:00
James Almer
876d441fbe configure: don't enable tls protocols if network is disabled
This was a regression introduced with d8ffb2055f.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-02 22:48:50 +03:00
Luca Barbato
fd11465b21 configure: Use pkg-config for fdk-aac
Makes the life of the people already setting PKG_CONFIG_PATH simpler.
2015-06-02 10:33:32 +02:00
Luca Barbato
604abd025d configure: Provide an option to override the environment
Useful to have `make config` work with custom pkgconf path.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-02 10:33:11 +02:00
Luca Barbato
06db45523c configure: Support the extended pkgconf syntax
Make possible to require a combination of
packages and/or pin specific versions.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-06-02 10:33:11 +02:00
Martin Storsjö
8349bedfa5 configure: Remove some unnecessary exported config items
The only need to be listed if they are to be used in ifdefs from
within the code - config items used as dependencies only within
configure don't need to be exported.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 23:04:52 +03:00
Martin Storsjö
ff7ae4b9df configure: Require LPDIRECT3DSURFACE9 for dxva2
This fixes dxva2 detection (i.e. correctly realizes that it isn't
available) for WinRT, where dxva2api.h does exist, but these definitions
are omitted (when targeting the API subsets).

Ideally we should rather check for e.g. DXVA2_ConfigPictureDecode,
but configure might fail to find that definition due to _WIN32_WINNT
not being set to the right value during configure. (libavcodec/dxva2.h
manually overrides the _WIN32_WINNT define.)

This allows removing hardcoded --disable-dxva2 from such build
configurations.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 23:04:49 +03:00
Martin Storsjö
172b2cee17 dxva2: Add ifdefs around structs that might not be available
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 23:04:46 +03:00
Steve Lhomme
28fa58cf5d dxva2: Fix build when only D3D11 or DXVA2 is used
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 12:04:57 +03:00
Steve Lhomme
31de41babc configure: Check if ID3D11VideoDecoder exists, not just the header to enable d3d11va
Fixes build with some mingw-w64 versions, that have got the header
but not the interface declaration.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 12:04:46 +03:00
Michael Niedermayer
08d006f5a8 h264: Fix HWACCEL_MAX for D3D11
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 11:36:30 +03:00
Michael Niedermayer
674b79148f hevc: Fix HWACCEL_MAX for D3D11
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 11:36:22 +03:00
Martin Storsjö
63ce9fd23c rtmpdh: Use GMP functions directly, instead of nettle wrappers
mpz_import and mpz_export were added in GMP 4.1, in 2002.

This simplifies the DH code by clarifying that it only uses pure
bignum functions, no other parts of nettle/hogweed.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 10:38:54 +03:00
Martin Storsjö
84c5ff911f rtmpdh: Fix the indentation in a struct
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-06-01 10:38:54 +03:00
Luca Barbato
b08caa87c3 nvenc: H264 and HEVC encoders
Partially based on the work of Timo Rothenpieler <timo@rothenpieler.org>

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-31 15:17:22 +02:00
Vittorio Giovara
522d971c7f xsub: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
83797da6e3 wma: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
e1ea365f7e truemotion2: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
28fb80dcbf svq1: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
42df71d9bb ratecontrol: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
0994e14213 pthread: Check memory allocation 2015-05-31 15:03:31 +02:00
Vittorio Giovara
03927cb733 psymodel: Check memory allocation 2015-05-31 15:03:31 +02:00