5 years agoaarch64: Make transpose_4x4H do a regular transpose
Martin Storsjö [Fri, 25 Mar 2016 21:44:10 +0000 (23:44 +0200)]
aarch64: Make transpose_4x4H do a regular transpose

Previously, ff_h264_idct_add_neon (originally in the arm version) used
a non-regular transpose in order to be able to use more instructions
that deal with registers as 128 bit register pairs. The aarch64
translation doesn't do it to the same extent, but brought along the
same structure since it was a straight translation.

This reshuffles ff_h264_idct_add_neon, bringing it closer to
the C implementation, making the transpose_4x4H macro do a regular
transpose, usable for other algorithms as well.

Previously, the third and fourth output from transpose_4x4H were
swapped, and prior to cc29d96d5a, the same inputs as well. In
addition to just swapping the outputs, also renumber the intermediate
registers for better readability (making the register order match

This runs with the same number of cycles as before.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agortpdec_jpeg: fix low contrast image on low quality setting
Ico Doornekamp [Thu, 24 Mar 2016 13:31:38 +0000 (14:31 +0100)]
rtpdec_jpeg: fix low contrast image on low quality setting

The problem is that the argument 'q' is of the type uint8_t.
According to the JPEG standard, if 1 <= q <= 50, the scale factor
'S' should be 5000 / Q. Because the create_default_qtables() reuses
the variable 'q' to store the result of this calculation, for small
values of q < 19, q wil subsequently overflow and give wrong results
in the calculated quantization tables.

Instead, use a new variable 'S' (same name as in RFC2435) with the
proper range to store the result of the division.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agointrax8: Add a local BlockDSPContext and initialize it
Vittorio Giovara [Sat, 20 Feb 2016 05:46:49 +0000 (00:46 -0500)]
intrax8: Add a local BlockDSPContext and initialize it

Helps in decoupling this code from mpegvideo.

5 years agointrax8: Reference the current AVCodecContext
Vittorio Giovara [Sat, 20 Feb 2016 05:43:22 +0000 (00:43 -0500)]
intrax8: Reference the current AVCodecContext

It will be needed to initialize BlockDSP in the next commit.

5 years agointrax8: Keep a reference to the GetBitContext reader
Vittorio Giovara [Sat, 20 Feb 2016 05:23:48 +0000 (00:23 -0500)]
intrax8: Keep a reference to the GetBitContext reader

Helps in decoupling this code from mpegvideo.

5 years agointrax8: Use a constant buffer instead of a ScratchpadContext
Vittorio Giovara [Sat, 20 Feb 2016 01:50:00 +0000 (20:50 -0500)]
intrax8: Use a constant buffer instead of a ScratchpadContext

The size of the block is fixed (8x8 plus padding).

5 years agointrax8: Pass the output frame to the decoding function
Vittorio Giovara [Sat, 20 Feb 2016 01:33:12 +0000 (20:33 -0500)]
intrax8: Pass the output frame to the decoding function

Helps in decoupling this code from mpegvideo.

5 years agointrax8: Carry over the loopfilter value in ff_intrax8_decode_picture
Vittorio Giovara [Sat, 20 Feb 2016 00:59:51 +0000 (19:59 -0500)]
intrax8: Carry over the loopfilter value in ff_intrax8_decode_picture

Helps in decoupling this code from mpegvideo.

5 years agointrax8: Keep a reference to the context idctdsp
Vittorio Giovara [Fri, 19 Feb 2016 23:12:06 +0000 (18:12 -0500)]
intrax8: Keep a reference to the context idctdsp

Use it instead of the embedded mpegvideo one. Update init function
signature to load it directly from the callers.

5 years agointrax8: Make x8_init_block_index not use mpegvideo fields
Vittorio Giovara [Fri, 19 Feb 2016 22:57:09 +0000 (17:57 -0500)]
intrax8: Make x8_init_block_index not use mpegvideo fields

5 years agointrax8: Use local destination buffers
Vittorio Giovara [Sat, 20 Feb 2016 01:18:49 +0000 (20:18 -0500)]
intrax8: Use local destination buffers

These buffers are just a way to store frame pointers and be able to
modify them without touching the original ones.

The two dependent decoders (WMV2 and VC1) do not need special care for
these fields: the former does not seem to use the dest buffers, while
the latter reinits them every time to the current frame data buffers.

So only keep a local copy rather than the one from mpegvideo.

5 years agoh264data: Move all data tables from a header to a .c file
Diego Biurrun [Mon, 19 Aug 2013 12:24:45 +0000 (14:24 +0200)]
h264data: Move all data tables from a header to a .c file

5 years agolavc: Deduplicate zigzag_scan table
Diego Biurrun [Thu, 24 Mar 2016 10:16:53 +0000 (11:16 +0100)]
lavc: Deduplicate zigzag_scan table

5 years agoh264: Clean up #includes
Diego Biurrun [Wed, 23 Mar 2016 17:33:42 +0000 (18:33 +0100)]
h264: Clean up #includes

5 years agortmpdh: add an stdio.h include
Anton Khirnov [Fri, 25 Mar 2016 12:36:28 +0000 (13:36 +0100)]
rtmpdh: add an stdio.h include

The test uses printf.

5 years agoqsvdec_h2645: switch to the new BSF API
Anton Khirnov [Sun, 20 Mar 2016 07:53:10 +0000 (08:53 +0100)]
qsvdec_h2645: switch to the new BSF API

5 years agovf_fade: make sure the slice end is always in the frame
Anton Khirnov [Thu, 24 Mar 2016 20:38:54 +0000 (21:38 +0100)]
vf_fade: make sure the slice end is always in the frame

CC: libav-stable@libav.org
5 years agotestprogs: K&R formatting cosmetics
Diego Biurrun [Mon, 21 Mar 2016 14:19:30 +0000 (15:19 +0100)]
testprogs: K&R formatting cosmetics

5 years agotestprogs: Clean up #includes
Diego Biurrun [Mon, 21 Mar 2016 19:06:18 +0000 (20:06 +0100)]
testprogs: Clean up #includes

5 years agobuild: Drop redundant removal of compiled object files
Diego Biurrun [Fri, 18 Mar 2016 14:23:24 +0000 (15:23 +0100)]
build: Drop redundant removal of compiled object files

This is already taken care of by CLEANSUFFIXES.

5 years agofate: Only run SRTP test if SRTP code is enabled
Diego Biurrun [Wed, 23 Mar 2016 21:02:46 +0000 (22:02 +0100)]
fate: Only run SRTP test if SRTP code is enabled

5 years agounix: Use rw_timeout for setting the connect timeout
Martin Storsjö [Fri, 27 Feb 2015 23:47:20 +0000 (01:47 +0200)]
unix: Use rw_timeout for setting the connect timeout

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agotcp: Use rw_timeout for setting the connect/listen timeouts
Martin Storsjö [Fri, 27 Feb 2015 23:43:39 +0000 (01:43 +0200)]
tcp: Use rw_timeout for setting the connect/listen timeouts

Apply the default value for timeout in code instead of via the
avoption, to allow distinguishing the default value from the user
not setting anything at all.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavio: Copy URLContext generic options into child URLContexts
Martin Storsjö [Sat, 28 Feb 2015 00:00:50 +0000 (02:00 +0200)]
avio: Copy URLContext generic options into child URLContexts

Since all URLContexts have the same AVOptions, such AVOptions
will be applied on the outermost context only and removed from the
dict, while they probably make sense on all contexts.

This makes sure that rw_timeout gets propagated to the innermost
URLContext (to make sure it gets passed to the tcp protocol, when
opening a http connection for instance).

Alternatively, such matching options would be kept in the dict
and only removed after the ffurl_connect call.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoopt: Add av_opt_copy()
Michael Niedermayer [Fri, 30 May 2014 19:04:14 +0000 (21:04 +0200)]
opt: Add av_opt_copy()

This includes documentation and other modifications by
Lukasz Marek and Martin Storsjö.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoopt: Add const to av_opt_next
Lukasz Marek [Wed, 26 Nov 2014 23:11:01 +0000 (00:11 +0100)]
opt: Add const to av_opt_next

Also add const to pointers in static functions within opt.c where

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agofile: Add an option for following a file that is being written
Martin Storsjö [Thu, 5 Feb 2015 13:06:42 +0000 (15:06 +0200)]
file: Add an option for following a file that is being written

Using this requires setting the rw_timeout option to make it
terminate, alternatively using the interrupt callback (if used via
the API).

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavio: Add an option 'rw_timeout'
Andrey Utkin [Mon, 27 Aug 2012 13:31:08 +0000 (16:31 +0300)]
avio: Add an option 'rw_timeout'

If set non-zero, this limits duration of the retry_transfer_wrapper()
loop, thus affecting ffurl_read*(), ffurl_write(). As soon as
one single byte is successfully received/transmitted, the timer

This has further changes by Michael Niedermayer and Martin Storsjö.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavio: Apply avoptions on the URLContext itself as well
Martin Storsjö [Fri, 27 Feb 2015 23:17:09 +0000 (01:17 +0200)]
avio: Apply avoptions on the URLContext itself as well

Currently the list of avoptions for URLContext is empty though,
but such options will be added.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agolavfi: add an NVIDIA NPP-based scaling filter
Anton Khirnov [Sun, 17 Jan 2016 14:02:17 +0000 (15:02 +0100)]
lavfi: add an NVIDIA NPP-based scaling filter

5 years agolavf: VAAPI scale filter
Mark Thompson [Mon, 21 Mar 2016 00:03:16 +0000 (00:03 +0000)]
lavf: VAAPI scale filter

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavf: use new decode API
wm4 [Tue, 22 Mar 2016 18:09:57 +0000 (19:09 +0100)]
lavf: use new decode API

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoavconv: use new encode API
wm4 [Tue, 22 Mar 2016 18:09:55 +0000 (19:09 +0100)]
avconv: use new encode API

The flushing case is a bit strange; not simplifying it so the change is
less noisy.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoavconv: use new decode API
wm4 [Tue, 22 Mar 2016 18:09:54 +0000 (19:09 +0100)]
avconv: use new decode API

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavc: introduce a new decoding/encoding API with decoupled input/output
wm4 [Tue, 22 Mar 2016 18:09:53 +0000 (19:09 +0100)]
lavc: introduce a new decoding/encoding API with decoupled input/output

Until now, the decoding API was restricted to outputting 0 or 1 frames
per input packet. It also enforces a somewhat rigid dataflow in general.

This new API seeks to relax these restrictions by decoupling input and
output. Instead of doing a single call on each decode step, which may
consume the packet and may produce output, the new API requires the user
to send input first, and then ask for output.

For now, there are no codecs supporting this API. The API can work with
codecs using the old API, and most code added here is to make them
interoperate. The reverse is not possible, although for audio it might.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoopt-test: Merge struct declaration and initialization
Diego Biurrun [Mon, 21 Mar 2016 18:27:49 +0000 (19:27 +0100)]
opt-test: Merge struct declaration and initialization

5 years agoopt-test: Move some variable declarations to avoid block braces
Diego Biurrun [Mon, 21 Mar 2016 18:26:29 +0000 (19:26 +0100)]
opt-test: Move some variable declarations to avoid block braces

5 years agoparseutils-test: Move some variable declarations to avoid block braces
Diego Biurrun [Mon, 21 Mar 2016 15:55:42 +0000 (16:55 +0100)]
parseutils-test: Move some variable declarations to avoid block braces

5 years agodes-test: Move a variable declaration to avoid an ifdef
Diego Biurrun [Mon, 21 Mar 2016 18:22:26 +0000 (19:22 +0100)]
des-test: Move a variable declaration to avoid an ifdef

5 years agobuild: Add component for the SRTP common code
Diego Biurrun [Fri, 18 Mar 2016 14:52:30 +0000 (15:52 +0100)]
build: Add component for the SRTP common code

This allows expressing the SRTP test code dependencies more clearly.

5 years agotimefilter-test: Only compile timefilter-test if JACK is enabled
Diego Biurrun [Fri, 18 Mar 2016 11:07:19 +0000 (12:07 +0100)]
timefilter-test: Only compile timefilter-test if JACK is enabled

5 years agodoc: Update paths to match new examples location
Diego Biurrun [Fri, 18 Mar 2016 11:41:47 +0000 (12:41 +0100)]
doc: Update paths to match new examples location

5 years agoMove const qualifier before type name
Diego Biurrun [Tue, 22 Mar 2016 14:33:28 +0000 (15:33 +0100)]
Move const qualifier before type name

5 years agovc1dec: wmv2dec: Validate ff_intrax8_common_init return value
Vittorio Giovara [Fri, 19 Feb 2016 22:43:24 +0000 (17:43 -0500)]
vc1dec: wmv2dec: Validate ff_intrax8_common_init return value

5 years agointrax8: Check and propagate errors from ff_intrax8_common_init
Vittorio Giovara [Fri, 19 Feb 2016 22:37:11 +0000 (17:37 -0500)]
intrax8: Check and propagate errors from ff_intrax8_common_init

This allows dropping an afterwards redundant assert.

5 years agointrax8: Move documentation from implementation to header file
Vittorio Giovara [Sat, 20 Feb 2016 06:34:18 +0000 (01:34 -0500)]
intrax8: Move documentation from implementation to header file

5 years agointrax8: K&R formatting cosmetics
Vittorio Giovara [Wed, 24 Feb 2016 22:45:11 +0000 (17:45 -0500)]
intrax8: K&R formatting cosmetics

5 years agointrax8: Adjust printf conversion specifier for sizeof expression
Diego Biurrun [Tue, 22 Mar 2016 20:51:47 +0000 (21:51 +0100)]
intrax8: Adjust printf conversion specifier for sizeof expression

5 years agointrax8: Move a comment to the place it corresponds
Vittorio Giovara [Tue, 23 Feb 2016 16:29:38 +0000 (11:29 -0500)]
intrax8: Move a comment to the place it corresponds

5 years agointrax8: Wrap multiline macros in do{}while(0) clauses
Vittorio Giovara [Fri, 19 Feb 2016 23:26:24 +0000 (18:26 -0500)]
intrax8: Wrap multiline macros in do{}while(0) clauses

These macros are treated like functions, the wrapping simplifies error
checking and avoids deeply nested ifs in the following commit.

5 years agointrax8: Move error resilience out of intrax8
Vittorio Giovara [Sat, 20 Feb 2016 01:51:44 +0000 (20:51 -0500)]
intrax8: Move error resilience out of intrax8

The intrax8 decoding process does not imply any kind of error
resilience, and the only call present is more related to how mpegvideo
works rather than anything else.

Therefore have the parent decoders carry out er when actually needed.

5 years agonuv: Use the correct context for av_image_check_size
Vittorio Giovara [Sun, 20 Mar 2016 01:38:27 +0000 (21:38 -0400)]
nuv: Use the correct context for av_image_check_size

5 years agoindeo4: Consistently initialize variables
Vittorio Giovara [Sat, 19 Mar 2016 22:07:21 +0000 (18:07 -0400)]
indeo4: Consistently initialize variables

Avoid using multiple variables for the same purpose.

5 years agoindeo4: Rework stream analysis report
Vittorio Giovara [Sat, 19 Mar 2016 21:07:37 +0000 (17:07 -0400)]
indeo4: Rework stream analysis report

* Change log level from error to debug
* Print report after the first decoded frame, not at the end of decoding
* Drop macro guard and use a context variable instead

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agoavconv: switch to the new BSF API
Anton Khirnov [Thu, 25 Feb 2016 14:41:45 +0000 (15:41 +0100)]
avconv: switch to the new BSF API

5 years agolavc: add a new bitstream filtering API
Anton Khirnov [Sat, 23 Nov 2013 10:43:13 +0000 (11:43 +0100)]
lavc: add a new bitstream filtering API

Deprecate the current bitstream filtering API.

5 years agotakdec: ensure chan2 is a valid channel index
Andreas Cadhalpun [Tue, 9 Jun 2015 22:12:38 +0000 (00:12 +0200)]
takdec: ensure chan2 is a valid channel index

If chan2 is not smaller than the number of channels, it can cause
segmentation faults due to dereferencing a NULL pointer.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agompegts: Forward the errors on mpeg4 objects parsing
Luca Barbato [Wed, 17 Feb 2016 01:23:02 +0000 (02:23 +0100)]
mpegts: Forward the errors on mpeg4 objects parsing

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agolavfi: generic hardware surface upload and download filters
Mark Thompson [Thu, 25 Feb 2016 00:21:40 +0000 (00:21 +0000)]
lavfi: generic hardware surface upload and download filters

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavu: VAAPI hwcontext implementation
Mark Thompson [Mon, 15 Feb 2016 19:32:45 +0000 (19:32 +0000)]
lavu: VAAPI hwcontext implementation

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavu: deprecate AV_PIX_FMT_VAAPI_*, replace with AV_PIX_FMT_VAAPI
Mark Thompson [Mon, 7 Mar 2016 22:34:59 +0000 (22:34 +0000)]
lavu: deprecate AV_PIX_FMT_VAAPI_*, replace with AV_PIX_FMT_VAAPI

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavu: add a way to query hwcontext frame constraints
Mark Thompson [Thu, 18 Feb 2016 23:25:52 +0000 (23:25 +0000)]
lavu: add a way to query hwcontext frame constraints

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agosvq3: Use a separate buffer for decoding the slices
Luca Barbato [Sat, 12 Mar 2016 16:46:36 +0000 (17:46 +0100)]
svq3: Use a separate buffer for decoding the slices

The AVPacket.data should be considered read-only.

5 years agocmdutils: update copyright year to 2016
Sean McGovern [Sat, 12 Mar 2016 19:38:10 +0000 (14:38 -0500)]
cmdutils: update copyright year to 2016

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agomatroska: Support V_QUICKTIME as written in the specification
Luca Barbato [Sat, 12 Mar 2016 12:46:13 +0000 (13:46 +0100)]
matroska: Support V_QUICKTIME as written in the specification

Check if the size is written the first 4 bytes and read the next 4
as fourcc candidate, fallback checking the initial for 4 bytes.

"The CodecPrivate contains all additional data that is stored in the
'stsd' (sample description) atom in the QuickTime file after the
mandatory video descriptor structure (starting with the size and FourCC

CC: libav-stable@libav.org
5 years agoqsv: Fix loading multiple plugins
Luca Barbato [Tue, 15 Mar 2016 13:10:05 +0000 (14:10 +0100)]
qsv: Fix loading multiple plugins

av_get_token does not strip the trailing separator.

5 years agomov: Check the entries value when parsing dref boxes
Luca Barbato [Tue, 8 Mar 2016 10:57:16 +0000 (11:57 +0100)]
mov: Check the entries value when parsing dref boxes

And properly reset the entries count when resetting the entries.

CC: libav-stable@libav.org
Bug-Id: 929
Bug-Id: CVE-2016-3062

5 years agoconfigure: Add support for clang llvm-cov
Luca Barbato [Sun, 6 Mar 2016 21:52:04 +0000 (22:52 +0100)]
configure: Add support for clang llvm-cov

5 years agoconfigure: Support msan as toolchain
Luca Barbato [Sun, 6 Mar 2016 21:48:20 +0000 (22:48 +0100)]
configure: Support msan as toolchain

5 years agobuffer: drop a reference to a non-existing function from the docs
Anton Khirnov [Sat, 9 Jan 2016 08:08:14 +0000 (09:08 +0100)]
buffer: drop a reference to a non-existing function from the docs

This function only ever existed in the draft versions of the API.

5 years agopixfmt: fix the AV_PIX_FMT_VAAPI_VLD doxy
Anton Khirnov [Sat, 9 Jan 2016 18:46:26 +0000 (19:46 +0100)]
pixfmt: fix the AV_PIX_FMT_VAAPI_VLD doxy

5 years agompegvideo: Refactor emulated_edge_mc calls
Luca Barbato [Fri, 4 Mar 2016 15:57:30 +0000 (16:57 +0100)]
mpegvideo: Refactor emulated_edge_mc calls

5 years agompegvideo: Fix undefined negative shifts in mpeg_motion_internal
Luca Barbato [Fri, 4 Mar 2016 15:57:29 +0000 (16:57 +0100)]
mpegvideo: Fix undefined negative shifts in mpeg_motion_internal

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agompegvideo: Fix undefined negative shifts in ff_init_block_index
Luca Barbato [Wed, 2 Mar 2016 23:52:23 +0000 (18:52 -0500)]
mpegvideo: Fix undefined negative shifts in ff_init_block_index

Found-by: gcc5-ubsan.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agoidct8x8: Fix undefined negative shifts
Katerina Barone-Adesi [Wed, 2 Mar 2016 23:52:25 +0000 (18:52 -0500)]
idct8x8: Fix undefined negative shifts

The original code left-shifts negative values, which is undefined
in the C99 specification (the one used during normal Libav compilation).
This change multiplies by (1 << shift), which is functionally equivalent,
but has defined behavior.

With this change, fate-idct8x8 compiled with --fsanitize=undefined works.

Bug-Id: 686

5 years agovdpau: Add missing deprecation guards
Vittorio Giovara [Tue, 1 Mar 2016 20:34:23 +0000 (15:34 -0500)]
vdpau: Add missing deprecation guards

5 years agomov: Trim dref absolute path
Vittorio Giovara [Tue, 16 Feb 2016 02:44:07 +0000 (21:44 -0500)]
mov: Trim dref absolute path

Samples produced by Omneon (Harmonic) store external references with
paths ending with 0s. Such movs cannot be loaded properly since every
0 is converted to '/', to keep the same parsing code for dref type 2
and type 18: this makes the external reference point to a non-existing
direactory, rather than to the actual referenced file.

Add a brief trimming loop that drops all ending 0s before trying to
parse the external reference path.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agoavconv: remove sub-frame warning
wm4 [Mon, 29 Feb 2016 21:48:14 +0000 (22:48 +0100)]
avconv: remove sub-frame warning

It's not practical to keep this with the new decode API.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavc: factor apply_param_change() AV_EF_EXPLODE handling
wm4 [Mon, 29 Feb 2016 21:48:12 +0000 (22:48 +0100)]
lavc: factor apply_param_change() AV_EF_EXPLODE handling

Remove the duplicated code for handling failure of apply_param_change().

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agolavu: improve documentation of some AVFrame functions
wm4 [Mon, 29 Feb 2016 21:48:11 +0000 (22:48 +0100)]
lavu: improve documentation of some AVFrame functions

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoasfenc: remove an unused variable
Anton Khirnov [Fri, 4 Mar 2016 15:39:29 +0000 (16:39 +0100)]
asfenc: remove an unused variable

5 years agoasfenc: fix some possible integer overflows
Anton Khirnov [Fri, 4 Mar 2016 15:32:07 +0000 (16:32 +0100)]
asfenc: fix some possible integer overflows

Store the file duration in the same timebase it arrives (i.e.
milliseconds) and only convert it to the file duration units (100ns)
when it's actually written, thus simplifying some calculations. Also,
store the duration as unsigned, since it cannot be negative.

CC: libav-stable@libav.org
Bug-ID: CVE-2016-2326

5 years agoavformat_find_stream_info: move duration guessing after updating codec parameters
Anton Khirnov [Thu, 3 Mar 2016 09:07:55 +0000 (10:07 +0100)]
avformat_find_stream_info: move duration guessing after updating codec parameters

This bitrate might not be known otherwise.

Bug-Id: 926

5 years agofate: Add separate target for all indeo3 tests
Diego Biurrun [Thu, 25 Feb 2016 16:13:26 +0000 (17:13 +0100)]
fate: Add separate target for all indeo3 tests

5 years agofate: Add test for indeo2 with delta frames
Vittorio Giovara [Wed, 24 Feb 2016 20:45:49 +0000 (15:45 -0500)]
fate: Add test for indeo2 with delta frames

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoindeo2: Fix banding artefacts
Luca Barbato [Tue, 23 Feb 2016 00:58:19 +0000 (19:58 -0500)]
indeo2: Fix banding artefacts

Rename luma table to delta table and change how it is used.

CC: libav-stable@libav.org
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoindeo2data: K&R formatting cosmetics
Luca Barbato [Tue, 23 Feb 2016 00:58:18 +0000 (19:58 -0500)]
indeo2data: K&R formatting cosmetics

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agofft: Split MDCT bits off from FFT
Diego Biurrun [Sat, 30 Jan 2016 13:45:28 +0000 (14:45 +0100)]
fft: Split MDCT bits off from FFT

5 years agosdp: fix opus sprop-stereo fmtp syntax
Mark Harris [Tue, 1 Mar 2016 04:09:53 +0000 (20:09 -0800)]
sdp: fix opus sprop-stereo fmtp syntax

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agofate: fft: Split DCT/FFT/MDCT/RDFT tests into separate targets
Diego Biurrun [Tue, 16 Feb 2016 11:05:19 +0000 (12:05 +0100)]
fate: fft: Split DCT/FFT/MDCT/RDFT tests into separate targets

5 years agordft: arm: Split RDFT initialization into a separate file
Diego Biurrun [Sat, 30 Jan 2016 12:44:38 +0000 (13:44 +0100)]
rdft: arm: Split RDFT initialization into a separate file

5 years agofft: arm: Drop unnecessary #include, add missing ones
Diego Biurrun [Sat, 30 Jan 2016 13:54:35 +0000 (14:54 +0100)]
fft: arm: Drop unnecessary #include, add missing ones

5 years agofft: x86: cosmetics: Drop silly comments, add comment, whitespace
Diego Biurrun [Sat, 30 Jan 2016 16:11:41 +0000 (17:11 +0100)]
fft: x86: cosmetics: Drop silly comments, add comment, whitespace

5 years agoqsv: Move down the implementation query
Luca Barbato [Wed, 24 Feb 2016 14:13:58 +0000 (15:13 +0100)]
qsv: Move down the implementation query

The plugin loaded may not match the general implementation capability

5 years agoavpacket: properly reset data/size in av_packet_move_ref()
Anton Khirnov [Thu, 25 Feb 2016 14:53:17 +0000 (15:53 +0100)]
avpacket: properly reset data/size in av_packet_move_ref()

It currently just calls av_init_packet(), which does not touch those

5 years agoavprobe: switch to codecpar
Anton Khirnov [Wed, 24 Feb 2016 15:32:19 +0000 (16:32 +0100)]
avprobe: switch to codecpar

5 years agoavprobe: add local per-stream state
Anton Khirnov [Wed, 24 Feb 2016 14:02:48 +0000 (15:02 +0100)]
avprobe: add local per-stream state

This will be useful in the following commits.

5 years agoavprobe: add local per-file state
Anton Khirnov [Wed, 24 Feb 2016 13:56:15 +0000 (14:56 +0100)]
avprobe: add local per-file state

Do not pass just a bare AVFormatContext pointer around, wrap it in
struct. This will be useful in the following commits.

5 years agompegvideo_enc: use avcodec_free_context() instead of av_free()
Anton Khirnov [Wed, 24 Feb 2016 10:10:30 +0000 (11:10 +0100)]
mpegvideo_enc: use avcodec_free_context() instead of av_free()

5 years agoavprobe: print information from the codec descriptor
Anton Khirnov [Thu, 21 Jan 2016 15:40:59 +0000 (16:40 +0100)]
avprobe: print information from the codec descriptor

avprobe is not doing any decoding, so this is more correct than printing
information from a random codec implementation.