OSDN Git Service

android-x86/external-ffmpeg.git
9 years agohevc: Use switch instead of if-nests in decode_nal_sei_message
Luca Barbato [Sat, 25 Jul 2015 13:26:29 +0000 (15:26 +0200)]
hevc: Use switch instead of if-nests in decode_nal_sei_message

Makes simpler to add support for more SEI types.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agohevc: Use a proper enum for the SEI values
Luca Barbato [Sat, 25 Jul 2015 13:26:28 +0000 (15:26 +0200)]
hevc: Use a proper enum for the SEI values

And use the correct value for decoded_picture_hash.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoavcodec: h264: Extract decoder methods
David Holm [Fri, 31 Jul 2015 19:06:13 +0000 (21:06 +0200)]
avcodec: h264: Extract decoder methods

Extract two methods from decode_registered_user_data in order to improve
code readability. Also make the constant holding the allocation size a
64-bit unsigned integer so that the size comparison against INT_MAX makes
sense.

Bug-Id: CID1312090

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoasfdec: remove improper assignement that caused wrong timestamps
Alexandra Hájková [Mon, 27 Jul 2015 11:37:04 +0000 (13:37 +0200)]
asfdec: remove improper assignement that caused wrong timestamps

and remove unneeded variable

Sample-Id: https://samples.libav.org/asf-wmv/asf-code-53/movn018.asf

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: do not export empty metadata
Alexandra Hájková [Mon, 27 Jul 2015 17:42:15 +0000 (19:42 +0200)]
asfdec: do not export empty metadata

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agodes: extend av_des_init() doxy
James Almer [Fri, 31 Jul 2015 07:01:06 +0000 (09:01 +0200)]
des: extend av_des_init() doxy

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agodes: add av_des_alloc()
James Almer [Tue, 28 Jul 2015 19:57:49 +0000 (16:57 -0300)]
des: add av_des_alloc()

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoxtea: add av_xtea_alloc()
James Almer [Tue, 28 Jul 2015 19:57:48 +0000 (16:57 -0300)]
xtea: add av_xtea_alloc()

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agorc4: extend av_rc4_init() doxy
James Almer [Fri, 31 Jul 2015 07:01:06 +0000 (09:01 +0200)]
rc4: extend av_rc4_init() doxy

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agorc4: add av_rc4_alloc()
James Almer [Tue, 28 Jul 2015 19:57:47 +0000 (16:57 -0300)]
rc4: add av_rc4_alloc()

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoblowfish: add av_blowfish_alloc()
James Almer [Tue, 28 Jul 2015 19:57:46 +0000 (16:57 -0300)]
blowfish: add av_blowfish_alloc()

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: free AVDictionaries properly when closing the demuxer
Alexandra Hájková [Thu, 30 Jul 2015 17:59:25 +0000 (19:59 +0200)]
asfdec: free AVDictionaries properly when closing the demuxer

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agofate/mp3: use the f32le format as output
Anton Khirnov [Mon, 27 Jul 2015 19:49:17 +0000 (21:49 +0200)]
fate/mp3: use the f32le format as output

Those tests test the float decoder, so it is preferable to dump the
decoder output directly instead of converting it to s16.

9 years agofate/mp3: specify the number of output samples instead of filesize
Anton Khirnov [Mon, 27 Jul 2015 19:43:22 +0000 (21:43 +0200)]
fate/mp3: specify the number of output samples instead of filesize

This is not dependent on the output format.

9 years agortsp: Only interpret $ as interleaved packet indicator at the start of replies
Martin Storsjö [Wed, 21 Jan 2015 12:05:43 +0000 (13:05 +0100)]
rtsp: Only interpret $ as interleaved packet indicator at the start of replies

Allow $ as character anywhere within normal RTSP replies - both
within the lines, and as the first character of RTSP header lines.
(The existing old comment indicated that an inline packet could
start at any line within a RTSP reply header, but that doesn't
sound valid to me, and I'm not sure if the existing code
handled that correctly either.)

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agohmac: add missing version bump and APIChanges entry
James Almer [Thu, 30 Jul 2015 07:02:23 +0000 (04:02 -0300)]
hmac: add missing version bump and APIChanges entry

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agohls: Save and forward avio options
Luca Barbato [Thu, 23 Jul 2015 19:11:58 +0000 (21:11 +0200)]
hls: Save and forward avio options

Make possible to send the custom headers and override the user agent.

Reported-by: BenWonder
9 years agohttp: Add the trailing endlines if they are missing
Luca Barbato [Thu, 23 Jul 2015 19:14:09 +0000 (21:14 +0200)]
http: Add the trailing endlines if they are missing

Makes slightly easier the life of those want to use the option
from the command line

9 years agocheckasm: Include io.h for isatty, if available
Martin Storsjö [Wed, 29 Jul 2015 20:08:09 +0000 (23:08 +0300)]
checkasm: Include io.h for isatty, if available

configure does check for isatty, and checkasm properly checks
HAVE_ISATTY, but on some platforms (e.g. WinRT), io.h needs to be
included for isatty to be available.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmpproto: free hmac context properly
James Almer [Thu, 30 Jul 2015 03:00:01 +0000 (00:00 -0300)]
rtmpproto: free hmac context properly

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortmpproto: use AVHMAC instead of a custom implementation
James Almer [Wed, 29 Jul 2015 03:23:43 +0000 (00:23 -0300)]
rtmpproto: use AVHMAC instead of a custom implementation

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agofate: add test vectors for HMAC SHA and SHA-2
James Almer [Tue, 28 Jul 2015 18:36:15 +0000 (15:36 -0300)]
fate: add test vectors for HMAC SHA and SHA-2

Also replace custom tests for MD5 with those published in RFC 2202

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agohmac: add support for SHA-2
James Almer [Tue, 28 Jul 2015 18:36:14 +0000 (15:36 -0300)]
hmac: add support for SHA-2

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Don't force _WIN32_WINNT to an older version if targeting winphone/winrt
Martin Storsjö [Fri, 24 Jul 2015 20:12:43 +0000 (23:12 +0300)]
configure: Don't force _WIN32_WINNT to an older version if targeting winphone/winrt

This avoids having to manually set _WIN32_WINNT in --extra-cflags
when targeting these API families, which only was necessary to
work around configure setting _WIN32_WINNT to an older version
by default.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agodxva2/d3d11va: Set _WIN32_WINNT to 0x0602 instead of 0x0600
Martin Storsjö [Sat, 25 Jul 2015 17:30:31 +0000 (20:30 +0300)]
dxva2/d3d11va: Set _WIN32_WINNT to 0x0602 instead of 0x0600

If _WIN32_WINNT is unset, we force it to a new enough value to
make sure the necessary definitions are visible.

When targeting Windows Phone or Windows RT, _WIN32_WINNT should
be at least 0x0602 - otherwise the windows headers themselves
can cause errors (which technically are bugs in the headers).

Raising this value here shouldn't hurt; the alternative would
be to not touch it at all if WINAPI_FAMILY is set to phone/app,
or to force setting it to 0x0602 in configure if unset (for phone/app).

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoh264: fix AVDISCARD_NONKEY for some interlaced content
John Högberg [Fri, 24 Jul 2015 13:30:38 +0000 (15:30 +0200)]
h264: fix AVDISCARD_NONKEY for some interlaced content

When skip_frame is set to _NONKEY the decoder skips everything except intra
slices, which breaks frames that consist of an intra field together with any
other field type; half the frame becomes garbage. This patch fixes the issue by
letting non-intra slices through if they're part of a keyframe.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: do not align Data Object when Broadcast Flag is set
Alexandra Hájková [Thu, 23 Jul 2015 10:33:37 +0000 (12:33 +0200)]
asfdec: do not align Data Object when Broadcast Flag is set

its size is invalid in this case

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoqsvdec_mpeg2: drop an incorrect comment
Anton Khirnov [Mon, 27 Jul 2015 06:01:09 +0000 (08:01 +0200)]
qsvdec_mpeg2: drop an incorrect comment

It got copypasted from the h264 decoder, but it does not apply to mpeg2.

9 years agofate: Add hap-chunk ref file
Vittorio Giovara [Mon, 27 Jul 2015 15:56:12 +0000 (16:56 +0100)]
fate: Add hap-chunk ref file

Missing from the push of 3ee217853a6741b829a2683f49c590618891b1ab.

9 years agohap: Add utility functions file
Vittorio Giovara [Mon, 27 Jul 2015 15:20:29 +0000 (16:20 +0100)]
hap: Add utility functions file

Missing from the push of 3ee217853a6741b829a2683f49c590618891b1ab.

9 years agoSupport the Hap chunked frame format
Tom Butterworth [Thu, 23 Jul 2015 18:39:29 +0000 (14:39 -0400)]
Support the Hap chunked frame format

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agohap: Move some per-stream setup into decoder init rather than per-frame
Tom Butterworth [Thu, 23 Jul 2015 18:37:08 +0000 (14:37 -0400)]
hap: Move some per-stream setup into decoder init rather than per-frame

This change will reject frames with a texture type which does not match
the stream description.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavc: Update version and APIchanges
Vittorio Giovara [Thu, 2 Jul 2015 23:50:54 +0000 (00:50 +0100)]
lavc: Update version and APIchanges

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavc: Consistently prefix input buffer defines
Vittorio Giovara [Mon, 29 Jun 2015 21:48:34 +0000 (23:48 +0200)]
lavc: Consistently prefix input buffer defines

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavc: AV-prefix all codec capabilities
Vittorio Giovara [Tue, 7 Jul 2015 00:41:27 +0000 (01:41 +0100)]
lavc: AV-prefix all codec capabilities

Express bitfields more simply.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavc: AV-prefix all codec flags
Vittorio Giovara [Mon, 29 Jun 2015 19:59:37 +0000 (21:59 +0200)]
lavc: AV-prefix all codec flags

Convert doxygen to multiline and express bitfields more simply.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agolavc: Deprecate avctx.me_method
Vittorio Giovara [Tue, 7 Jul 2015 00:20:43 +0000 (01:20 +0100)]
lavc: Deprecate avctx.me_method

This option is extremely codec specific and only a few codecs employ it.
Move it to codec private options instead: mpegenc family supports only 3
values, xavs and x264 use 5, and xvid has a different metric entirely.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agowmv2enc: Check memory allocation
Vittorio Giovara [Fri, 24 Jul 2015 03:24:33 +0000 (04:24 +0100)]
wmv2enc: Check memory allocation

9 years agoac3enc_template: Use the correct context field
Vittorio Giovara [Fri, 24 Jul 2015 04:17:26 +0000 (05:17 +0100)]
ac3enc_template: Use the correct context field

For audio encoders, delay has no effect, use the appropriate one,
initial_padding (see 2df0c32).

9 years agoconfigure: Check for _M_ARMT to detect thumb when using MSVC
Martin Storsjö [Fri, 24 Jul 2015 20:29:17 +0000 (23:29 +0300)]
configure: Check for _M_ARMT to detect thumb when using MSVC

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Check MSVC defines for identifying hardfloat
Martin Storsjö [Fri, 24 Jul 2015 20:25:10 +0000 (23:25 +0300)]
configure: Check MSVC defines for identifying hardfloat

This macro identifies whether VFPv3 is available; MSVC defaults
to hardfloat (except for older MSVC versions for CE, targeting
ARMv4).

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Default to armasm for --toolchain=msvc when targeting arm
Martin Storsjö [Fri, 24 Jul 2015 20:23:29 +0000 (23:23 +0300)]
configure: Default to armasm for --toolchain=msvc when targeting arm

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Simplify, remove an unnecessary intermediate variable
Martin Storsjö [Mon, 27 Jul 2015 06:40:28 +0000 (09:40 +0300)]
configure: Simplify, remove an unnecessary intermediate variable

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agodoc: Remove the now unnecessary remark about PATH and link.exe
Martin Storsjö [Sun, 26 Jul 2015 17:23:30 +0000 (20:23 +0300)]
doc: Remove the now unnecessary remark about PATH and link.exe

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoasfdec: interpret the first flag in an asf packet as length flag
Alexandra Hájková [Fri, 24 Jul 2015 09:22:56 +0000 (11:22 +0200)]
asfdec: interpret the first flag in an asf packet as length flag

if the error correction flag is not set, a packet starts with payload

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agocheckasm: Modify report format
Henrik Gramner [Fri, 24 Jul 2015 21:46:20 +0000 (23:46 +0200)]
checkasm: Modify report format

Makes it a bit more clear where each test belongs.

Suggested by Anton Khirnov.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoqsvdec_*: add missing CODEC_CAP_DR1
Anton Khirnov [Sat, 25 Jul 2015 16:03:35 +0000 (18:03 +0200)]
qsvdec_*: add missing CODEC_CAP_DR1

9 years agoconfigure: Only redirect strtoll to _strtoi64 if necessary
Martin Storsjö [Sat, 25 Jul 2015 19:54:26 +0000 (22:54 +0300)]
configure: Only redirect strtoll to _strtoi64 if necessary

This isn't necessary any longer on MSVC 2013 Update 4.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Only redefine inline to __inline for msvc if necessary
Martin Storsjö [Sat, 25 Jul 2015 19:47:47 +0000 (22:47 +0300)]
configure: Only redefine inline to __inline for msvc if necessary

This isn't necessary on MSVC 2015 any longer.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: Only add -FIstdlib.h for msvc/icl if necessary
Martin Storsjö [Sat, 25 Jul 2015 19:09:21 +0000 (22:09 +0300)]
configure: Only add -FIstdlib.h for msvc/icl if necessary

This is only necessary on MSVC 2010/2012 (and possibly on some
ICL versions). This both avoids an extra hack on newer MSVC
versions, and better documents what the extra compiler option
is used for.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoforce WINAPI_FAMILY to WINAPI_FAMILY_DESKTOP_APP to be able to use dxva.h
Steve Lhomme [Sun, 26 Jul 2015 11:35:47 +0000 (13:35 +0200)]
force WINAPI_FAMILY to WINAPI_FAMILY_DESKTOP_APP to be able to use dxva.h

The struct definitions in dxva.h, which are necessary in order to
actually use d3d11va, are hidden when WINAPI_FAMILY targets Windows Phone
or WindowsRT.

Building with WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP is disallowed
when targeting ARM. ("Compiling Desktop applications for the ARM
platform is not supported.") So we set _CRT_BUILD_DESKTOP_APP to 0
to tell the runtime not to detect some issues with this mismatching.

The same tweaks to detect if the API is available is done in dxva2_internal.h
when compiling each DXVA2/D3D11VA decoders.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agocheckasm: Use LOCAL_ALIGNED
Michael Niedermayer [Fri, 24 Jul 2015 21:46:21 +0000 (23:46 +0200)]
checkasm: Use LOCAL_ALIGNED

Fixes alignment issues and bus errors.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agolavc: add Intel libmfx-based HEVC decoder.
Anton Khirnov [Tue, 16 Jun 2015 16:22:11 +0000 (18:22 +0200)]
lavc: add Intel libmfx-based HEVC decoder.

9 years agolavc: add Intel libmfx-based MPEG2 decoder.
Anton Khirnov [Tue, 16 Jun 2015 16:22:11 +0000 (18:22 +0200)]
lavc: add Intel libmfx-based MPEG2 decoder.

9 years agolavc: add a HEVC mp4->annex B bitstream filter
Anton Khirnov [Thu, 9 Jul 2015 09:28:38 +0000 (11:28 +0200)]
lavc: add a HEVC mp4->annex B bitstream filter

9 years agoqsvdec: move qsv_process_data() from qsvdec_h264 to the common code
Anton Khirnov [Tue, 21 Jul 2015 16:57:49 +0000 (18:57 +0200)]
qsvdec: move qsv_process_data() from qsvdec_h264 to the common code

It will be shared with the upcoming mpeg2 and hevc decoders.

9 years agoqsvenc_hevc: fix enum declaration
Anton Khirnov [Tue, 21 Jul 2015 17:43:34 +0000 (19:43 +0200)]
qsvenc_hevc: fix enum declaration

Declare a named enum, not a variable with anonymous enum type.

9 years agoqsvdec: fix a memleak of async_fifo
Anton Khirnov [Tue, 21 Jul 2015 17:41:59 +0000 (19:41 +0200)]
qsvdec: fix a memleak of async_fifo

init() is called whenever format changes, so current code would leak the
fifo in this case.

9 years agoqsvdec: avoid an infinite loop with no consumed data and no output
Anton Khirnov [Thu, 9 Jul 2015 18:08:13 +0000 (20:08 +0200)]
qsvdec: avoid an infinite loop with no consumed data and no output

This is triggerable with the HEVC decoder. It is unclear yet whether the
bug is in the calling code or the MSDK, but it seems better to check for
this in any case.

9 years agouse a wrapper script to call MS link.exe to avoid mixing with /usr/bin/link.exe
Steve Lhomme [Fri, 24 Jul 2015 07:38:04 +0000 (09:38 +0200)]
use a wrapper script to call MS link.exe to avoid mixing with /usr/bin/link.exe

Fallback to "link" in the path if the one next to cl is not found.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoconfigure: force -nologo- when detecting MSVC
Steve Lhomme [Thu, 23 Jul 2015 17:25:44 +0000 (19:25 +0200)]
configure: force -nologo- when detecting MSVC

The -nologo- option is the inverse of -nologo, reenabling printing the
"logo" version header. This is useful if the compiler actually is a
wrapper that forces -nologo.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agodds: Write the palette in the native endian form
Martin Storsjö [Thu, 23 Jul 2015 14:59:44 +0000 (17:59 +0300)]
dds: Write the palette in the native endian form

This fixes the palette on big endian, broken (or, differing from
little endian) since 57214b2f7.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agohap: Name enums, remove unused struct member
Tom Butterworth [Tue, 21 Jul 2015 00:21:39 +0000 (01:21 +0100)]
hap: Name enums, remove unused struct member

9 years agosnappy: Refactor so ff_snappy_uncompress() uses an existing buffer
Tom Butterworth [Tue, 21 Jul 2015 00:21:38 +0000 (01:21 +0100)]
snappy: Refactor so ff_snappy_uncompress() uses an existing buffer

Some uses of Snappy require uncompressing to positions within
an existing buffer. Also adds a function to get the uncompressed
length of Snappy data.

9 years agoasfdec: remove the wrong condition
Alexandra Hájková [Wed, 22 Jul 2015 14:10:25 +0000 (16:10 +0200)]
asfdec: remove the wrong condition

this condition breaks reading from the pipe as data_reached variable
have to be set to break while in the asf_read_header just after the Data
Object is found

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agohap: Fix slice size computation
Tom Butterworth [Wed, 22 Jul 2015 23:01:01 +0000 (00:01 +0100)]
hap: Fix slice size computation

A bug was introduced in 977105407cae55876041dddbf4ce0934cdd4cd6c whereby when
frame height wasn't divisible by the number of threads, pixels would be omitted
from the bottom rows during decode.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agodds: Fix the slice size computation
Tom Butterworth [Wed, 22 Jul 2015 23:03:29 +0000 (00:03 +0100)]
dds: Fix the slice size computation

A bug was introduced in 6b2b26e7af3ede0abfb46eb5725c26d1083f50bc whereby when
frame height wasn't divisible by the number of threads, pixels would be omitted
from the bottom rows during decode.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoaf_channelmap: properly set the supported output channel layouts
Anton Khirnov [Wed, 22 Jul 2015 09:30:37 +0000 (11:30 +0200)]
af_channelmap: properly set the supported output channel layouts

The current code expects query_formats() to be called exactly once, it
will leak if it's not called at all (filter initialized, but never
configured or used) or try to read freed memory if it's called more than
once.

Found-by: James Almer <jamrial@gmail.com>
CC: libav-stable@libav.org
9 years agoasfdec: increment nb_streams right after the stream allocation
Alexandra Hájková [Thu, 23 Jul 2015 06:59:53 +0000 (08:59 +0200)]
asfdec: increment nb_streams right after the stream allocation

to prevent possible memory leaks

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: set nb_streams to 0 in the asf_read_close
Alexandra Hájková [Wed, 22 Jul 2015 19:38:15 +0000 (21:38 +0200)]
asfdec: set nb_streams to 0 in the asf_read_close

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agompegvideo: Add missing include
Vittorio Giovara [Mon, 20 Jul 2015 17:24:19 +0000 (18:24 +0100)]
mpegvideo: Add missing include

9 years agodds: Add a rgba fate test
Vittorio Giovara [Mon, 20 Jul 2015 22:47:14 +0000 (23:47 +0100)]
dds: Add a rgba fate test

9 years agodds: Fix 32bpp bitmaps decoding
Michael Niedermayer [Mon, 20 Jul 2015 22:47:13 +0000 (23:47 +0100)]
dds: Fix 32bpp bitmaps decoding

Found-By: ami_stuff
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agodds: Fix palette decoding
Vittorio Giovara [Mon, 20 Jul 2015 22:47:12 +0000 (23:47 +0100)]
dds: Fix palette decoding

Red and blue channels were decoded in the wrong order.

Found-By: ami_stuff
9 years agodds: Fix enum declaration
Vittorio Giovara [Wed, 22 Jul 2015 12:20:07 +0000 (13:20 +0100)]
dds: Fix enum declaration

Drop the global variables with anonymous enum type.

9 years agoasfdec: avoid crash in the case when chunk_len is 0 or pkt_len is 0
Alexandra Hájková [Tue, 21 Jul 2015 08:45:01 +0000 (10:45 +0200)]
asfdec: avoid crash in the case when chunk_len is 0 or pkt_len is 0

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: close the demuxer properly when read_header is failing
Alexandra Hájková [Fri, 17 Jul 2015 12:17:02 +0000 (14:17 +0200)]
asfdec: close the demuxer properly when read_header is failing

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoasfdec: factor out seeking to the Data Object outside while
Alexandra Hájková [Tue, 21 Jul 2015 07:14:39 +0000 (09:14 +0200)]
asfdec: factor out seeking to the Data Object outside while

return INVALIDDARA if Data Object was not found

Signed-off-by: Anton Khirnov <anton@khirnov.net>
9 years agoqsvenc_hevc: use the correct HW plugin UID
Anton Khirnov [Sun, 19 Jul 2015 09:24:36 +0000 (11:24 +0200)]
qsvenc_hevc: use the correct HW plugin UID

9 years agocheckasm: remove empty array initializer list in h264pred test
Janne Grunau [Mon, 20 Jul 2015 21:17:57 +0000 (23:17 +0200)]
checkasm: remove empty array initializer list in h264pred test

Fixes MSVC compilation.

9 years agocheckasm: Always link statically
Luca Barbato [Tue, 21 Jul 2015 21:22:42 +0000 (23:22 +0200)]
checkasm: Always link statically

Checkasm needs to use internal symbols that should not be made public.

9 years agodds: Decode using optimal slices sizes
Luca Barbato [Fri, 17 Jul 2015 01:07:08 +0000 (03:07 +0200)]
dds: Decode using optimal slices sizes

Enjoy some cache locality and use less threads.
About the same speedup provided to HAP.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agohap: Decode using optimal slices sizes
Luca Barbato [Fri, 17 Jul 2015 01:07:07 +0000 (03:07 +0200)]
hap: Decode using optimal slices sizes

Enjoy some cache locality and use less threads.
About 5x speedup (from 60ms to 12ms to decode a 4k frame).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agoparseutil: Use non ambiguous aliases for uhd
Luca Barbato [Mon, 20 Jul 2015 14:50:43 +0000 (16:50 +0200)]
parseutil: Use non ambiguous aliases for uhd

uhd1 and uhd2 would be ambigous.

9 years agoarm: use a local label instead of the function symbol in ff_prefetch_arm
Janne Grunau [Mon, 20 Jul 2015 08:46:15 +0000 (10:46 +0200)]
arm: use a local label instead of the function symbol in ff_prefetch_arm

Avoids a relocation which might end out of range for thumb2.

Reported-By: Ludovic Fauvet <etix@videolan.org>
Bug-Id: https://bugs.webkit.org/show_bug.cgi?id=137022
CC: libav-stable@libav.org
9 years agoh264: aarch64: intra prediction optimisations
Janne Grunau [Sun, 12 Jul 2015 16:30:09 +0000 (18:30 +0200)]
h264: aarch64: intra prediction optimisations

9 years agoDeprecate avctx.coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:22 +0000 (18:41 +0100)]
Deprecate avctx.coded_frame

The rationale is that coded_frame was only used to communicate key_frame,
pict_type and quality to the caller, as well as a few other random fields,
in a non predictable, let alone consistent way.

There was agreement that there was no use case for coded_frame, as it is
a full-sized AVFrame container used for just 2-3 int-sized properties,
which shouldn't even belong into the AVCodecContext in the first place.

The appropriate AVPacket flag can be used instead of key_frame, while
quality is exported with the new AVPacketSideData quality factor.
There is no replacement for the other fields as they were unreliable,
mishandled or just not used at all.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agoAdd a quality factor packet side data
Vittorio Giovara [Wed, 15 Jul 2015 17:41:21 +0000 (18:41 +0100)]
Add a quality factor packet side data

This is necessary to preserve the quality information currently exported
with coded_frame. Add the new side data to every encoder that needs it,
and use it in avconv.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agoGather all coded_frame allocations and free functions to a single place
Vittorio Giovara [Wed, 15 Jul 2015 17:41:20 +0000 (18:41 +0100)]
Gather all coded_frame allocations and free functions to a single place

Allocating coded_frame is what most encoders do anyway, so it makes
sense to always allocate and free it in a single place. Moreover a lot
of encoders freed the frame with av_freep() instead of the correct API
av_frame_free().

This bring uniformity to encoder behaviour and prevents applications
from erroneusly accessing this field when not allocated. Additionally
this helps isolating encoders that export information with coded_frame,
and heavily simplifies its deprecation.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agoflashsvenc: Keep coded_frame.key_frame a write-only variable
Vittorio Giovara [Wed, 15 Jul 2015 17:41:19 +0000 (18:41 +0100)]
flashsvenc: Keep coded_frame.key_frame a write-only variable

9 years agoffv1enc: Use input frame to set SAR and interlacing
Vittorio Giovara [Wed, 15 Jul 2015 17:41:18 +0000 (18:41 +0100)]
ffv1enc: Use input frame to set SAR and interlacing

9 years agoffv1enc: Keep coded_frame.key_frame a write-only variable
Vittorio Giovara [Wed, 15 Jul 2015 17:41:17 +0000 (18:41 +0100)]
ffv1enc: Keep coded_frame.key_frame a write-only variable

9 years agoqtrleenc: Keep coded_frame.key_frame a write-only variable
Vittorio Giovara [Wed, 15 Jul 2015 17:41:16 +0000 (18:41 +0100)]
qtrleenc: Keep coded_frame.key_frame a write-only variable

9 years agolibtheoraenc: Keep coded_frame.key_frame a write-only variable
Vittorio Giovara [Wed, 15 Jul 2015 17:41:15 +0000 (18:41 +0100)]
libtheoraenc: Keep coded_frame.key_frame a write-only variable

9 years agolibvpxenc: Do not entangle coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:14 +0000 (18:41 +0100)]
libvpxenc: Do not entangle coded_frame

Keep coded_frame.key_frame a write-only variable.

9 years agolibxvid: Do not entangle coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:13 +0000 (18:41 +0100)]
libxvid: Do not entangle coded_frame

9 years agosvq1enc: Do not entangle coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:12 +0000 (18:41 +0100)]
svq1enc: Do not entangle coded_frame

9 years agoproresenc: Do not entangle coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:11 +0000 (18:41 +0100)]
proresenc: Do not entangle coded_frame

9 years agoa64multienc: Do not entangle coded_frame
Vittorio Giovara [Wed, 15 Jul 2015 17:41:10 +0000 (18:41 +0100)]
a64multienc: Do not entangle coded_frame

This change (and the following ones of the same kind) is mainly to
simplify wrapping this section with an #if FF_API block later on.

No functional changes are applied, the fields of the context coded_frame
fields are directly initialized, instead of keeping a reference to the
coded_frame itself.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
9 years agoroqvideoenc: Drop unneeded initialization
Vittorio Giovara [Wed, 15 Jul 2015 17:41:09 +0000 (18:41 +0100)]
roqvideoenc: Drop unneeded initialization

Its fields are never initialized to begin with.